[
https://issues.apache.org/jira/browse/ODE-507?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12672541#action_12672541
]
shammychen edited comment on ODE-507 at 2/10/09 11:56 PM:
-----------------------------------------------------------
Strictly speaking,t his error is not caused by OutstandRequestManager at all.
Any way, I can reproduce this error quite easily now,see the attached file
OutstandingRequestManager_err_detail.log for reference:)
The way to reproduce this error is as follows:
1)design a process with at least two RECEIVE activities ( the first one to
create a new process instance, the second one to match the newly created
instance )
2)modify execute mothod of class BpelRuntimeContextImpl, sleep some time( say
10 seconds ) before this statement
_dao.setExecutionState(bos.toByteArray());
to delay VPU state persistence
3)call the service exposed by the second RECEIVE activity as soon as possible(
before VPU state and pickResponseChannel persistence), so ODE(another thread)
get the old process state, the match are sure to fail
was (Author: shammychen):
Strictly speaking,t his error is not caused by OutstandRequestManager at
all. Any way, I can reproduce this error quite easily now,see the attached file
OutstandingRequestManager_err_detail.log for reference:)
The way to reproduce this error is as follows:
1)design a process with at least two RECEIVE activities ( the first one to
create a new process instance, the second one to match the newly created
instance )
2)modify execute mothod of class BpelRuntimeContextImpl, sleep some time( say
10 seconds ) before this statement
_dao.setExecutionState(bos.toByteArray());
to delay VPU state persistence
3)call the service exposed by the second RECEIVE activity as soon as possible(
before VPU state and pickResponseChannel persistence), so ODE get the old
process state, the match are sure to fail
> OutstandingRequestManager(ExecutionQueueImpl serialization) failed when ODE
> loaded in db mode
> ---------------------------------------------------------------------------------------------
>
> Key: ODE-507
> URL: https://issues.apache.org/jira/browse/ODE-507
> Project: ODE
> Issue Type: Bug
> Components: BPEL Runtime
> Affects Versions: 1.2
> Environment: JAVA 5.0+
> Reporter: Shammy Chen
> Assignee: Sean Ahn
> Attachments: bpmdemo3-5.zip, geronimo.log,
> OutstandingRequestManager_err_detail.log, VpuOustandingDataTest.java
>
>
> We loaded ODE process in db mode and got INTERNAL ERROR from ODE sometime,
> see the following adapted from error log for detail infomation.
> 15:05:51,774 FATAL [OutstandingRequestManager] INTERNAL ERROR: No ENTRY for
> RESPONSE CHANNEL 53
> 15:05:51,776 ERROR [BpelEngineImpl] Scheduled job failed;
> jobDetail={mexid=4611686018427390107,
> pid={http://example.com/bpmdemo3/service}service-17, type=INVOKE_INTERNAL}
> java.lang.IllegalArgumentException: INTERNAL ERROR: No ENTRY for RESPONSE
> CHANNEL 53
> at
> org.apache.ode.bpel.engine.OutstandingRequestManager.associate(OutstandingRequestManager.java:145)
> at
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.inputMsgMatch(BpelRuntimeContextImpl.java:894)
> at
> org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeInstance(PartnerLinkMyRoleImpl.java:211)
> at
> org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:208)
> at
> org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:372)
> at
> org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:326)
> at
> org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:373)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:337)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:336)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:174)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:335)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:332)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:619)
> 15:05:52,798 ERROR [SimpleScheduler] Error while processing transaction,
> retrying.
> org.apache.ode.bpel.iapi.Scheduler$JobProcessorException:
> java.lang.IllegalArgumentException: INTERNAL ERROR: No ENTRY for RESPONSE
> CHANNEL 53
> at
> org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:336)
> at
> org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:373)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:337)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:336)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:174)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:335)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:332)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: java.lang.IllegalArgumentException: INTERNAL ERROR: No ENTRY for
> RESPONSE CHANNEL 53
> at
> org.apache.ode.bpel.engine.OutstandingRequestManager.associate(OutstandingRequestManager.java:145)
> at
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.inputMsgMatch(BpelRuntimeContextImpl.java:894)
> at
> org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeInstance(PartnerLinkMyRoleImpl.java:211)
> at
> org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:208)
> at
> org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:372)
> at
> org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:326)
> ... 11 more
> I doubted whether it was caused by ExecutionQueueImpl's serialization(not
> concurrently), but when I tested this, the answer was NO. Maybe it's caused
> by concurrency.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.