Jayant Vaish created ODE-1010:
---------------------------------

             Summary: MEX response is sent with delay
                 Key: ODE-1010
                 URL: https://issues.apache.org/jira/browse/ODE-1010
             Project: ODE
          Issue Type: Bug
          Components: BPEL Runtime
            Reporter: Jayant Vaish


In all the message exchanges where the response is send this issue comes which 
can be explained by following scenarios.

Scenario 1: Synchronous messages exchange via wsdl call.
When process is invoked and reply is send in "response" activity after that one 
forEach loop is their.Process is invoked by INVOKE_INTERNAL job and with the 
same job with REPLY, response is set and moves to forEach without sending the 
response, which is expected as response will be send after the transaction is 
committed (following code illustrates).

_engine._contexts.scheduler.registerSynchronizer(new Scheduler.Synchronizer() {
            public void afterCompletion(boolean success) {
                __log.debug("Received myrole mex response callback");
                if( success ) {
                    ResponseCallback callback = _waitingCallbacks.remove(cid);
                    if (callback != null) callback.responseReceived();
                } else {
                    __log.warn("Transaction is rolled back on sending back the 
response.");
                }
            }
            public void beforeCompletion() {
            }
        });

So, the response is send after the forEach (there can be other scenarios as 
well other than forEach) which delays the response.

Scenario 2: Synchronous messages exchange via template call.
Instead of invoking process with wsdl call (as done in scenario 1) we do by 
template call (receive-reply two-way invocation) then also same issue comes as 
described in scenario 1.

Scenario 3: Asynchronously sending response via template approach. 
Response is send by INVOKE_INTERNAL job and that job is not committed until 
forEach is executed.





--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to