You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "Christian Fonden (JIRA)" <ji...@apache.org> on 2009/07/27 20:06:14 UTC

[jira] Commented: (ODE-606) Process blocks although Async Extension Operation is marked completed or completedWithFault

    [ https://issues.apache.org/jira/browse/ODE-606?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12735689#action_12735689 ] 

Christian Fonden commented on ODE-606:
--------------------------------------

In the current Revision (797700) the error behaviour has slightly changed. Now
a NullPointerException is thrown when ExtensionContext::complete() is called. The Stacktrace is

java.lang.NullPointerException (null)
     at org.apache.ode.jacob.vpu.JacobVPU.activeJacobThread
     at org.apache.ode.jacob.vpu.ChannelFactory$ChannelInvocationHandler.invoke
     at $Proxy16.completed
     at org.apache.ode.bpel.rtrep.v2.ExtensionContextImpl.complete
     at org.apache.ode.c4b.extensionBundle.ReceiveContextEventAdapter.onEvent
     at org.apache.ode.c4b.extensionBundle.ReceiveContextEventAdapter.update
     at java.util.Observable.notifyObservers
     at java.util.Observable.notifyObservers
     at org.apache.ode.c4b.model.extensions.ReceiveContextEvent.onEvent
     at org.apache.ode.c4b.eventRegistry.ContextEventRegistry.handleContextEvent
     at org.apache.ode.c4b.eventRegistry.ContextEventRegistry.update
     at java.util.Observable.notifyObservers
     at org.apache.ode.c4b.eventRegistry.DummyCPSAdapter$CPSClientService.OnContextEvent
     at sun.reflect.NativeMethodAccessorImpl.invoke0
     at sun.reflect.NativeMethodAccessorImpl.invoke
     at sun.reflect.DelegatingMethodAccessorImpl.invoke
     at java.lang.reflect.Method.invoke
     at sun.rmi.server.UnicastServerRef.dispatch
     at sun.rmi.transport.Transport$1.run
     at java.security.AccessController.doPrivileged
     at sun.rmi.transport.Transport.serviceCall
     at sun.rmi.transport.tcp.TCPTransport.handleMessages
     at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run
     at java.lang.Thread.run



> Process blocks although Async Extension Operation is marked completed or completedWithFault
> -------------------------------------------------------------------------------------------
>
>                 Key: ODE-606
>                 URL: https://issues.apache.org/jira/browse/ODE-606
>             Project: ODE
>          Issue Type: Bug
>          Components: BPEL Runtime
>    Affects Versions: 2.0
>         Environment: Tomcat5.5 Ode Trunk Rev 766476 Debian Linux 1,5G RAM, integrated DB
>            Reporter: Christian Fonden
>            Assignee: Tammo van Lessen
>
> When a new extension Activity extending AbstractAsynchExtensionOperation is developed and deployed, a bad scheduler issue occurs: 
>  - the run method does neither complete with errors nor it completes successfully (intended!)
>  - a java timer waits 10 seconds and the calls context.completeWithFault.
>  - then the activity gets marked as faulted, but the process runs until it is stopped by the 30 second axis2 call timeout, returning the axis2 stack trace to the invoking client. 
> It seems like the situation that the activity marks itsself as faulted by calling the context.completeWithFault() method in the ExtensionContext class is somehow *not* being propagated to the navigator and the whole BPEL Process is blocked by the faulted Activity. Also no compensation is called. 
> Again to make it clear: the time integrated in the extension fires after 10 seconds, but the process completes on Axis2 Timeout after 30 seconds. 
> The missing code can be easily reproduced by 
> - create a synchronous bpel process, containing just the async extension activity
> - the extension activity starts a timer in its run() method
> - the timer calls completeWtih fault after a short time (e.g. immediately)
> - the process is still blocked. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.