[ https://issues.apache.org/jira/browse/ODE-302?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13084952#comment-13084952 ]
Michael Smith commented on ODE-302: ----------------------------------- Just FYI, this issue (TransactionManager is not recoverable) still exists in 1.4-snapshot (trunk) running under ServiceMix 4.4 with INTERNAL database mode. I ported the patch attached to this bug and get the following trace: [code] 2011-08-14 23:44:33,573 DEBUG [ODE Extender:Start:com.xxx.biz-engine] (BpelProcess.java:994) - Creating new process DAO for {urn:xxx:201106:business:bpel}BusinessProcess-0 (guid=trnr1ec1w78hmne3uk5nq4chgaj6lw1e)... 2011-08-14 23:44:33,573 ERROR [ODE Extender:Start:com.xxx.biz-engine] (BpelDAOConnectionImpl.java:132) - DbError org.hibernate.HibernateException: Unable to locate current JTA transaction at org.hibernate.context.JTASessionContext.currentSession(JTASessionContext.java:61)[226:wrap_mvn_org.hibernate_hibernate_3.2.5.ga:0] at org.hibernate.impl.SessionFactoryImpl.getCurrentSession(SessionFactoryImpl.java:544)[226:wrap_mvn_org.hibernate_hibernate_3.2.5.ga:0] at org.apache.ode.daohib.SessionManager.getSession(SessionManager.java:104)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.daohib.bpel.BpelDAOConnectionImpl.getSession(BpelDAOConnectionImpl.java:89)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.daohib.bpel.BpelDAOConnectionImpl.getProcess(BpelDAOConnectionImpl.java:126)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.bpel.engine.BpelProcess.createProcessDAO(BpelProcess.java:1006)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.bpel.engine.BpelProcess.bounceProcessDAOInDB(BpelProcess.java:995)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.bpel.engine.BpelProcess.access$1700(BpelProcess.java:97)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.bpel.engine.BpelProcess$HydrationLatch$3.call(BpelProcess.java:975)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:286)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.scheduler.simple.SimpleScheduler.execTransaction(SimpleScheduler.java:241)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.doHydrate(BpelProcess.java:973)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.access$200(BpelProcess.java:836)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.bpel.engine.BpelProcess$HydrationLatch$2.run(BpelProcess.java:846)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.bpel.engine.NStateLatch.latch(NStateLatch.java:89)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.bpel.engine.BpelProcess.hydrate(BpelProcess.java:747)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.bpel.engine.BpelServerImpl.register(BpelServerImpl.java:324)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.jbi.OdeServiceUnit.start(OdeServiceUnit.java:118)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.jbi.OdeSUManager.start(OdeSUManager.java:118)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.jbi.osgi.deployer.OdeDeployedBundle.deploy(OdeDeployedBundle.java:158)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.jbi.osgi.deployer.OdeDeployedBundle.doStart(OdeDeployedBundle.java:92)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.jbi.osgi.deployer.OdeExtenderImpl$Start.perform(OdeExtenderImpl.java:240)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at org.apache.ode.jbi.osgi.deployer.OdeExtenderImpl$OperationClosure.run(OdeExtenderImpl.java:222)[247:org.apache.ode.ode-jbi-bundle:1.4.0.SNAPSHOT] at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)[:1.6.0_26] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)[:1.6.0_26] at java.lang.Thread.run(Thread.java:662)[:1.6.0_26] [/code] > Use embedded TransactionManager if database mode is EMBEDDED or INTERNAL > ------------------------------------------------------------------------ > > Key: ODE-302 > URL: https://issues.apache.org/jira/browse/ODE-302 > Project: ODE > Issue Type: Bug > Components: JBI Integration > Reporter: Alex Boisvert > Labels: patch > Fix For: 2.0 > > Attachments: ODE302.patch.txt > > > Ode should not use the TransactionManager provided by the JBI container in > EMBEDDED and INTERNAL database modes since it creates its own DataSource > which are not under the responsibility of the container's TransactionManager. > This happened to work with ServiceMix since it uses the same > TransactionManager (Geronimo's), but it's not something we can assume in > other JBI environments. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira