[ 
https://issues.apache.org/jira/browse/ODE-645?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alex Boisvert updated ODE-645:
------------------------------

    Description: 
Here's a sample exception stacktrace that demonstrates a possible error during 
initialization:

13:38:26,139 ERROR [ExternalVariableManager] External variable subsystem 
configuration error.
org.apache.ode.bpel.evar.ExternalVariableModuleException: Unable to open 
database connection for external variable 
{http://example.com/Allocations/Cost_Allocation_Process}Cost_Allocation_Process-5#db_cost_t_alloc_clist-_vjMgGC5wEd6TcMWz-L7Zyw
        at 
org.apache.ode.bpel.extvar.jdbc.JdbcExternalVariableModule.configure(JdbcExternalVariableModule.java:119)
        at 
org.apache.ode.bpel.engine.extvar.ExternalVariableManager.<init>(ExternalVariableManager.java:87)
        at 
org.apache.ode.bpel.engine.BpelProcess.initExternalVariables(BpelProcess.java:164)
        at 
org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.doHydrate(BpelProcess.java:862)
        at 
org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.access$100(BpelProcess.java:777)
        at 
org.apache.ode.bpel.engine.BpelProcess$HydrationLatch$2.run(BpelProcess.java:787)
        at org.apache.ode.bpel.engine.NStateLatch.latch(NStateLatch.java:89)
        at 
org.apache.ode.bpel.engine.BpelProcess.getEndpointToMyRoleMap(BpelProcess.java:707)
        at 
org.apache.ode.bpel.engine.BpelProcess.initMyRoleMex(BpelProcess.java:292)
        at 
org.apache.ode.bpel.engine.BpelEngineImpl.createNewMyRoleMex(BpelEngineImpl.java:173)
        at 
org.apache.ode.bpel.engine.BpelEngineImpl.createMessageExchange(BpelEngineImpl.java:143)
        at 
org.apache.ode.bpel.engine.BpelEngineImpl.createMessageExchange(BpelEngineImpl.java:196)
        at 
org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:114)
        at 
org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:69)
        at 
org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:52)
        at 
org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:173)
        at 
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:167)
        at 
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:142)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at 
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at 
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
        at 
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at 
org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
        at 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
        at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
        at 
org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.sql.SQLException: You cannot set autocommit during a managed 
transaction!
        at 
org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.setJdbcAutoCommit(BaseWrapperManagedConnection.java:482)
        at 
org.jboss.resource.adapter.jdbc.WrappedConnection.setAutoCommit(WrappedConnection.java:322)
        at 
org.apache.ode.bpel.extvar.jdbc.JdbcExternalVariableModule.configure(JdbcExternalVariableModule.java:116)
        ... 39 more
13:38:26,245 ERROR [NStateLatch] Latch error, was releasing for state 1 but 
actually in 0
13:38:26,245 ERROR [ODEService] Exception occured while invoking ODE
org.apache.ode.bpel.iapi.BpelEngineException: External variable subsystem 
configuration error.


  was:
Same exception stack that demonstrates an possible error during initialization:

13:38:26,139 ERROR [ExternalVariableManager] External variable subsystem 
configuration error.
org.apache.ode.bpel.evar.ExternalVariableModuleException: Unable to open 
database connection for external variable 
{http://example.com/Allocations/Cost_Allocation_Process}Cost_Allocation_Process-5#db_cost_t_alloc_clist-_vjMgGC5wEd6TcMWz-L7Zyw
        at 
org.apache.ode.bpel.extvar.jdbc.JdbcExternalVariableModule.configure(JdbcExternalVariableModule.java:119)
        at 
org.apache.ode.bpel.engine.extvar.ExternalVariableManager.<init>(ExternalVariableManager.java:87)
        at 
org.apache.ode.bpel.engine.BpelProcess.initExternalVariables(BpelProcess.java:164)
        at 
org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.doHydrate(BpelProcess.java:862)
        at 
org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.access$100(BpelProcess.java:777)
        at 
org.apache.ode.bpel.engine.BpelProcess$HydrationLatch$2.run(BpelProcess.java:787)
        at org.apache.ode.bpel.engine.NStateLatch.latch(NStateLatch.java:89)
        at 
org.apache.ode.bpel.engine.BpelProcess.getEndpointToMyRoleMap(BpelProcess.java:707)
        at 
org.apache.ode.bpel.engine.BpelProcess.initMyRoleMex(BpelProcess.java:292)
        at 
org.apache.ode.bpel.engine.BpelEngineImpl.createNewMyRoleMex(BpelEngineImpl.java:173)
        at 
org.apache.ode.bpel.engine.BpelEngineImpl.createMessageExchange(BpelEngineImpl.java:143)
        at 
org.apache.ode.bpel.engine.BpelEngineImpl.createMessageExchange(BpelEngineImpl.java:196)
        at 
org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:114)
        at 
org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:69)
        at 
org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:52)
        at 
org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
        at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:173)
        at 
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:167)
        at 
org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:142)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at 
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
        at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
        at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
        at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
        at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
        at 
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
        at 
org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
        at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
        at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at 
org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
        at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
        at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
        at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
        at 
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
        at 
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
        at 
org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.sql.SQLException: You cannot set autocommit during a managed 
transaction!
        at 
org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.setJdbcAutoCommit(BaseWrapperManagedConnection.java:482)
        at 
org.jboss.resource.adapter.jdbc.WrappedConnection.setAutoCommit(WrappedConnection.java:322)
        at 
org.apache.ode.bpel.extvar.jdbc.JdbcExternalVariableModule.configure(JdbcExternalVariableModule.java:116)
        ... 39 more
13:38:26,245 ERROR [NStateLatch] Latch error, was releasing for state 1 but 
actually in 0
13:38:26,245 ERROR [ODEService] Exception occured while invoking ODE
org.apache.ode.bpel.iapi.BpelEngineException: External variable subsystem 
configuration error.



> Possible connection leak during JdbcExternalVariableModule if initialization 
> fails
> ----------------------------------------------------------------------------------
>
>                 Key: ODE-645
>                 URL: https://issues.apache.org/jira/browse/ODE-645
>             Project: ODE
>          Issue Type: Bug
>          Components: BPEL Runtime
>    Affects Versions: 1.3.2
>            Reporter: Alex Boisvert
>             Fix For: 1.3.3, 2.0
>
>
> Here's a sample exception stacktrace that demonstrates a possible error 
> during initialization:
> 13:38:26,139 ERROR [ExternalVariableManager] External variable subsystem 
> configuration error.
> org.apache.ode.bpel.evar.ExternalVariableModuleException: Unable to open 
> database connection for external variable 
> {http://example.com/Allocations/Cost_Allocation_Process}Cost_Allocation_Process-5#db_cost_t_alloc_clist-_vjMgGC5wEd6TcMWz-L7Zyw
>       at 
> org.apache.ode.bpel.extvar.jdbc.JdbcExternalVariableModule.configure(JdbcExternalVariableModule.java:119)
>       at 
> org.apache.ode.bpel.engine.extvar.ExternalVariableManager.<init>(ExternalVariableManager.java:87)
>       at 
> org.apache.ode.bpel.engine.BpelProcess.initExternalVariables(BpelProcess.java:164)
>       at 
> org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.doHydrate(BpelProcess.java:862)
>       at 
> org.apache.ode.bpel.engine.BpelProcess$HydrationLatch.access$100(BpelProcess.java:777)
>       at 
> org.apache.ode.bpel.engine.BpelProcess$HydrationLatch$2.run(BpelProcess.java:787)
>       at org.apache.ode.bpel.engine.NStateLatch.latch(NStateLatch.java:89)
>       at 
> org.apache.ode.bpel.engine.BpelProcess.getEndpointToMyRoleMap(BpelProcess.java:707)
>       at 
> org.apache.ode.bpel.engine.BpelProcess.initMyRoleMex(BpelProcess.java:292)
>       at 
> org.apache.ode.bpel.engine.BpelEngineImpl.createNewMyRoleMex(BpelEngineImpl.java:173)
>       at 
> org.apache.ode.bpel.engine.BpelEngineImpl.createMessageExchange(BpelEngineImpl.java:143)
>       at 
> org.apache.ode.bpel.engine.BpelEngineImpl.createMessageExchange(BpelEngineImpl.java:196)
>       at 
> org.apache.ode.axis2.ODEService.onAxisMessageExchange(ODEService.java:114)
>       at 
> org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:69)
>       at 
> org.apache.ode.axis2.hooks.ODEMessageReceiver.invokeBusinessLogic(ODEMessageReceiver.java:52)
>       at 
> org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:114)
>       at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:173)
>       at 
> org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:167)
>       at 
> org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:142)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>       at 
> org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
>       at 
> org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>       at 
> org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>       at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>       at 
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>       at 
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>       at 
> org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
>       at java.lang.Thread.run(Thread.java:619)
> Caused by: java.sql.SQLException: You cannot set autocommit during a managed 
> transaction!
>       at 
> org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.setJdbcAutoCommit(BaseWrapperManagedConnection.java:482)
>       at 
> org.jboss.resource.adapter.jdbc.WrappedConnection.setAutoCommit(WrappedConnection.java:322)
>       at 
> org.apache.ode.bpel.extvar.jdbc.JdbcExternalVariableModule.configure(JdbcExternalVariableModule.java:116)
>       ... 39 more
> 13:38:26,245 ERROR [NStateLatch] Latch error, was releasing for state 1 but 
> actually in 0
> 13:38:26,245 ERROR [ODEService] Exception occured while invoking ODE
> org.apache.ode.bpel.iapi.BpelEngineException: External variable subsystem 
> configuration error.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to