[jbpm-dev] dispose sessions in PerProcessInstanceRuntimeManager
Salaboy
salaboy at gmail.com
Fri Aug 9 13:39:10 EDT 2013
Hi jeff, good feedback I will check that out to see if that change causes issues in other scenarios
Sent from my iPhone
On 9 Aug 2013, at 18:17, Jeffrey Bride <jbride at redhat.com> wrote:
> Hi.
> I'm doing a deep dive into the new jbpm6 PerProcessInstanceRuntimeManager functionality.
> Impressive.
>
>
> One minor observation is that it seems that both the engine.getKieSession().destroy(); and disposeRuntimeEngine(engine); function calls in the init() function are redundant.
> Neither of these calls seem necessary.
> Previous to these function calls, an instance of DisposeSessionTransactionSynchronization() was already registered .... which takes care of appropriately disposing the session after the JTA transaction has committed.
> Subsequently, when either (or both) of these redundant calls to close the session prior to the transaction has committed, the following exception occurs:
>
> java.lang.IllegalStateException: Illegal method call. This session was previously disposed.
> at org.drools.core.reteoo.DisposedReteooWorkingMemory.getProcessRuntime(DisposedReteooWorkingMemory.java:262) [drools-core-6.1.0-SNAPSHOT.jar:6.1.0-SNAPSHOT]
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.getProcessRuntime(StatefulKnowledgeSessionImpl.java:868) [drools-core-6.1.0-SNAPSHOT.jar:6.1.0-SNAPSHOT]
> at org.drools.persistence.SingleSessionCommandService$SynchronizationImpl.afterCompletion(SingleSessionCommandService.java:504) [drools-persistence-jpa-6.1.0-SNAPSHOT.jar:6.1.0-SNAPSHOT]
> at org.drools.persistence.jta.JtaTransactionSynchronizationAdapter.afterCompletion(JtaTransactionSynchronizationAdapter.java:22) [drools-persistence-jpa-6.1.0-SNAPSHOT.jar:6.1.0-SNAPSHOT]
> at com.arjuna.ats.internal.jta.resources.arjunacore.SynchronizationImple.afterCompletion(SynchronizationImple.java:96)
> at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.afterCompletion(TwoPhaseCoordinator.java:402)
>
>
> I'm testing in an EAP6.1 environment using JTA transactions provided by the app server.
> commenting out those apparently redundant function calls does not seem to cause any other negative side effects and the session is still closed by the DisposeSessionTransactionSynchronization instance.
>
> jeff
>
> --
> Jeffrey Bride
> Senior Principal Solution Architect
> Global Partner Enablement
> Red Hat (www.redhat.com)
> cell: 303.523.7885
>
> _______________________________________________
> jbpm-dev mailing list
> jbpm-dev at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jbpm-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jbpm-dev/attachments/20130809/a54b64f2/attachment.html
More information about the jbpm-dev
mailing list