Has anybody implements this scene or similar?
Here the process:
| ...
| <fork name="fork1">
| <transition to="ibk-df-classifier"
name="1"></transition>
| <transition to="bayes-wf-classfier"
name="2"></transition>
| <transition to="svm-df-classifier"
name="3"></transition>
| </fork>
|
| <node name="node1" async="true">
| <action class="DoHeavyJob1"/>
| <transition to="join1"></transition>
| </node>
|
| <node name="node2" async="true">
| <action class="DoHeavyJob2"/>
| <transition to="join1"></transition>
| </node>
|
| <node name="node3" async="true">
| <action class="DoHeavyJob3"/>
| <transition to="join1"></transition>
| </node>
|
| <join name="join1">
| <transition to="finish"></transition>
| </join>
|
| <node name="finish">
| <action class="Result"/>
| </node>
| ...
|
Description: Intermediate nodes takes long time executing, so I need the
async="true" for their CONCURRENT execution, and I cannot execute the
"finish" node until ALL intermediate nodes had finished.
In the DoHeavyJob1, DoHeavyJob2 and DoHeavyJob3 ActionHandlers, I have coded the
executionContext.leaveNode(); at the end of the execute method.
| class DoHeavyJob1{
| public void execute( ExecutionContext executionContext ) {
| //Time task Simulation
| Thread.sleep ( 100000 );
|
| executionContext.leaveNode();
| }//execute
| }
|
These actions are executed fine with JobExecutor, and I see that are executed in a
concurrent way. But, the known org.hibernate.StaleObjectStateException occurs when the
last ActionHandler makes the leaveNode because of transaction database locks.
Please, is there any way to implement this issue? Any suggestions?
Thanks
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4134773#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...