<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">

<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>

                                <td>

                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="https://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>

                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px;  -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
    Getting org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [org.jbpm.persistence.processinstance.ProcessInstanceInfo#86] Exception
</h3>
<span style="margin-bottom: 10px;">
    created by <a href="https://community.jboss.org/people/srikanthvege1">srikant vege</a> in <i>jBPM</i> - <a href="https://community.jboss.org/message/738841#738841">View the full discussion</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">

<div class="jive-rendered-content"><p>Hi,</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>I am using JBPM 5.2 with MySql &amp; Tomcat 6 in windows 7.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>I have created 3 tomcat instances (T1, T2 &amp; T3)</p><p>T1: deployed gunor &amp; jbpm console in this tomcat</p><p>T2: deployed human task service war (I converted task service 5.2 module into a war file)</p><p>T3. My web application which will handles process &amp; human tasks related requests.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>I have created a simple workflow with 2 human task nodes.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>I am getting the below mentioned exception while executing these steps.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>1. Start the process (it will create a task record in Task table for my first human task)</p><p>2. Read the processInstance by using knowledgeSession.getProcess(id)</p><p>3. Complete the first human task. (here I am getting the actual exception)</p><p>4. After I get the exception, the process continued and there are 2 task records created in Task table for the second human task.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>If I skip the 2nd step and execute the steps 1,3 &amp; 4, I am not getting this exception and it is working fine.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>Observations:</p><p>When we read the processInstance by using knowledgeSession.getProcess(id) method, internally it is updating the processInstanceInfo table by increasing OPTLOCK value. After this if we complete the task, we are getting the below exception.</p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p>Please help me out on solving this issue. </p><p style="min-height: 8pt; height: 8pt; padding: 0px;">&#160;</p><p><span style="color: #ff0000;">30-May-2012 17:24:42 org.drools.persistence.SingleSessionCommandService rollbackTransaction</span></p><p><span style="color: #ff0000;">SEVERE: Could not commit session</span></p><p><span style="color: #ff0000;">java.lang.RuntimeException: Unable to commit transaction</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.drools.persistence.jta.JtaTransactionManager.commit(JtaTransactionManager.java:182)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:348)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.drools.command.impl.CommandBasedStatefulKnowledgeSession$1.completeWorkItem(CommandBasedStatefulKnowledgeSession.java:150)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.jbpm.process.workitem.wsht.CommandBasedWSHumanTaskHandler$GetResultContentResponseHandler.execute(CommandBasedWSHumanTaskHandler.java:294)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.jbpm.task.service.TaskClientHandler.messageReceived(TaskClientHandler.java:153)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.jbpm.task.service.mina.MinaTaskClientHandler.messageReceived(MinaTaskClientHandler.java:47)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.filterchain.DefaultIoFilterChain$TailFilter.messageReceived(DefaultIoFilterChain.java:713)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.filter.codec.ProtocolCodecFilter$ProtocolDecoderOutputImpl.flush(ProtocolCodecFilter.java:375)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.filter.codec.ProtocolCodecFilter.messageReceived(ProtocolCodecFilter.java:229)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.filterchain.DefaultIoFilterChain.access$1200(DefaultIoFilterChain.java:46)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.filterchain.DefaultIoFilterChain$EntryImpl$1.messageReceived(DefaultIoFilterChain.java:793)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.filterchain.IoFilterAdapter.messageReceived(IoFilterAdapter.java:119)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.filterchain.DefaultIoFilterChain.callNextMessageReceived(DefaultIoFilterChain.java:434)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.filterchain.DefaultIoFilterChain.fireMessageReceived(DefaultIoFilterChain.java:426)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.polling.AbstractPollingIoProcessor.read(AbstractPollingIoProcessor.java:638)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:598)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.polling.AbstractPollingIoProcessor.process(AbstractPollingIoProcessor.java:587)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.polling.AbstractPollingIoProcessor.access$400(AbstractPollingIoProcessor.java:61)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.core.polling.AbstractPollingIoProcessor$Processor.run(AbstractPollingIoProcessor.java:969)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.apache.mina.util.NamePreservingRunnable.run(NamePreservingRunnable.java:64)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at java.lang.Thread.run(Thread.java:662)</span></p><p><span style="color: #ff0000;">Caused by: javax.persistence.OptimisticLockException: org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [org.jbpm.persistence.processinstance.ProcessInstanceInfo#86]</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.ejb.AbstractEntityManagerImpl.wrapStaleStateException(AbstractEntityManagerImpl.java:1244)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1167)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1148)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.ejb.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1154)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.ejb.AbstractEntityManagerImpl$3.mapManagedFlushFailure(AbstractEntityManagerImpl.java:1068)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.transaction.synchronization.CallbackCoordinator.beforeCompletion(CallbackCoordinator.java:122)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.transaction.synchronization.HibernateSynchronizationImpl.beforeCompletion(HibernateSynchronizationImpl.java:51)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at bitronix.tm.BitronixTransaction.fireBeforeCompletionEvent(BitronixTransaction.java:478)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at bitronix.tm.BitronixTransaction.commit(BitronixTransaction.java:193)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at bitronix.tm.BitronixTransactionManager.commit(BitronixTransactionManager.java:120)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.drools.persistence.jta.JtaTransactionManager.commit(JtaTransactionManager.java:179)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; ... 26 more</span></p><p><span style="color: #ff0000;">Caused by: org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect): [org.jbpm.persistence.processinstance.ProcessInstanceInfo#86]</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.persister.entity.AbstractEntityPersister.check(AbstractEntityPersister.java:1950)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2594)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2494)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2821)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:113)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:273)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:265)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:185)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:383)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; at org.hibernate.transaction.synchronization.CallbackCoordinator.beforeCompletion(CallbackCoordinator.java:117)</span></p><p><span style="color: #ff0000;">&#160;&#160;&#160; ... 31 more</span></p></div>

<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
    <p style="margin: 0;">Reply to this message by <a href="https://community.jboss.org/message/738841#738841">going to Community</a></p>
        <p style="margin: 0;">Start a new discussion in jBPM at <a href="https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034">Community</a></p>
</div></td>
                        </tr>
                    </tbody>
                </table>


                </td>
            </tr>
        </tbody>
    </table>

</div>

</body>
</html>