Hi Sathwik,
Thanks a lot for testing the same and letting me know. I will upgrade
to ODE 1.3.6. We are using tomcat 6.0.43 & Oracle 11gR2. I hope it should work
fine with that setting too. I will keep you posted on the same.
Regards,
Vinay
-----Original Message-----
From: Sathwik B P [mailto:[email protected]]
Sent: Wednesday, April 22, 2015 12:21 PM
To: [email protected]
Subject: Re: Issue with execution of process having parallel activity
This is to confirm that the process executed successfully on ODE 1.3.6
Tomcat : 7.0.42
ODE 1.3.6
Mysql 5.5
Note: One has to configure a Transaction Manager of your choice into tomcat. No
more resource configuration for datasource in tomcat's server.xml file.
You could follow manual instructions for configuring Bitronix TM (
http://ode.apache.org/war-deployment.html)
Or use this packaging script (
https://github.com/vanto/apache-ode-tomcat-bundle)
regards,
sathwik
On Tue, Apr 21, 2015 at 11:21 PM, Sathwik B P <[email protected]> wrote:
> Hi Vinay,
>
> I have tested your process on 1.3.7-SNAPSHOT build which I already had.
>
> Your process works perfectly fine on it.
>
> I will test it on latest GA 1.3.6 and get back to you.
>
> We strongly recommend you to be on the latest GA 1.3.6 and not 1.3.5
>
> Kindly note that no fixes will be available for 1.3.5.
>
> regards,
> sathwik
>
> On Tue, Apr 14, 2015 at 12:51 PM, Vinay Official
> <[email protected]
> > wrote:
>
>> Ah! still the bpel file did not go through. I am attaching the same
>> as .txt. Please rename it to .bpel after you download it.
>>
>> I have attached the entire process zip, if it happens to go through,
>> you can take that itself. Please rename the extension after
>> downloading the same.
>>
>> Regards,
>> Vinay
>>
>>
>> On Tue, Apr 14, 2015 at 12:26 PM, Vinay Official <
>> [email protected]> wrote:
>>
>>> I am not sure why the bpel file din't go through. Please find the
>>> same attached.
>>>
>>> Regards,
>>> Vinay
>>>
>>>
>>>
>>>>
>>>>
>>>>
>>>> *From:* Vinay Official [mailto:[email protected]]
>>>> *Sent:* Tuesday, April 14, 2015 12:20 PM
>>>> *To:* [email protected]
>>>> *Subject:* Re: FW: Issue with execution of process having parallel
>>>> activity
>>>>
>>>>
>>>>
>>>> Hi Sathwick,
>>>>
>>>> Please find attached the process artifacts. I am attaching
>>>> the individual files as I am not sure if the zip file gets stripped off.
>>>>
>>>> I have not tried deploying the same on ode 1.3.6 as we use
>>>> Oracle as the back end. This needs a set of changes to the ode.war.
>>>> I will confirm to you if this happens on ode 1.3.6 once I check on the
>>>> same.
>>>>
>>>> Thank you for the reply. Awaiting your response.
>>>>
>>>> Regards,
>>>>
>>>> Vinay
>>>>
>>>>
>>>>
>>>>
>>>> -----Original Message-----
>>>> From: Sathwik B P [mailto:[email protected]]
>>>> Sent: Friday, April 10, 2015 3:15 PM
>>>> To: [email protected]
>>>> Subject: Re: Issue with execution of process having parallel
>>>> activity
>>>>
>>>> Hi Vinay,
>>>>
>>>> Are you in production with ODE 1.3.5?
>>>>
>>>> Can you check if this happens on ODE 1.3.6?
>>>>
>>>> Can you attach the complete process artifacts? Will try on my side.
>>>>
>>>> regards,
>>>> sathwik
>>>>
>>>> On Thu, Apr 9, 2015 at 6:54 AM, Vinay Official <
>>>> [email protected]>
>>>> wrote:
>>>>
>>>>
>>>> > Hi,
>>>> > I am facing issue in Apache ODE while creating an instance
>>>> > with flow activity. I am able to create an instance through soap
>>>> > ui. The issue is that though the branches begin to execute in
>>>> > parallel only one branch completes the execution while other
>>>> > branch does not complete execution of all the activities in that
>>>> > parallel branch.
>>>> > The bpel process that I authored has 2 flow branches. One branch
>>>> > calculates the sum of 2 numbers, waits for a fixed period and
>>>> > adds a fixed offset to the sum. The other branch calculates the
>>>> > product of 2 numbers, waits for a fixed period and adds a fixed
>>>> > offset to the product. Please note that there are no invokes in
>>>> > the process. I have
>>>> pasted the code for reference.
>>>> >
>>>> > When I see the ode logs, I see InstanceNotFoundException. But the
>>>> > instance is present in BPEL_INSTANCE table. I have pasted the
>>>> > logs below. I am not sure if this is related to the current issue
>>>> > I am
>>>> facing.
>>>> >
>>>> > I inspected the BPEL_EVENT table and saw that not all ode events
>>>> > are logged for the process. At a high level following activity
>>>> > events are only logged for the flow activity:
>>>> > Flow1 start, FlowSequence2 start, AssignProduct start,
>>>> > FlowSequence1 start, AssignSum start, AssignSum end, wait1 start,
>>>> > AssignProduct end,
>>>> > wait2 start, wait1 end, Assign1 start, Assign1 end, FlowSequence1
>>>> > end If you notice above there are no events logged for wait2 end,
>>>> > Assign2 start & end, FlowSequence2 end, ProcessCompletionEvent.
>>>> > The instance is not completed and is in active state.
>>>> > If I create another instance, the activities of FlowSequence2
>>>> > might fully complete, but that of FlowSequence1 will not be completed.
>>>> > I have deployed apache ode 1.3.5 on tomcat 6 with Oracle 11g as
>>>> > the database.
>>>> >
>>>> > Find below the code:
>>>> >
>>>> > BPEL
>>>> > <?xml version="1.0" encoding="UTF-8"?>
>>>> > <process
>>>> > name="ParallelProcess"
>>>> > targetNamespace="http://www.example.com/BPEL/ParallelProcess"
>>>> > xmlns="
>>>> http://docs.oasis-open.org/wsbpel/2.0/process/executable"
>>>> > xmlns:bpel="
>>>> > http://docs.oasis-open.org/wsbpel/2.0/process/executable
>>>> > "
>>>> > xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>>> > xmlns:tns="http://www.example.com/BPEL/ParallelProcess"
>>>> > xmlns:pwsdl="http://www.example.com/WSDL/ParallelProcess"
>>>> > xmlns:pxsd="http://www.example.com/Schema/ParallelProcess"
>>>> > >
>>>> >
>>>> > <import namespace="
>>>> http://www.example.com/WSDL/ParallelProcess"
>>>> > location="ParallelProcess.wsdl" importType="
>>>> > http://schemas.xmlsoap.org/wsdl/
>>>> > "/>
>>>> >
>>>> > <partnerLinks>
>>>> > <partnerLink name="ParallelProcess_plink"
>>>> > partnerLinkType="pwsdl:ParallelProcess"
>>>> myRole="ParallelProcessProvider"
>>>> > partnerRole="ParallelProcessRequester"/>
>>>> > </partnerLinks>
>>>> >
>>>> > <variables>
>>>> > <variable name="ParallelProcessIn"
>>>> > messageType="pwsdl:ParallelProcessRequestMessage"/>
>>>> > <variable name="ParallelProcessOut"
>>>> > messageType="pwsdl:ParallelProcessResponseMessage"/>
>>>> > </variables>
>>>> >
>>>> > <sequence>
>>>> > <receive name="ReceiveInput" createInstance="yes"
>>>> > partnerLink="ParallelProcess_plink" operation="initiate"
>>>> > portType="pwsdl:ParallelProcess" variable="ParallelProcessIn"/>
>>>> > <assign name="AssignInit">
>>>> > <copy>
>>>> > <from>
>>>> >
>>>> >
>>>> >
>>>> <literal><pxsd:ParallelProcessResponse><pxsd:Sum/><pxsd:Product/></
>>>> pxsd:ParallelProcessResponse></literal>
>>>> > </from>
>>>> > <to>
>>>> > $ParallelProcessOut.payload
>>>> > </to>
>>>> > </copy>
>>>> > </assign>
>>>> > <flow name="Flow1">
>>>> > <sequence name="FlowSequence1">
>>>> > <assign name="AssignSum">
>>>> > <copy>
>>>> > <from>$ParallelProcessIn.payload/pxsd:Number1 +
>>>> > $ParallelProcessIn.payload/pxsd:Number2</from>
>>>> > <to>$ParallelProcessOut.payload/pxsd:Sum</to>
>>>> > </copy>
>>>> > </assign>
>>>> > <wait name="Wait1">
>>>> > <for>'PT5S'</for>
>>>> > </wait>
>>>> > <assign name="Assign1">
>>>> > <copy>
>>>> > <from>$ParallelProcessOut.payload/pxsd:Sum + 2</from>
>>>> > <to>$ParallelProcessOut.payload/pxsd:Sum</to>
>>>> > </copy>
>>>> > </assign>
>>>> > </sequence>
>>>> > <sequence name="FlowSequence2">
>>>> > <assign name="AssignProduct">
>>>> > <copy>
>>>> > <from>$ParallelProcessIn.payload/pxsd:Number1 *
>>>> > $ParallelProcessIn.payload/pxsd:Number2</from>
>>>> > <to>$ParallelProcessOut.payload/pxsd:Product</to>
>>>> > </copy>
>>>> > </assign>
>>>> > <wait name="Wait2">
>>>> > <for>'PT5S'</for>
>>>> > </wait>
>>>> > <assign name="Assign2">
>>>> > <copy>
>>>> > <from>$ParallelProcessOut.payload/pxsd:Product + 2</from>
>>>> > <to>$ParallelProcessOut.payload/pxsd:Product</to>
>>>> > </copy>
>>>> > </assign>
>>>> > </sequence>
>>>> > </flow>
>>>> > </sequence>
>>>> > </process>
>>>> >
>>>> > WSDL
>>>> >
>>>> > <?xml version="1.0"?>
>>>> > <definitions name="ParallelProcess"
>>>> > targetNamespace="
>>>> http://www.example.com/WSDL/ParallelProcess"
>>>> > xmlns:tns="http://www.example.com/WSDL/ParallelProcess"
>>>> > xmlns:plnk="
>>>> http://docs.oasis-open.org/wsbpel/2.0/plnktype"
>>>> > xmlns="http://schemas.xmlsoap.org/wsdl/"
>>>> > xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
>>>> >
>>>> > xmlns:psns="http://www.example.com/Schema/ParallelProcess">
>>>> >
>>>> > <types>
>>>> > <schema attributeFormDefault="unqualified"
>>>> > elementFormDefault="qualified"
>>>> > targetNamespace="
>>>> > http://www.example.com/WSDL/ParallelProcess"
>>>> > xmlns="http://www.w3.org/2001/XMLSchema">
>>>> > <import schemaLocation="ParallelProcess.xsd"
>>>> namespace="
>>>> > http://www.example.com/Schema/ParallelProcess"/>
>>>> > </schema>
>>>> > </types>
>>>> >
>>>> > <message name="ParallelProcessRequestMessage">
>>>> > <part name="payload"
>>>> element="psns:ParallelProcessRequest"/>
>>>> > </message>
>>>> >
>>>> > <message name="ParallelProcessResponseMessage">
>>>> > <part name="payload"
>>>> element="psns:ParallelProcessResponse"/>
>>>> > </message>
>>>> >
>>>> > <portType name="ParallelProcess">
>>>> > <operation name="initiate">
>>>> > <input message="tns:ParallelProcessRequestMessage"/>
>>>> > </operation>
>>>> > </portType>
>>>> > <portType name="ParallelProcessCallback">
>>>> > <operation name="onResult">
>>>> > <input message="tns:ParallelProcessResponseMessage"/>
>>>> > </operation>
>>>> > </portType>
>>>> >
>>>> > <plnk:partnerLinkType name="ParallelProcess">
>>>> > <plnk:role name="ParallelProcessProvider"
>>>> > portType="tns:ParallelProcess"/>
>>>> > <plnk:role name="ParallelProcessRequester"
>>>> > portType="tns:ParallelProcessCallback"/>
>>>> > </plnk:partnerLinkType>
>>>> >
>>>> > <binding name="ParallelProcessBinding"
>>>> type="tns:ParallelProcess">
>>>> > <soap:binding style="document"
>>>> > transport="http://schemas.xmlsoap.org/soap/http"/>
>>>> > <operation name="initiate">
>>>> > <soap:operation
>>>> > soapAction="
>>>> > http://www.example.com/WSDL/ParallelProcess/initiate"/>
>>>> > <input>
>>>> > <soap:body use="literal"/>
>>>> > </input>
>>>> > </operation>
>>>> > </binding>
>>>> >
>>>> > <binding name="ParallelProcessCallbackBinding"
>>>> > type="tns:ParallelProcessCallback">
>>>> > <soap:binding style="document" transport="
>>>> > http://schemas.xmlsoap.org/soap/http"/>
>>>> > <operation name="onResult">
>>>> > <soap:operation
>>>> > soapAction="
>>>> > http://www.example.com/WSDL/ParallelProcess/onResult"/>
>>>> > <input>
>>>> > <soap:body use="literal"/>
>>>> > </input>
>>>> > </operation>
>>>> > </binding>
>>>> >
>>>> > <service name="ParallelProcess">
>>>> > <port name="ParallelProcessPort"
>>>> > binding="tns:ParallelProcessBinding">
>>>> > <soap:address location="
>>>> > http://localhost:8086/ode/processes/ParallelProcessPort"/>
>>>> > </port>
>>>> > </service>
>>>> >
>>>> > <service name="ParallelProcessCallback">
>>>> > <port name="ParallelProcessPortCallbackPort"
>>>> > binding="tns:ParallelProcessCallbackBinding">
>>>> > <soap:address location="
>>>> > http://localhost:8086/ode/processes/ParallelProcessPortCallbackPo
>>>> > rt
>>>> "/>
>>>> > </port>
>>>> > </service>
>>>> > </definitions>
>>>> >
>>>> > XSD
>>>> >
>>>> > <?xml version="1.0" encoding="UTF-8"?>
>>>> >
>>>> > <xsd:schema
>>>> > xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>>>> > targetNamespace="
>>>> http://www.example.com/Schema/ParallelProcess"
>>>> > xmlns:tns="http://www.example.com/Schema/ParallelProcess"
>>>> > elementFormDefault="qualified">
>>>> >
>>>> > <xsd:complexType name="ParallelProcessRequestComplexType">
>>>> > <xsd:sequence>
>>>> > <xsd:element name="Number1" type="xsd:integer"/>
>>>> > <xsd:element name="Number2" type="xsd:integer"/>
>>>> > </xsd:sequence>
>>>> > </xsd:complexType>
>>>> >
>>>> > <xsd:complexType name="ParallelProcessResponseComplxType">
>>>> > <xsd:sequence>
>>>> > <xsd:element name="Sum" type="xsd:integer"/>
>>>> > <xsd:element name="Product" type="xsd:integer"/>
>>>> > </xsd:sequence>
>>>> > </xsd:complexType>
>>>> >
>>>> > <xsd:element name="ParallelProcessRequest"
>>>> > type="tns:ParallelProcessRequestComplexType"/>
>>>> > <xsd:element name="ParallelProcessResponse"
>>>> > type="tns:ParallelProcessResponseComplxType"/>
>>>> >
>>>> > </xsd:schema>
>>>> >
>>>> > ODE Log
>>>> >
>>>> > org.apache.ode.bpel.pmapi.InstanceNotFoundException:
>>>> > InstanceNotFoundException 500
>>>> > at
>>>> >
>>>> >
>>>> org.apache.ode.bpel.engine.ProcessAndInstanceManagementImpl.genInst
>>>> anceInfoDocument(ProcessAndInstanceManagementImpl.java:740)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.ode.bpel.engine.ProcessAndInstanceManagementImpl.access$
>>>> 700(ProcessAndInstanceManagementImpl.java:152)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.ode.bpel.engine.ProcessAndInstanceManagementImpl$7.run(P
>>>> rocessAndInstanceManagementImpl.java:403)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.ode.bpel.engine.ProcessAndInstanceManagementImpl$7.run(P
>>>> rocessAndInstanceManagementImpl.java:401)
>>>> > at
>>>> > org.apache.ode.bpel.engine.BpelDatabase$1.call(BpelDatabase.java:76)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(Sim
>>>> pleScheduler.java:284)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(Sim
>>>> pleScheduler.java:239)
>>>> > at
>>>> > org.apache.ode.bpel.engine.BpelDatabase.exec(BpelDatabase.java:74)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.ode.bpel.engine.ProcessAndInstanceManagementImpl.getInst
>>>> anceInfo(ProcessAndInstanceManagementImpl.java:401)
>>>> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>>> > at
>>>> >
>>>> >
>>>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImp
>>>> l.java:39)
>>>> > at
>>>> >
>>>> >
>>>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcc
>>>> essorImpl.java:25)
>>>> > at java.lang.reflect.Method.invoke(Method.java:597)
>>>> > at
>>>> org.apache.ode.il.DynamicService.invoke(DynamicService.java:71)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.ode.axis2.service.ManagementService$DynamicMessageReceiv
>>>> er.invokeBusinessLogic(ManagementService.java:126)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.axis2.receivers.AbstractMessageReceiver.receive(Abstract
>>>> MessageReceiver.java:96)
>>>> > at
>>>> org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:145)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostR
>>>> equest(HTTPTransportUtils.java:275)
>>>> > at
>>>> >
>>>> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java
>>>> :120)
>>>> > at
>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
>>>> > at
>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Ap
>>>> plicationFilterChain.java:290)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(Applicatio
>>>> nFilterChain.java:206)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrappe
>>>> rValve.java:233)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContex
>>>> tValve.java:191)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve
>>>> .java:127)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve
>>>> .java:103)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineV
>>>> alve.java:109)
>>>> > at
>>>> >
>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.j
>>>> ava:293)
>>>> > at
>>>> >
>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.ja
>>>> va:861)
>>>> > at
>>>> >
>>>> >
>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.pro
>>>> cess(Http11Protocol.java:620)
>>>> > at
>>>> >
>>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:
>>>> 489)
>>>> > at java.lang.Thread.run(Thread.java:662)
>>>> >
>>>>
>>>>
>>>>
>>>
>>>
>>
>