6 Replies Latest reply on Mar 20, 2009 5:44 AM by kukeltje

    Join problem

    armita

      I have the attached process definition and "FF Join" acts in a strange way. If I execute the "UploadMediaFile" first, everything is OK, but if "UploadMetadata" executes first, it does not wait for "UploadMediaFile" and executes the join right away.
      any thoughts?

      <?xml version="1.0" encoding="UTF-8"?>
      
      <process-definition xmlns="" name="mediaprocess">
      
      
       <swimlane name="actor">
       <assignment class="ca.cbc.mediagateway.MGWAssignmentHandler"></assignment>
       </swimlane>
      
      
       <start-state name="start">
       <transition to="fork1"></transition>
       </start-state>
      
      
       <fork name="fork1">
       <transition to="UploadMediaFile"></transition>
       <transition to="UploadMetadata" name="to upload meta data"></transition>
       <transition to="UploadThumbnails" name="to upload thumbnails"></transition>
       </fork>
      
       <join name="join1">
       <transition to="Maven"></transition>
       </join>
      
       <task-node name="UploadMediaFile">
       <task name="UploadMediaFile" swimlane="actor"></task>
       <transition to="FF Join"></transition>
       </task-node>
      
       <task-node name="UploadMetadata">
       <task name="UploadMetadata" swimlane="actor"></task>
       <transition to="fork2"></transition>
       </task-node>
      
       <task-node name="UploadThumbnails">
       <task name="UploadThumbnails" swimlane="actor"></task>
       <transition to="join3"></transition>
       </task-node>
      
       <node name="Maven" async="true">
       <action class="ca.cbc.mediagateway.handler.MavenHandler" async="true"></action>
       <transition to="MediaBin"></transition>
       </node>
      
       <node name="MediaBin" async="true">
       <action class="ca.cbc.mediagateway.handler.MediaBinHandler"></action>
       <transition to="EPT"></transition>
       </node>
      
       <node name="EPT" async="true">
       <action class="ca.cbc.mediagateway.handler.EPTHandler"></action>
       <transition to="Finito la commedia"></transition>
       </node>
      
       <task-node name="FlipCallback">
       <task name="FlipCallback" swimlane="actor" ></task>
       <transition to="join1"></transition>
       </task-node>
      
       <node name="UploadToFlipFactory">
       <action class="ca.cbc.mediagateway.handler.UploadToFlipFactoryHandler" async="true"></action>
       <transition to="FlipCallback"></transition>
       </node>
      
       <fork name="fork2">
       <transition to="join3"></transition>
       <transition to="FF Join" name="to UploadToFlipFactory"></transition>
       </fork>
      
       <node name="StoreThumbnail">
       <action class="ca.cbc.mediagateway.handler.StoreThumbnailHandler" async="true"></action>
       <transition to="join1"></transition>
       </node>
      
       <join name="FF Join">
       <transition to="UploadToFlipFactory"></transition>
       </join>
      
       <join name="join3">
       <transition to="StoreThumbnail"></transition>
       </join>
      
      
       <end-state name="Finito la commedia"></end-state>
      
      
      </process-definition>