[ 
https://issues.apache.org/jira/browse/ODE-357?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Arkadiusz Burdach updated ODE-357:
----------------------------------

    Attachment: bug357_1.diff

This patch resolves the problem. I've added clearing routes to instance of 
processes which are being undeployed. I've checked it on jpa, but on hibernate 
and memdao also should work.

> 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
>         Attachments: bug357_1.diff, redeploy-error.tar.gz
>
>
> 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.

Reply via email to