[jboss-user] [JBoss jBPM] - Re: Problem with a decision node in a fork, join construct.

janvandeklok do-not-reply at jboss.com
Mon Dec 15 08:17:00 EST 2008


The session.flush() does not seem to make any difference!

Changed the code in class Join as follows:

 109       if (session!=null) {
  |  110         LockMode lockMode = LockMode.FORCE;
  |  111         if (parentLockMode!=null) {
  |  112           lockMode = LockMode.parse(parentLockMode);
  |  113         }
  |  114         log.debug("forcing version increment on parent token "+parentToken);
  | 115          session.flush();
  | 116          session.lock(parentToken, lockMode);
  |         }

and here is the stack trace: 



  | 2008-12-15 14:06:07,016 ERROR [STDERR] org.hibernate.StaleObjectStateException: Row was updated or deleted by another tr
  | ansaction (or unsaved-value mapping was incorrect): [org.jbpm.graph.exe.Token#367]
  |         at org.hibernate.persister.entity.AbstractEntityPersister.forceVersionIncrement(AbstractEntityPersister.java:123
  | 5)
  |         at org.hibernate.event.def.AbstractLockUpgradeEventListener.upgradeLock(AbstractLockUpgradeEventListener.java:82
  | )
  |         at org.hibernate.event.def.DefaultLockEventListener.onLock(DefaultLockEventListener.java:64)
  |         at org.hibernate.impl.SessionImpl.fireLock(SessionImpl.java:584)
  |         at org.hibernate.impl.SessionImpl.lock(SessionImpl.java:576)
  |         at org.jbpm.graph.node.Join.execute(Join.java:116)
  |         at org.jbpm.graph.def.Node.enter(Node.java:319)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173)
  |         at org.jbpm.graph.def.Node_$$_javassist_67.enter(Node_$$_javassist_67.java)
  |         at org.jbpm.graph.def.Transition.take(Transition.java:151)
  |         at org.jbpm.graph.def.Node.leave(Node.java:394)
  |         at org.jbpm.graph.exe.ExecutionContext.leaveNode(ExecutionContext.java:136)
  |         at org.jbpm.graph.node.Decision.execute(Decision.java:152)
  |         at org.jbpm.graph.def.Node.enter(Node.java:319)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173)
  |         at org.jbpm.graph.def.Node_$$_javassist_67.enter(Node_$$_javassist_67.java)
  |         at org.jbpm.graph.def.Transition.take(Transition.java:151)
  |         at org.jbpm.graph.def.Node.leave(Node.java:394)
  |         at org.jbpm.graph.def.Node.leave(Node.java:369)
  |         at org.jbpm.graph.node.Fork.execute(Fork.java:140)
  |         at org.jbpm.graph.def.Node.enter(Node.java:319)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173)
  |         at org.jbpm.graph.def.Node_$$_javassist_67.enter(Node_$$_javassist_67.java)
  |         at org.jbpm.graph.def.Transition.take(Transition.java:151)
  |         at org.jbpm.graph.def.Node.leave(Node.java:394)
  |         at org.jbpm.graph.node.StartState.leave(StartState.java:70)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173)
  |         at org.jbpm.graph.def.Node_$$_javassist_67.leave(Node_$$_javassist_67.java)
  |         at org.jbpm.graph.exe.Token.signal(Token.java:195)
  |         at org.jbpm.graph.exe.Token.signal(Token.java:140)
  |         at org.jbpm.graph.exe.ProcessInstance.signal(ProcessInstance.java:271)
  |         at org.jbpm.graph.node.ProcessState.execute(ProcessState.java:196)
  |         at org.jbpm.graph.def.Node.enter(Node.java:319)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173)
  |         at org.jbpm.graph.def.Node_$$_javassist_67.enter(Node_$$_javassist_67.java)
  |         at org.jbpm.graph.def.Transition.take(Transition.java:151)
  |         at org.jbpm.graph.def.Node.leave(Node.java:394)
  |         at org.jbpm.graph.node.TaskNode.leave(TaskNode.java:209)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173)
  |         at org.jbpm.graph.node.TaskNode_$$_javassist_35.leave(TaskNode_$$_javassist_35.java)
  |         at org.jbpm.graph.exe.Token.signal(Token.java:195)
  |         at org.jbpm.graph.exe.Token.signal(Token.java:140)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  |         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:173)
  |         at org.jbpm.graph.exe.Token_$$_javassist_82.signal(Token_$$_javassist_82.java)
  |         at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:485)
  |         at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:399)
  |         at nl.chronotech.ibis.task.TaskManagement.endAllTasks(TaskManagement.java:143)
  |         at nl.chronotech.ibis.task.StudentTaskManagement.endAllTasksNow(StudentTaskManagement.java:85)
  | 
Any other idea's??

Jan 

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4196553#4196553

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4196553



More information about the jboss-user mailing list