[
https://issues.jboss.org/browse/TEIID-5564?page=com.atlassian.jira.plugin...
]
Steven Hawkins updated TEIID-5564:
----------------------------------
Description:
For a sufficiently large temp operation, such as a merge over 2.5 million rows, you can
see:
java.lang.AssertionError: Batch not found in storage 58804
at
org.teiid.common.buffer.impl.BufferManagerImpl$BatchManagerImpl.getBatch(BufferManagerImpl.java:382)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.common.buffer.SPage.getValues(SPage.java:240)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.common.buffer.SPage.search(SPage.java:139)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.common.buffer.STree.find(STree.java:249)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.common.buffer.STree.remove(STree.java:429)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.query.tempdata.TempTable.deleteTuple(TempTable.java:802)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.query.tempdata.TempTable.access$500(TempTable.java:83)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at
org.teiid.query.tempdata.TempTable$InsertUpdateProcessor.undo(TempTable.java:159)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
Which occurs during undo/rollback of an operation and masks the underlying exception. The
actual error will typically be the same as TEIID-5439, the proactive removal of the
managed batches once a space limit has been reached.
This did not occur after the TEIID-5439 fix upstream, but it appears it could have still
occurred - and did occur on 8.12.x.
was:
For a sufficiently large materialization, such as 33000000 rows by 10 columns of
biginteger/string types, the load will not complete and instead produce an exception:
{code}
ERROR: TEIID30019 Unexpected exception for request yGKKEfVoiD5O.0
org.teiid.core.TeiidRuntimeException: Batch removed
at org.teiid.query.tempdata.TempTableDataManager.rethrow(TempTableDataManager.java:880)
at
org.teiid.query.tempdata.TempTableDataManager.access$800(TempTableDataManager.java:92)
at org.teiid.query.tempdata.TempTableDataManager$4.load(TempTableDataManager.java:625)
at
org.teiid.query.tempdata.TempTableDataManager$4.createTupleSource(TempTableDataManager.java:548)
at
org.teiid.query.tempdata.TempTableDataManager$ProxyTupleSource.nextTuple(TempTableDataManager.java:108)
at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:401)
at
org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
at
org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:141)
at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:148)
at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:111)
at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:160)
at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:142)
at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:492)
{code}
Batch removed during large temp table load
------------------------------------------
Key: TEIID-5564
URL:
https://issues.jboss.org/browse/TEIID-5564
Project: Teiid
Issue Type: Bug
Components: Query Engine
Reporter: Steven Hawkins
Assignee: Steven Hawkins
Priority: Major
Fix For: 12.0, 11.2.2
For a sufficiently large temp operation, such as a merge over 2.5 million rows, you can
see:
java.lang.AssertionError: Batch not found in storage 58804
at
org.teiid.common.buffer.impl.BufferManagerImpl$BatchManagerImpl.getBatch(BufferManagerImpl.java:382)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.common.buffer.SPage.getValues(SPage.java:240)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.common.buffer.SPage.search(SPage.java:139)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.common.buffer.STree.find(STree.java:249)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.common.buffer.STree.remove(STree.java:429)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.query.tempdata.TempTable.deleteTuple(TempTable.java:802)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at org.teiid.query.tempdata.TempTable.access$500(TempTable.java:83)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
at
org.teiid.query.tempdata.TempTable$InsertUpdateProcessor.undo(TempTable.java:159)
[teiid-engine-8.12.16.6_4-redhat-64-2.jar:8.12.16.6_4-redhat-64-2]
Which occurs during undo/rollback of an operation and masks the underlying exception.
The actual error will typically be the same as TEIID-5439, the proactive removal of the
managed batches once a space limit has been reached.
This did not occur after the TEIID-5439 fix upstream, but it appears it could have still
occurred - and did occur on 8.12.x.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)