[teiid-issues] [JBoss JIRA] (TEIID-4097) No active transaction found while executing long running update statement

Bram Gadeyne (JIRA) issues at jboss.org
Thu Mar 24 03:37:00 EDT 2016


    [ https://issues.jboss.org/browse/TEIID-4097?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13181688#comment-13181688 ] 

Bram Gadeyne commented on TEIID-4097:
-------------------------------------

I've changed the default-timeout to 7200 but helas it is not possible to recreate the same environment again. So we can't reproduce the error. If we encounter it again i'll post feedback to this issue.

> No active transaction found while executing long running update statement
> -------------------------------------------------------------------------
>
>                 Key: TEIID-4097
>                 URL: https://issues.jboss.org/browse/TEIID-4097
>             Project: Teiid
>          Issue Type: Bug
>    Affects Versions: 8.11.3
>            Reporter: Bram Gadeyne
>            Assignee: Steven Hawkins
>
> When executing the following statement an exception "java.sql.SQLException: javax.resource.ResourceException: IJ000460: Error checking for a transaction" occurs
> update MVGobs set SequenceName = (select Naam from #seqUniek where ordernumber = MVGobs.OrderNumber and patientID = MVGobs.patientid) where patientid <= 60222
> The MVGObs table is a foreign temporary table on a MySQL 5.6 server. It has almost 1 million rows.
> #seqUniek is an in memory temporary table. It has a primary key defined on the combination of ordernumber and patientid. It has almost 12000 rows.
> This is the complete stack trace:
> 10:44:12,929 WARN  [org.teiid.CONNECTOR] (Worker36735_QueryProcessorQueue1249945) E6abWUweBXyr Connector worker process failed for atomic-request=E6abWUweBXyr.41.2.311518: org.teiid.translator.TranslatorException: TEIID11009 java.sql.SQLException: javax.resource.ResourceException: IJ000460: Error checking for a transaction
>         at org.teiid.translator.jdbc.JDBCExecutionFactory.getConnection(JDBCExecutionFactory.java:270) [translator-jdbc-8.11.3.jar:8.11.3]
>         at org.teiid.translator.jdbc.JDBCExecutionFactory.getConnection(JDBCExecutionFactory.java:68) [translator-jdbc-8.11.3.jar:8.11.3]
>         at org.teiid.translator.ExecutionFactory.getConnection(ExecutionFactory.java:194) [teiid-api-8.11.3.jar:8.11.3]
>         at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:305)
>         at sun.reflect.GeneratedMethodAccessor98.invoke(Unknown Source) [:1.8.0_60]
>         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_60]
>         at java.lang.reflect.Method.invoke(Method.java:497) [rt.jar:1.8.0_60]
>         at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211)
>         at com.sun.proxy.$Proxy47.execute(Unknown Source)
>         at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:298)
>         at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:135)
>         at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:369)
>         at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278)
>         at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:145)
>         at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151)
>         at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
>         at org.teiid.query.processor.BatchIterator.finalRow(BatchIterator.java:69)
>         at org.teiid.common.buffer.AbstractTupleSource.getCurrentTuple(AbstractTupleSource.java:70)
>         at org.teiid.query.processor.BatchIterator.getCurrentTuple(BatchIterator.java:84)
>         at org.teiid.common.buffer.AbstractTupleSource.hasNext(AbstractTupleSource.java:92)
>         at org.teiid.query.processor.proc.ProcedurePlan.executePlan(ProcedurePlan.java:603)
>         at org.teiid.query.processor.proc.CreateCursorResultSetInstruction.process(CreateCursorResultSetInstruction.java:69)
>         at org.teiid.query.processor.proc.ProcedurePlan.processProcedure(ProcedurePlan.java:384)
>         at org.teiid.query.processor.proc.ProcedurePlan.nextBatchDirect(ProcedurePlan.java:293)
>         at org.teiid.query.processor.proc.ProcedurePlan.nextBatch(ProcedurePlan.java:267)
>         at org.teiid.query.processor.relational.PlanExecutionNode.nextBatchDirect(PlanExecutionNode.java:118)
>         at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278)
>         at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:145)
>         at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151)
>         at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
>         at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164)
>         at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:146)
>         at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:457)
>         at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:339)
>         at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
>         at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:267)
>         at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:276)
>         at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
>         at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [rt.jar:1.8.0_60]
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [rt.jar:1.8.0_60]
>         at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_60]
> Caused by: java.sql.SQLException: javax.resource.ResourceException: IJ000460: Error checking for a transaction
>         at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:151)
>         at org.teiid.translator.jdbc.JDBCExecutionFactory.getConnection(JDBCExecutionFactory.java:266) [translator-jdbc-8.11.3.jar:8.11.3]
>         ... 41 more
> Caused by: javax.resource.ResourceException: IJ000460: Error checking for a transaction
>         at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.getManagedConnection(TxConnectionManagerImpl.java:362)
>         at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:510)
>         at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:143)
>         ... 42 more
> Caused by: javax.resource.ResourceException: IJ000459: Transaction is not active: tx=TransactionImple < ac, BasicAction: 0:ffff7f000101:3ecd82e1:56b9cee9:3599e status: ActionStatus.ABORTED >
>         at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.getManagedConnection(TxConnectionManagerImpl.java:352)
>         ... 44 more
> This is the execution plan:
> PlanExecutionNode
> Relational Node ID=4,
> Output Columns=Count (integer),
> Cost Estimates=Estimated Node Cardinality: -1.0,
> 	Program
> 	ASSIGNMENT
> Variable=VARIABLES.ROWS_UPDATED,
> Expression=0,
> 	LOOP
> Result Set=X,
> 	ProjectNode
> Relational Node ID=0,
> Output Columns=s_0 (string),s_1 (integer),s_2 (integer),
> Cost Estimates=Estimated Node Cardinality: -1.0,
> Select Columns=(SELECT #seqUniek.Naam FROM #seqUniek WHERE (#seqUniek.Ordernumber = MVGObs.Ordernumber) AND (#seqUniek.Patientid = MVGObs.Patientid) LIMIT 2) AS s_0,MVGObs.Patientid AS s_1,MVGObs.Ordernumber AS s_2,
> 	AccessNode
> Relational Node ID=1,
> Output Columns=Patientid (integer),Ordernumber (integer),
> Cost Estimates=Estimated Node Cardinality: -1.0,
> Query=SELECT g_0.Patientid, g_0.Ordernumber FROM MVGObs AS g_0 WHERE g_0.Patientid <= 60222,
> Model Name=tmptables,
> 	LimitNode
> Relational Node ID=0,
> Output Columns=Naam (string),
> Cost Estimates=Estimated Node Cardinality: 1.0,
> Row Offset=null,
> Row Limit=2,
> 	AccessNode
> Relational Node ID=1,
> Output Columns=Naam (string),
> Cost Estimates=Estimated Node Cardinality: 1.0,
> Query=SELECT #seqUniek.Naam FROM #seqUniek WHERE (#seqUniek.Ordernumber = MVGObs.Ordernumber) AND (#seqUniek.Patientid = MVGObs.Patientid),
> Model Name=__TEMP__,
> 	Program
> 	CREATE CURSOR
> 	AccessNode
> Relational Node ID=2,
> Output Columns=Count (integer),
> Cost Estimates=Estimated Node Cardinality: -1.0,
> Query=UPDATE MVGObs SET SequenceName = X.s_0 WHERE (MVGObs.Patientid = X.s_1) AND (MVGObs.Ordernumber = X.s_2),
> Model Name=tmptables,
> 	ASSIGNMENT
> Variable=VARIABLES.ROWS_UPDATED,
> Expression=(VARIABLES.ROWS_UPDATED + 1),
> 	CREATE CURSOR
> 	ProjectNode
> Relational Node ID=3,
> Output Columns=ROWS_UPDATED (integer),
> Cost Estimates=Estimated Node Cardinality: 1.0,
> Select Columns=VARIABLES.ROWS_UPDATED,



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)


More information about the teiid-issues mailing list