<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">

<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>

                                <td>

                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="http://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">Community</a></h1>
                                                                </td>

                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px;  -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
    Why does my Fork end 3 times instead of 2 (in jBPM 4.3)?
</h3>
<span style="margin-bottom: 10px;">
    created by <a href="http://community.jboss.org/people/jody4711">Johan Dykström</a> in <i>jBPM</i> - <a href="http://community.jboss.org/message/540136#540136">View the full discussion</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">

<div class="jive-rendered-content"><p>Hi all,</p><p>I have a process with some forks and joins, and some custom activities in it. My problem is that one of the forks, which has two outgoing transitions, ends three times, and therefore continues execution twice in one of the transitions. Nothing is executed in parallel, everything is executed in the main thread, triggered by signals from the JUnit test case.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>In the real application, each custom activity will trigger a long-running calculation in another JVM, and then wait for a signal. The other JVM will reply by JMS to a callback listener, which will in turn signal to the execution engine. In the attached test case, the custom activities just print a line before waiting, and the test case simulates the callbacks by sleeping for a while before sending a signal.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>The interesting part of the log file (also attached) is this:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>13:49:41,069 : Fork2 starting&#160; : execution = ForkTest.7.10&#160;&#160;&#160;&#160;&#160;&#160;&#160; : thread = main<br/>13:49:41,101 : Fork2 ending&#160;&#160;&#160; : execution = ForkTest.7.11&#160;&#160;&#160;&#160;&#160;&#160;&#160; : thread = main&#160;&#160; &lt;--- 1<br/>13:49:41,101 : Join1 starting&#160; : execution = ForkTest.7.11&#160;&#160;&#160;&#160;&#160;&#160;&#160; : thread = main<br/>13:49:41,101 : Fork2 ending&#160;&#160;&#160; : execution = ForkTest.7.12&#160;&#160;&#160;&#160;&#160;&#160;&#160; : thread = main&#160;&#160; &lt;--- 2<br/>13:49:41,101 : Join2 starting&#160; : execution = ForkTest.7.12&#160;&#160;&#160;&#160;&#160;&#160;&#160; : thread = main<br/>13:49:41,101 : Fork2 ending&#160;&#160;&#160; : execution = ForkTest.7.10&#160;&#160;&#160;&#160;&#160;&#160;&#160; : thread = main&#160;&#160; &lt;--- 3<br/>13:49:41,101 : Join1 starting&#160; : execution = ForkTest.7.10&#160;&#160;&#160;&#160;&#160;&#160;&#160; : thread = main</p><p>Rather strange considering the definition of the fork in the process:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>&lt;fork g="213,346,48,48" name="Fork2"&gt;<br/>&#160;&#160;&#160; &lt;on event="start"&gt;&lt;event-listener/&gt;&lt;/on&gt;<br/>&#160;&#160;&#160; &lt;on event="end"&gt;&lt;event-listener/&gt;&lt;/on&gt;<br/>&#160;&#160;&#160; &lt;transition to="Join1"/&gt;<br/>&#160;&#160;&#160; &lt;transition to="Join2"/&gt;<br/>&lt;/fork&gt;</p><p>The versions I use are:</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>JDK 1.6.0</p><p>jBPM 4.3</p><p>HSQL 1.8.0</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>I hope someone can help me with this problem!</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>Regards, Johan</p></div>

<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
    <p style="margin: 0;">Reply to this message by <a href="http://community.jboss.org/message/540136#540136">going to Community</a></p>
        <p style="margin: 0;">Start a new discussion in jBPM at <a href="http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034">Community</a></p>
</div></td>
                        </tr>
                    </tbody>
                </table>


                </td>
            </tr>
        </tbody>
    </table>

</div>

</body>
</html>