Transaction already associated with request
rakeshsagar Jan 9, 2014 10:55 AMHi,
I am using teiid 8.5 and I get the error Transaction already associated with request intermittently for different queries.
The
We are using the TeiidDataSource class for creating a connection. Also, we did not set anything for setAutoCommitTxn(). This is the default i.e. AUTO.
Can you let us know the reason for this and how we can fix this problem.
The following is the stacktrace:
org.teiid.jdbc.TeiidSQLException: Transaction already associated with request.
at org.teiid.jdbc.TeiidSQLException.create(TeiidSQLException.java:135)
at org.teiid.jdbc.TeiidSQLException.create(TeiidSQLException.java:71)
at org.teiid.jdbc.StatementImpl.postReceiveResults(StatementImpl.java:667)
at org.teiid.jdbc.StatementImpl.access$100(StatementImpl.java:63)
at org.teiid.jdbc.StatementImpl$2.onCompletion(StatementImpl.java:515)
at org.teiid.client.util.ResultsFuture.addCompletionListener(ResultsFuture.java:148)
at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:511)
at org.teiid.jdbc.PreparedStatementImpl.executeQuery(PreparedStatementImpl.java:261)
at com.ca.chorus.db.DbExecutor.withResultSet(DbExecutor.java:384)
at com.ca.chorus.db.DbExecutor.gatherResults(DbExecutor.java:889)
at com.ca.chorus.db.DbExecutor.gatherResults(DbExecutor.java:882)
at com.ca.mfui.chorusR2.server.service.ObjectsServiceImpl.getTreeDefinitionModel(ObjectsServiceImpl.java:3234)
at com.ca.mfui.chorusR2.server.service.ObjectsServiceImpl.getTreeForSection(ObjectsServiceImpl.java:3214)
at com.ca.mfui.chorusR2.server.service.ObjectsServiceImpl.getTreeNodeChildren(ObjectsServiceImpl.java:3578)
at sun.reflect.GeneratedMethodAccessor128.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.ca.mfui.chorusR2.servlet.ChorusGWTServlet.processCall(ChorusGWTServlet.java:272)
at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:754)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263)
at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178)
at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
at com.ca.mfui.chorusR2.servlet.TransactionFilter$1.call(TransactionFilter.java:54)
at com.ca.mfui.chorusR2.servlet.TransactionFilter$1.call(TransactionFilter.java:43)
at com.ca.chorus.server.transaction.TransactionRunner.invoke(TransactionRunner.java:19)
at com.ca.chorus.server.transaction.TransactionRunner$$EnhancerByGuice$$d14fbfd2.CGLIB$invoke$1(<generated>)
at com.ca.chorus.server.transaction.TransactionRunner$$EnhancerByGuice$$d14fbfd2$$FastClassByGuice$$119db1fb.invoke(<generated>)
at com.google.inject.internal.cglib.proxy.$MethodProxy.invokeSuper(MethodProxy.java:228)
at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72)
at com.ca.chorus.aop.guice.PerfTracer.trace(PerfTracer.java:75)
at com.ca.chorus.aop.guice.PerfTracer.trace(PerfTracer.java:92)
at com.ca.chorus.server.transaction.TransactionalMethodInterceptor.invoke(TransactionalMethodInterceptor.java:31)
at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72)
at com.google.inject.internal.InterceptorStackCallback.intercept(InterceptorStackCallback.java:52)
at com.ca.chorus.server.transaction.TransactionRunner$$EnhancerByGuice$$d14fbfd2.invoke(<generated>)
at com.ca.mfui.chorusR2.servlet.TransactionFilter.doFilter(TransactionFilter.java:42)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:163)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
at com.google.inject.servlet.FilterDefinition.doFilter(FilterDefinition.java:168)
at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:58)
at com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:118)
at com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:113)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)
at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:920)
at java.lang.Thread.run(Thread.java:722)
Caused by: org.teiid.core.TeiidException: Transaction already associated with request.
at org.teiid.client.ResultsMessage.setException(ResultsMessage.java:194)
at org.teiid.dqp.internal.process.RequestWorkItem.sendError(RequestWorkItem.java:958)
at org.teiid.dqp.internal.process.RequestWorkItem.close(RequestWorkItem.java:543)
at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:346)
at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:248)
at org.teiid.dqp.internal.process.DQPCore.executeRequest(DQPCore.java:307)
at sun.reflect.GeneratedMethodAccessor95.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.teiid.logging.LogManager$LoggingProxy.invoke(LogManager.java:121)
at org.teiid.jboss.TransportService$2.invoke(TransportService.java:234)
at $Proxy31.executeRequest(Unknown Source)
at sun.reflect.GeneratedMethodAccessor95.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.teiid.transport.LocalServerConnection$1$1.call(LocalServerConnection.java:137)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:269)
at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:253)
at org.teiid.transport.LocalServerConnection$1.invoke(LocalServerConnection.java:135)
at $Proxy31.executeRequest(Unknown Source)
at org.teiid.jdbc.StatementImpl.execute(StatementImpl.java:634)
at org.teiid.jdbc.StatementImpl.executeSql(StatementImpl.java:509)
... 60 more
Caused by: java.lang.AssertionError: Transaction already associated with request.
at org.teiid.core.util.Assertion.failed(Assertion.java:73)
at org.teiid.core.util.Assertion.assertTrue(Assertion.java:68)
at org.teiid.dqp.internal.process.Request.getTransactionContext(Request.java:321)
at org.teiid.dqp.internal.process.Request.createProcessor(Request.java:310)
at org.teiid.dqp.internal.process.Request.processRequest(Request.java:440)
at org.teiid.dqp.internal.process.RequestWorkItem.processNew(RequestWorkItem.java:600)
at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:309)
... 81 more
Thanks
Rakesh.