ode-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Maciej Szefler (JIRA)" <j...@apache.org>
Subject [jira] Commented: (ODE-137) Concurrently enabled receives cause a runtime exception
Date Mon, 13 Aug 2007 15:03:30 GMT

    [ https://issues.apache.org/jira/browse/ODE-137?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12519439
] 

Maciej Szefler commented on ODE-137:
------------------------------------

This is due to a problem in the OpenJPA DAO implementation. The "routes" used to deliver the
message to the correct instance/channel pair are not being removed and the engine gets confused.



> Concurrently enabled receives cause a runtime exception
> -------------------------------------------------------
>
>                 Key: ODE-137
>                 URL: https://issues.apache.org/jira/browse/ODE-137
>             Project: ODE
>          Issue Type: Bug
>          Components: BPEL Runtime
>    Affects Versions: 1.0-incubating
>         Environment: svn tip, Mac OS X 10.4.9, JDK 1.5
>            Reporter: Paul R. Brown
>            Assignee: Maciej Szefler
>             Fix For: 1.1
>
>         Attachments: counter.bpel, counter.wsdl, deploy.xml, ERROR, HelloWorld2-sa.zip
>
>
> The process in question has the following structure:
> receive init message
> reply
> flow
>   while true
>     receive get message
>     reply
>   while true
>     receive getAndIncrement message
>     reply
>     increment variable
>   receive close
>   exit
> (Python-style indenting for nesting, and sequential activities are on successive lines.)
> The resulting exception is:
> Caused by: org.apache.ode.bpel.iapi.BpelEngineException: Engine requested response while
the message exchange hqejbhcnphr2achs6i6uh5 was in the state RESPONSE
>         at org.apache.ode.bpel.engine.BpelRuntimeContextImpl.getMyRequest(BpelRuntimeContextImpl.java:1123)
>         at org.apache.ode.bpel.runtime.PICK.initVariable(PICK.java:159)
>         at org.apache.ode.bpel.runtime.PICK.access$400(PICK.java:49)
>         at org.apache.ode.bpel.runtime.PICK$WAITING$2.onRequestRcvd(PICK.java:244)
>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>         at java.lang.reflect.Method.invoke(Method.java:585)
>         at org.apache.ode.jacob.vpu.JacobVPU$JacobThreadImpl.run(JacobVPU.java:451)
>         ... 16 more
> With a debugger attached, if the initialize operation is called, then the response is
returned, but getAndIncrement is the operation listed in the underlying mex in the call to
BpelRuntimeContextImpl::getMyRequest, and this request does exist yet.
> I have the feeling that the implementation is not properly hashing port type/operation
pairs but rather just port types?

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


Mime
View raw message