[
https://issues.apache.org/jira/browse/ODE-765?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12833824#action_12833824
]
Rafal Rusin commented on ODE-765:
---------------------------------
I think that ODE execution states shouldn't embed complex objects, like
java.util.Calendar. It may be good idea to create serializable wrapper util
class, which will hold milliseconds in Long intead of Calendar. This way ODE
will be more flexible for JVM migrations, since JDK classes sometimes are not
be binary compatible.
> Error during migration of IBM JVM - StreamCorruptedException
> ------------------------------------------------------------
>
> Key: ODE-765
> URL: https://issues.apache.org/jira/browse/ODE-765
> Project: ODE
> Issue Type: Bug
> Components: BPEL Runtime
> Affects Versions: 1.3.3
> Environment: SMX 3.3, IBM JDK 1.5
> Reporter: Rafal Rusin
> Assignee: Rafal Rusin
>
> After upgrading JVM from 1.5.x to 1.5.y, this has been thrown (during reading
> of execution state):
> 2010-02-08 22:24:11 | ERROR | ODEServer-22-1 | BpelEngineImpl
> | rg.apache.ode.bpel.engine.BpelEngineImpl 442 | Scheduled job failed;
> jobDetail={channel=370, type=TIMER, iid=33106854978
> , inmem=false}
> java.lang.RuntimeException: java.io.StreamCorruptedException
> at
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.<init>(BpelRuntimeContextImpl.java:161)
> at
> org.apache.ode.bpel.engine.BpelProcess.createRuntimeContext(BpelProcess.java:788)
> at
> org.apache.ode.bpel.engine.BpelProcess.handleWorkEvent(BpelProcess.java:442)
> at
> org.apache.ode.bpel.engine.BpelEngineImpl.onScheduledJob(BpelEngineImpl.java:430)
> at
> org.apache.ode.bpel.engine.BpelServerImpl.onScheduledJob(BpelServerImpl.java:377)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:476)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4$1.call(SimpleScheduler.java:467)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:268)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:466)
> at
> org.apache.ode.scheduler.simple.SimpleScheduler$4.call(SimpleScheduler.java:463)
> at
> edu.emory.mathcs.backport.java.util.concurrent.FutureTask.run(FutureTask.java:176)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:665)
> at
> edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:690)
> at java.lang.Thread.run(Thread.java:811)
> Caused by:
> java.io.StreamCorruptedException
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1368)
> at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
> at
> java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:509)
> at java.util.Calendar.readObject(Calendar.java:2477)
> at sun.reflect.GeneratedMethodAccessor229.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:618)
> at
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1036)
> at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1848)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1755)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1341)
> at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
> at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1755)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1341)
> at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
> at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1755)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1341)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:378)
> at
> org.apache.ode.jacob.vpu.ExecutionQueueImpl$ObjectFrame.readExternal(ExecutionQueueImpl.java:602)
> at
> java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1791)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1341)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:378)
> at java.util.HashSet.readObject(HashSet.java:303)
> at sun.reflect.GeneratedMethodAccessor210.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:618)
> at
> java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:1036)
> at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1848)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1755)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1341)
> at
> java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1947)
> at
> java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1871)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1755)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1341)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:378)
> at
> org.apache.ode.jacob.vpu.ExecutionQueueImpl$CommFrame.readExternal(ExecutionQueueImpl.java:576)
> at
> org.apache.ode.jacob.vpu.ExecutionQueueImpl$ObjectFrame.readExternal(ExecutionQueueImpl.java:601)
> at
> java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1791)
> at
> java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1753)
> at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1341)
> at java.io.ObjectInputStream.readObject(ObjectInputStream.java:378)
> at
> org.apache.ode.jacob.vpu.ExecutionQueueImpl.read(ExecutionQueueImpl.java:276)
> at
> org.apache.ode.bpel.engine.BpelRuntimeContextImpl.<init>(BpelRuntimeContextImpl.java:159)
> ... 13 more
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.