Error reloading compiled process with loop
------------------------------------------
Key: ODE-357
URL: https://issues.apache.org/jira/browse/ODE-357
Project: ODE
Issue Type: Bug
Components: Deployment
Affects Versions: 1.2
Reporter: Arkadiusz Burdach
I have a process which waits for message and after receive, in loop waits for
another messages. Both waitings are correlated. I send message witch
correlation key '1' and have one active instance of process. Then I do
redeploy, and after finish send one more message witch the same correlation key
'1'. Then I've got:
15:24:09,822 ERROR [BpelProcess] Error reloading compiled process
{http://example.com/Process/Main}Main-2; the file appears to be corrupted.
15:24:09,822 ERROR [BpelEngineImpl] Scheduled job failed;
jobDetail={type=INVOKE_INTERNAL, pid={http://example.com/Process/Main}Main-2,
mexid=hqejbhcnphr3hr27irjgn2}
org.apache.ode.bpel.iapi.BpelEngineException: Error reloading compiled process
{http://example.com/Process/Main}Main-2; the file appears to be corrupted.
at
org.apache.ode.bpel.engine.BpelProcess.getReplacementMap(BpelProcess.java:654)
at
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.<init>(BpelRuntimeContextImpl.java:132)
at
org.apache.ode.bpel.engine.BpelProcess.createRuntimeContext(BpelProcess.java:688)
at
org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeInstance(PartnerLinkMyRoleImpl.java:210)
at
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:213)
at
org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:377)
at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:332)
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:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.NullPointerException
at
org.apache.ode.bpel.engine.BpelProcess.registerExprLang(BpelProcess.java:834)
at
org.apache.ode.bpel.engine.BpelProcess.getReplacementMap(BpelProcess.java:648)
... 17 more
15:24:09,826 ERROR [SimpleScheduler] Error while processing transaction,
retrying.
org.apache.ode.bpel.iapi.Scheduler$JobProcessorException:
org.apache.ode.bpel.iapi.BpelEngineException: Error reloading compiled process
{http://example.com/Process/Main}Main-2; the file appears to be corrupted.
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:269)
at java.util.concurrent.FutureTask.run(FutureTask.java:123)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
at java.lang.Thread.run(Thread.java:595)
Caused by: org.apache.ode.bpel.iapi.BpelEngineException: Error reloading
compiled process {http://example.com/Process/Main}Main-2; the file appears to
be corrupted.
at
org.apache.ode.bpel.engine.BpelProcess.getReplacementMap(BpelProcess.java:654)
at
org.apache.ode.bpel.engine.BpelRuntimeContextImpl.<init>(BpelRuntimeContextImpl.java:132)
at
org.apache.ode.bpel.engine.BpelProcess.createRuntimeContext(BpelProcess.java:688)
at
org.apache.ode.bpel.engine.PartnerLinkMyRoleImpl.invokeInstance(PartnerLinkMyRoleImpl.java:210)
at
org.apache.ode.bpel.engine.BpelProcess.invokeProcess(BpelProcess.java:213)
at
org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:377)
at
org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:332)
... 11 more
Caused by: java.lang.NullPointerException
at
org.apache.ode.bpel.engine.BpelProcess.registerExprLang(BpelProcess.java:834)
at
org.apache.ode.bpel.engine.BpelProcess.getReplacementMap(BpelProcess.java:648)
... 17 more
If I send message witch CK e.g. '2', I have positive answer. Even if I've
already got exception before it.
This problem exists on ode 1.2, ode from branch 1.X, and from trunk. With
embedded db and with oracle by jpa. As a IL I've tried JBI and WAR. The same
results.
In simplier scenario of process:
- receive message A
- receive message B (without loop)
... and waiting after first receive the problem doesn't appear.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.