[teiid-issues] [JBoss JIRA] (TEIID-3827) multi-source view insert throwing TEIID30492 error

Steve Tran (JIRA) issues at jboss.org
Tue Nov 17 15:34:00 EST 2015


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

Steve Tran commented on TEIID-3827:
-----------------------------------

Might be some clues in this ST.

{code}
15:28:35,136 INFO  [org.teiid.PLANNER] (Worker6_QueryProcessorQueue11) 
============================================================================
USER COMMAND:
INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345)

----------------------------------------------------------------------------
OPTIMIZE: 
INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345)

----------------------------------------------------------------------------
GENERATE CANONICAL: 
INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345)

----------------------------------------------------------------------------
OPTIMIZE: 
SELECT 0, 'randomstring', 0, 12345

----------------------------------------------------------------------------
GENERATE CANONICAL: 
SELECT 0, 'randomstring', 0, 12345

CANONICAL PLAN: 
Project(groups=[], props={PROJECT_COLS=[0, 'randomstring', 0, 12345]})


============================================================================
EXECUTING PlaceAccess

AFTER: 
Project(groups=[], props={PROJECT_COLS=[0, 'randomstring', 0, 12345]})


============================================================================
EXECUTING RaiseAccess

AFTER: 
Project(groups=[])


============================================================================
EXECUTING AssignOutputElements

AFTER: 
Project(groups=[], props={PROJECT_COLS=[0, 'randomstring', 0, 12345], OUTPUT_COLS=[0, 'randomstring', 0, 12345]})


============================================================================
EXECUTING CalculateCost

AFTER: 
Project(groups=[], props={PROJECT_COLS=[0, 'randomstring', 0, 12345], OUTPUT_COLS=[0, 'randomstring', 0, 12345], EST_CARDINALITY=1.0, EST_COL_STATS={0=[1.0, 0.0], 'randomstring'=[1.0, 0.0], 12345=[1.0, 0.0]}})


============================================================================
EXECUTING PlanSorts

AFTER: 
Project(groups=[])


============================================================================
EXECUTING CollapseSource

AFTER: 
Project(groups=[])


============================================================================
CONVERTING PLAN TREE TO PROCESS TREE

PROCESS PLAN = 
ProjectNode(0) output=[0, 'randomstring', 0, 12345] [0, 'randomstring', 0, 12345]

============================================================================

----------------------------------------------------------------------------
OPTIMIZATION COMPLETE:
PROCESSOR PLAN:
ProjectNode(0) output=[0, 'randomstring', 0, 12345] [0, 'randomstring', 0, 12345]

============================================================================

----------------------------------------------------------------------------
OPTIMIZE: 
BEGIN ATOMIC
INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint);
INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring);
END

####################################################
PROCEDURE COMMAND: BEGIN ATOMIC
INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint);
INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring);
END
OPTIMIZING SUB-COMMANDS: 

----------------------------------------------------------------------------
OPTIMIZE: 
INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint)

----------------------------------------------------------------------------
GENERATE CANONICAL: 
INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint)

CANONICAL PLAN: 
Project(groups=[], props={PROJECT_COLS=[Count]})
  Source(groups=[Postgres.testp], props={ATOMIC_REQUEST=INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint), VIRTUAL_COMMAND=INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint)})


============================================================================
EXECUTING PlaceAccess

AFTER: 
Project(groups=[], props={PROJECT_COLS=[Count]})
  Access(groups=[Postgres.testp], props={SOURCE_HINT=null, MODEL_ID=Schema name=Postgres, nameInSource=null, uuid=mmuuid:6ff1ad8c-36c2-4526-894b-8eccf1c03af9})
    Source(groups=[Postgres.testp], props={ATOMIC_REQUEST=INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint), VIRTUAL_COMMAND=INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint)})


============================================================================
EXECUTING RaiseAccess

AFTER: 
Access(groups=[Postgres.testp], props={SOURCE_HINT=null, MODEL_ID=Schema name=Postgres, nameInSource=null, uuid=mmuuid:6ff1ad8c-36c2-4526-894b-8eccf1c03af9})
  Project(groups=[], props={PROJECT_COLS=[Count]})
    Source(groups=[Postgres.testp], props={ATOMIC_REQUEST=INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint), VIRTUAL_COMMAND=INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint)})


============================================================================
EXECUTING AssignOutputElements

AFTER: 
Access(groups=[Postgres.testp], props={SOURCE_HINT=null, MODEL_ID=Schema name=Postgres, nameInSource=null, uuid=mmuuid:6ff1ad8c-36c2-4526-894b-8eccf1c03af9, OUTPUT_COLS=[Count]})
  Project(groups=[], props={PROJECT_COLS=[Count], OUTPUT_COLS=[Count]})
    Source(groups=[Postgres.testp], props={ATOMIC_REQUEST=INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint), VIRTUAL_COMMAND=INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint), OUTPUT_COLS=[Count]})


============================================================================
EXECUTING CalculateCost

AFTER: 
Access(groups=[Postgres.testp], props={SOURCE_HINT=null, MODEL_ID=Schema name=Postgres, nameInSource=null, uuid=mmuuid:6ff1ad8c-36c2-4526-894b-8eccf1c03af9, OUTPUT_COLS=[Count], EST_CARDINALITY=0.0, EST_COL_STATS={Count=[-1.0, -1.0]}})
  Project(groups=[], props={PROJECT_COLS=[Count], OUTPUT_COLS=[Count], EST_CARDINALITY=0.0, EST_COL_STATS={Count=[-1.0, -1.0]}})
    Source(groups=[Postgres.testp], props={ATOMIC_REQUEST=INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint), VIRTUAL_COMMAND=INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint), OUTPUT_COLS=[Count], EST_CARDINALITY=0.0})


============================================================================
EXECUTING PlanSorts

AFTER: 
Access(groups=[Postgres.testp])
  Project(groups=[])
    Source(groups=[Postgres.testp])


============================================================================
EXECUTING CollapseSource

AFTER: 
Access(groups=[Postgres.testp], props={SOURCE_HINT=null, MODEL_ID=Schema name=Postgres, nameInSource=null, uuid=mmuuid:6ff1ad8c-36c2-4526-894b-8eccf1c03af9, OUTPUT_COLS=[Count], EST_CARDINALITY=0.0, EST_COL_STATS={Count=[-1.0, -1.0]}, ATOMIC_REQUEST=INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint)})


============================================================================
CONVERTING PLAN TREE TO PROCESS TREE

PROCESS PLAN = 
AccessNode(1) output=[Count] INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint)

============================================================================

----------------------------------------------------------------------------
OPTIMIZATION COMPLETE:
PROCESSOR PLAN:
AccessNode(1) output=[Count] INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint)

============================================================================

----------------------------------------------------------------------------
OPTIMIZE: 
INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring)

----------------------------------------------------------------------------
GENERATE CANONICAL: 
INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring)

CANONICAL PLAN: 
Project(groups=[], props={PROJECT_COLS=[Count]})
  Source(groups=[MySQL.testm], props={ATOMIC_REQUEST=INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring), VIRTUAL_COMMAND=INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring)})


============================================================================
EXECUTING PlaceAccess

AFTER: 
Project(groups=[], props={PROJECT_COLS=[Count]})
  Access(groups=[MySQL.testm], props={SOURCE_HINT=null, MODEL_ID=Schema name=MySQL, nameInSource=null, uuid=mmuuid:d82c88fa-afae-4ab2-b526-4e7b742861ad})
    Source(groups=[MySQL.testm], props={ATOMIC_REQUEST=INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring), VIRTUAL_COMMAND=INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring)})


============================================================================
EXECUTING RaiseAccess

AFTER: 
Access(groups=[MySQL.testm], props={SOURCE_HINT=null, MODEL_ID=Schema name=MySQL, nameInSource=null, uuid=mmuuid:d82c88fa-afae-4ab2-b526-4e7b742861ad})
  Project(groups=[], props={PROJECT_COLS=[Count]})
    Source(groups=[MySQL.testm], props={ATOMIC_REQUEST=INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring), VIRTUAL_COMMAND=INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring)})


============================================================================
EXECUTING AssignOutputElements

AFTER: 
Access(groups=[MySQL.testm], props={SOURCE_HINT=null, MODEL_ID=Schema name=MySQL, nameInSource=null, uuid=mmuuid:d82c88fa-afae-4ab2-b526-4e7b742861ad, OUTPUT_COLS=[Count]})
  Project(groups=[], props={PROJECT_COLS=[Count], OUTPUT_COLS=[Count]})
    Source(groups=[MySQL.testm], props={ATOMIC_REQUEST=INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring), VIRTUAL_COMMAND=INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring), OUTPUT_COLS=[Count]})


============================================================================
EXECUTING CalculateCost

AFTER: 
Access(groups=[MySQL.testm], props={SOURCE_HINT=null, MODEL_ID=Schema name=MySQL, nameInSource=null, uuid=mmuuid:d82c88fa-afae-4ab2-b526-4e7b742861ad, OUTPUT_COLS=[Count], EST_CARDINALITY=0.0, EST_COL_STATS={Count=[-1.0, -1.0]}})
  Project(groups=[], props={PROJECT_COLS=[Count], OUTPUT_COLS=[Count], EST_CARDINALITY=0.0, EST_COL_STATS={Count=[-1.0, -1.0]}})
    Source(groups=[MySQL.testm], props={ATOMIC_REQUEST=INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring), VIRTUAL_COMMAND=INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring), OUTPUT_COLS=[Count], EST_CARDINALITY=0.0})


============================================================================
EXECUTING PlanSorts

AFTER: 
Access(groups=[MySQL.testm])
  Project(groups=[])
    Source(groups=[MySQL.testm])


============================================================================
EXECUTING CollapseSource

AFTER: 
Access(groups=[MySQL.testm], props={SOURCE_HINT=null, MODEL_ID=Schema name=MySQL, nameInSource=null, uuid=mmuuid:d82c88fa-afae-4ab2-b526-4e7b742861ad, OUTPUT_COLS=[Count], EST_CARDINALITY=0.0, EST_COL_STATS={Count=[-1.0, -1.0]}, ATOMIC_REQUEST=INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring)})


============================================================================
CONVERTING PLAN TREE TO PROCESS TREE

PROCESS PLAN = 
AccessNode(2) output=[Count] INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring)

============================================================================

----------------------------------------------------------------------------
OPTIMIZATION COMPLETE:
PROCESSOR PLAN:
AccessNode(2) output=[Count] INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring)

============================================================================
	COMMAND STATEMENT:
 INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint);
		STATEMENT COMMAND PROCESS PLAN:
 AccessNode(1) output=[Count] INSERT INTO Postgres.testp (idtestp, randomint) VALUES (0, "NEW".randomint)

	COMMAND STATEMENT:
 INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring);
		STATEMENT COMMAND PROCESS PLAN:
 AccessNode(2) output=[Count] INSERT INTO MySQL.testm (idtestm, randomstring) VALUES (0, "NEW".randomstring)


####################################################
####################################################
PROCEDURE PLAN :ProcedurePlan:
PROGRAM counter 0
0:  CREATE CURSOR RESULTSET INSTRUCTION - null
1:  CREATE CURSOR RESULTSET INSTRUCTION - null

####################################################

----------------------------------------------------------------------------
OPTIMIZATION COMPLETE:
PROCESSOR PLAN:
ProcedurePlan:
PROGRAM counter 0
0:  CREATE CURSOR RESULTSET INSTRUCTION - null
1:  CREATE CURSOR RESULTSET INSTRUCTION - null

============================================================================

CANONICAL PLAN: 
Project(groups=[], props={PROJECT_COLS=[Count]})
  Source(groups=[Joined_EBL.joined2], props={ATOMIC_REQUEST=INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345), VIRTUAL_COMMAND=INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345), PROCESSOR_PLAN=ForEach ProjectNode(0) output=[0, 'randomstring', 0, 12345] [0, 'randomstring', 0, 12345]

{
ProcedurePlan:
PROGRAM counter 0
0:  CREATE CURSOR RESULTSET INSTRUCTION - null
1:  CREATE CURSOR RESULTSET INSTRUCTION - null
}
})


============================================================================
EXECUTING PlaceAccess

AFTER: 
Project(groups=[], props={PROJECT_COLS=[Count]})
  Access(groups=[Joined_EBL.joined2], props={SOURCE_HINT=null})
    Source(groups=[Joined_EBL.joined2], props={ATOMIC_REQUEST=INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345), VIRTUAL_COMMAND=INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345), PROCESSOR_PLAN=ForEach ProjectNode(0) output=[0, 'randomstring', 0, 12345] [0, 'randomstring', 0, 12345]

{
ProcedurePlan:
PROGRAM counter 0
0:  CREATE CURSOR RESULTSET INSTRUCTION - null
1:  CREATE CURSOR RESULTSET INSTRUCTION - null
}
})


============================================================================
EXECUTING RaiseAccess

AFTER: 
Project(groups=[])
  Access(groups=[Joined_EBL.joined2])
    Source(groups=[Joined_EBL.joined2])


============================================================================
EXECUTING AssignOutputElements

AFTER: 
Project(groups=[], props={PROJECT_COLS=[Count], OUTPUT_COLS=[Count]})
  Access(groups=[Joined_EBL.joined2], props={SOURCE_HINT=null, OUTPUT_COLS=[Count]})
    Source(groups=[Joined_EBL.joined2], props={ATOMIC_REQUEST=INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345), VIRTUAL_COMMAND=INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345), PROCESSOR_PLAN=ForEach ProjectNode(0) output=[0, 'randomstring', 0, 12345] [0, 'randomstring', 0, 12345]

{
ProcedurePlan:
PROGRAM counter 0
0:  CREATE CURSOR RESULTSET INSTRUCTION - null
1:  CREATE CURSOR RESULTSET INSTRUCTION - null
}
, OUTPUT_COLS=[Count]})


============================================================================
EXECUTING CalculateCost

AFTER: 
Project(groups=[], props={PROJECT_COLS=[Count], OUTPUT_COLS=[Count], EST_CARDINALITY=-1.0})
  Access(groups=[Joined_EBL.joined2], props={SOURCE_HINT=null, OUTPUT_COLS=[Count], EST_CARDINALITY=-1.0})
    Source(groups=[Joined_EBL.joined2], props={ATOMIC_REQUEST=INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345), VIRTUAL_COMMAND=INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345), PROCESSOR_PLAN=ForEach ProjectNode(0) output=[0, 'randomstring', 0, 12345] [0, 'randomstring', 0, 12345]

{
ProcedurePlan:
PROGRAM counter 0
0:  CREATE CURSOR RESULTSET INSTRUCTION - null
1:  CREATE CURSOR RESULTSET INSTRUCTION - null
}
, OUTPUT_COLS=[Count], EST_CARDINALITY=-1.0})


============================================================================
EXECUTING PlanSorts

AFTER: 
Project(groups=[])
  Access(groups=[Joined_EBL.joined2])
    Source(groups=[Joined_EBL.joined2])


============================================================================
EXECUTING CollapseSource

AFTER: 
Project(groups=[])
  Access(groups=[Joined_EBL.joined2], props={SOURCE_HINT=null, OUTPUT_COLS=[Count], EST_CARDINALITY=-1.0, PROCESSOR_PLAN=ForEach ProjectNode(0) output=[0, 'randomstring', 0, 12345] [0, 'randomstring', 0, 12345]

{
ProcedurePlan:
PROGRAM counter 0
0:  CREATE CURSOR RESULTSET INSTRUCTION - null
1:  CREATE CURSOR RESULTSET INSTRUCTION - null
}
, ATOMIC_REQUEST=INSERT INTO Joined_EBL.joined2 (idtestm, randomstring, idtestp, randomint) VALUES (0, 'randomstring', 0, 12345)})


============================================================================
CONVERTING PLAN TREE TO PROCESS TREE

PROCESS PLAN = 
ProjectNode(3) output=[Count] [Count]
  PlanExecutionNode(4) output=[Count] 

============================================================================

----------------------------------------------------------------------------
OPTIMIZATION COMPLETE:
PROCESSOR PLAN:
ProjectNode(3) output=[Count] [Count]
  PlanExecutionNode(4) output=[Count] 

============================================================================

15:28:35,168 WARN  [com.arjuna.ats.arjuna] (Worker6_QueryProcessorQueue11) ARJUNA012140: Adding multiple last resources is disallowed. Trying to add LastResourceRecord(XAOnePhaseResource(LocalXAResourceImpl at 30de655c[connectionListener=2e08f520 connectionManager=43c6cf1b warned=false currentXid=< formatId=131077, gtrid_length=29, bqual_length=36, tx_uid=0:ffff0a193233:3e0fdfef:564b3504:4e6, node_name=1, branch_uid=0:ffff0a193233:3e0fdfef:564b3504:4e9, subordinatenodename=null, eis_name=java:/MySQL > productName=MySQL productVersion=5.7.9-log jndiName=java:/MySQL])), but already have LastResourceRecord(XAOnePhaseResource(LocalXAResourceImpl at 2feb480d[connectionListener=5ffe1d8f connectionManager=5d6721c warned=false currentXid=< formatId=131077, gtrid_length=29, bqual_length=36, tx_uid=0:ffff0a193233:3e0fdfef:564b3504:4e6, node_name=1, branch_uid=0:ffff0a193233:3e0fdfef:564b3504:4e8, subordinatenodename=null, eis_name=java:/Postgres > productName=PostgreSQL productVersion=9.4.5 jndiName=java:/Postgres]))
15:28:35,168 WARN  [org.teiid.CONNECTOR] (Worker6_QueryProcessorQueue11) Connector worker process failed for atomic-request=JhtkSya64lac.0.2.7: org.teiid.translator.TranslatorException: TEIID11009 java.sql.SQLException: javax.resource.ResourceException: IJ000457: Unchecked throwable in managedConnectionReconnected() cl=org.jboss.jca.core.connectionmanager.listener.TxConnectionListener at 2e08f520[state=NORMAL managed connection=org.jboss.jca.adapters.jdbc.local.LocalManagedConnection at 5ae2f6c0 connection handles=0 lastUse=1447792115168 trackByTx=false pool=org.jboss.jca.core.connectionmanager.pool.strategy.OnePool at 619899b3 pool internal context=SemaphoreArrayListManagedConnectionPool at 215a8198[pool=MySQL] xaResource=LocalXAResourceImpl at 30de655c[connectionListener=2e08f520 connectionManager=43c6cf1b warned=false currentXid=null productName=MySQL productVersion=5.7.9-log jndiName=java:/MySQL] txSync=null]
	at org.teiid.translator.jdbc.JDBCExecutionFactory.getConnection(JDBCExecutionFactory.java:290)
	at org.teiid.translator.jdbc.JDBCExecutionFactory.getConnection(JDBCExecutionFactory.java:57)
	at org.teiid.translator.ExecutionFactory.getConnection(ExecutionFactory.java:194) [teiid-api-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:293) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:298) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:135) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:369) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:136) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.BatchIterator.finalRow(BatchIterator.java:69) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.common.buffer.AbstractTupleSource.getCurrentTuple(AbstractTupleSource.java:70) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.BatchIterator.getCurrentTuple(BatchIterator.java:84) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.common.buffer.AbstractTupleSource.hasNext(AbstractTupleSource.java:92) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.proc.ProcedurePlan.executePlan(ProcedurePlan.java:568) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.proc.CreateCursorResultSetInstruction.process(CreateCursorResultSetInstruction.java:68) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.proc.ProcedurePlan.processProcedure(ProcedurePlan.java:360) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.proc.ProcedurePlan.nextBatchDirect(ProcedurePlan.java:287) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.proc.ProcedurePlan.nextBatch(ProcedurePlan.java:261) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.proc.ForEachRowPlan.nextBatch(ForEachRowPlan.java:148) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.relational.PlanExecutionNode.nextBatchDirect(PlanExecutionNode.java:118) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:146) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:136) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:159) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:141) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:444) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:326) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:254) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:274) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210) [teiid-engine-8.7.1.6_2-redhat-6.jar:8.7.1.6_2-redhat-6]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [rt.jar:1.8.0_66]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [rt.jar:1.8.0_66]
	at java.lang.Thread.run(Unknown Source) [rt.jar:1.8.0_66]
Caused by: java.sql.SQLException: javax.resource.ResourceException: IJ000457: Unchecked throwable in managedConnectionReconnected() cl=org.jboss.jca.core.connectionmanager.listener.TxConnectionListener at 2e08f520[state=NORMAL managed connection=org.jboss.jca.adapters.jdbc.local.LocalManagedConnection at 5ae2f6c0 connection handles=0 lastUse=1447792115168 trackByTx=false pool=org.jboss.jca.core.connectionmanager.pool.strategy.OnePool at 619899b3 pool internal context=SemaphoreArrayListManagedConnectionPool at 215a8198[pool=MySQL] xaResource=LocalXAResourceImpl at 30de655c[connectionListener=2e08f520 connectionManager=43c6cf1b warned=false currentXid=null productName=MySQL productVersion=5.7.9-log jndiName=java:/MySQL] txSync=null]
	at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:151)
	at org.teiid.translator.jdbc.JDBCExecutionFactory.getConnection(JDBCExecutionFactory.java:286)
	... 41 more
Caused by: javax.resource.ResourceException: IJ000457: Unchecked throwable in managedConnectionReconnected() cl=org.jboss.jca.core.connectionmanager.listener.TxConnectionListener at 2e08f520[state=NORMAL managed connection=org.jboss.jca.adapters.jdbc.local.LocalManagedConnection at 5ae2f6c0 connection handles=0 lastUse=1447792115168 trackByTx=false pool=org.jboss.jca.core.connectionmanager.pool.strategy.OnePool at 619899b3 pool internal context=SemaphoreArrayListManagedConnectionPool at 215a8198[pool=MySQL] xaResource=LocalXAResourceImpl at 30de655c[connectionListener=2e08f520 connectionManager=43c6cf1b warned=false currentXid=null productName=MySQL productVersion=5.7.9-log jndiName=java:/MySQL] txSync=null]
	at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:650) [ironjacamar-core-impl-1.0.32.Final-redhat-1.jar:1.0.32.Final-redhat-1]
	at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:513) [ironjacamar-core-impl-1.0.32.Final-redhat-1.jar:1.0.32.Final-redhat-1]
	at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:143)
	... 42 more
Caused by: javax.resource.ResourceException: IJ000461: Could not enlist in transaction on entering meta-aware object
	at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:490) [ironjacamar-core-impl-1.0.32.Final-redhat-1.jar:1.0.32.Final-redhat-1]
	at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.reconnectManagedConnection(AbstractConnectionManager.java:645) [ironjacamar-core-impl-1.0.32.Final-redhat-1.jar:1.0.32.Final-redhat-1]
	... 44 more
Caused by: javax.transaction.SystemException: IJ000356: Failed to enlist: java.lang.Throwable: Unabled to enlist resource, see the previous warnings. tx=TransactionImple < ac, BasicAction: 0:ffff0a193233:3e0fdfef:564b3504:4e6 status: ActionStatus.ABORT_ONLY >
	at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener$TransactionSynchronization.checkEnlisted(TxConnectionListener.java:669) [ironjacamar-core-impl-1.0.32.Final-redhat-1.jar:1.0.32.Final-redhat-1]
	at org.jboss.jca.core.connectionmanager.listener.TxConnectionListener.enlist(TxConnectionListener.java:368) [ironjacamar-core-impl-1.0.32.Final-redhat-1.jar:1.0.32.Final-redhat-1]
	at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.managedConnectionReconnected(TxConnectionManagerImpl.java:483) [ironjacamar-core-impl-1.0.32.Final-redhat-1.jar:1.0.32.Final-redhat-1]
	... 45 more

15:28:35,215 WARN  [org.teiid.PROCESSOR] (Worker6_QueryProcessorQueue11) TEIID30020 Processing exception for request JhtkSya64lac.0 'TEIID30504 MySQL: TEIID11009 java.sql.SQLException: javax.resource.ResourceException: IJ000457: Unchecked throwable in managedConnectionReconnected() cl=org.jboss.jca.core.connectionmanager.listener.TxConnectionListener at 2e08f520[state=NORMAL managed connection=org.jboss.jca.adapters.jdbc.local.LocalManagedConnection at 5ae2f6c0 connection handles=0 lastUse=1447792115168 trackByTx=false pool=org.jboss.jca.core.connectionmanager.pool.strategy.OnePool at 619899b3 pool internal context=SemaphoreArrayListManagedConnectionPool at 215a8198[pool=MySQL] xaResource=LocalXAResourceImpl at 30de655c[connectionListener=2e08f520 connectionManager=43c6cf1b warned=false currentXid=null productName=MySQL productVersion=5.7.9-log jndiName=java:/MySQL] txSync=null]'. Originally TeiidProcessingException 'IJ000356: Failed to enlist: java.lang.Throwable: Unabled to enlist resource, see the previous warnings. tx=TransactionImple < ac, BasicAction: 0:ffff0a193233:3e0fdfef:564b3504:4e6 status: ActionStatus.ABORT_ONLY >' TxConnectionListener.java:669. Enable more detailed logging to see the entire stacktrace.
15:28:45,972 WARN  [org.teiid.SECURITY] (New I/O worker #8) TEIID40011 Processing exception 'TEIID40042 Invalid Session 8nYZ1OEnH7f5. Session may have already been terminated.' for session null.  Exception type org.teiid.client.security.InvalidSessionException thrown from org.teiid.services.SessionServiceImpl.getSessionInfo(SessionServiceImpl.java:365). Enable more detailed logging to see the entire stacktrace.
15:28:45,972 WARN  [org.teiid.SECURITY] (New I/O worker #8) TEIID40011 Processing exception 'TEIID40042 Invalid Session mlYV0yM22Klq. Session may have already been terminated.' for session null.  Exception type org.teiid.client.security.InvalidSessionException thrown from org.teiid.services.SessionServiceImpl.getSessionInfo(SessionServiceImpl.java:365). Enable more detailed logging to see the entire stacktrace.
{code}

> multi-source view insert throwing TEIID30492 error
> --------------------------------------------------
>
>                 Key: TEIID-3827
>                 URL: https://issues.jboss.org/browse/TEIID-3827
>             Project: Teiid
>          Issue Type: Bug
>    Affects Versions: 8.7.3
>         Environment: Red Hat JBoss Data Virtualization 6.2 on EAP6.4.0 patched to version 6.4.3, 
> JBoss Developer Studio 8.1.0GA with Teiid Designer plugin 9.0.3.Final.v20150810-1438-B1157
> MySQL 5.7 and Postgres 9.4
> 64-bit Windows 7 environment
>            Reporter: Steve Tran
>            Assignee: Steven Hawkins
>
> I'm trying to POC this multi-source INSERT.  I have a MySQL DB and Postgres DB on my local machine.  Added the drivers, datasource, and created a VBL with 1:1 mapping to my test tables.  I created an EBL that is a join of my two tables.  Both VBLs and EBL are set to support updates.  I'm trying to work through this error.  
> {quote}
> insert into "Joined_EBL"."joined2"(idtestm, randomstring, idtestp, randomint) values(0, 'randomstring', 0, 12345)
> org.teiid.runtime.client.TeiidClientException: org.teiid.api.exception.query.QueryValidatorException: Remote TEIID30492 A multi-source table, Joined_EBL.joined2, cannot be used in an INSERT with query expression or SELECT INTO statement.
> {quote}
> I updated my INSERT tab on the EBL transformation page with the following.
> {code}FOR EACH ROW
> BEGIN ATOMIC
> INSERT INTO Postgres_VBL.testp (Postgres_VBL.testp.idtestp, Postgres_VBL.testp.randomint) VALUES (0, "NEW".randomint);
> INSERT INTO MySQL_VBL.testm (MySQL_VBL.testm.idtestm, MySQL_VBL.testm.randomstring) VALUES (0, "NEW".randomstring);
> END
> {code}
> Postgres table
> {code}
> CREATE TABLE testp
> (
> idtestp integer NOT NULL,
> randomint integer,
> CONSTRAINT pk_id PRIMARY KEY (idtestp)
> )
> WITH (
> OIDS=FALSE
> );
> ALTER TABLE testp
> OWNER TO postgres;
> {code}
> MySQL table
> {code}
> CREATE TABLE `testm` (
> `idtestm` int(11) NOT NULL AUTO_INCREMENT,
> `randomstring` varchar(45) DEFAULT NULL,
> PRIMARY KEY (`idtestm`),
> UNIQUE KEY `idtestm_UNIQUE` (`idtestm`)
> ) ENGINE=InnoDB DEFAULT CHARSET=tis620;
> {code}



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



More information about the teiid-issues mailing list