[teiid-issues] [JBoss JIRA] (TEIID-2776) ArrayIndexOutOfBoundsException

Steven Hawkins (JIRA) issues at jboss.org
Mon Dec 16 07:32:35 EST 2013


     [ https://issues.jboss.org/browse/TEIID-2776?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Steven Hawkins updated TEIID-2776:
----------------------------------

    Fix Version/s: 8.6
         Priority: Critical  (was: Major)


The issue here is that the value accumulator trees are keyed by id, but that is explicit in their construction.  This is not noticed however as long as the accumulated batches are not persisted - if they are, the tuples are effectively shortened and an exception such as this arises.  Thanks for catching this in time for 8.6 Final.
                
> ArrayIndexOutOfBoundsException
> ------------------------------
>
>                 Key: TEIID-2776
>                 URL: https://issues.jboss.org/browse/TEIID-2776
>             Project: Teiid
>          Issue Type: Bug
>    Affects Versions: 8.5
>            Reporter: Bram Gadeyne
>            Assignee: Steven Hawkins
>            Priority: Critical
>              Labels: exception, teiid
>             Fix For: 8.6
>
>
> When executing the following query:
> insert into #tmp_labres
> select f.patientid as admissionid, f.variableid, f.sampledate, f.value, f.stringvalue, f.status
> from (
> 	select v.*, rank() over(partition by v.patientid,v.VariableID, v.sampledate order by v.SampleTime,v.resultno desc) as resultrank
> 	from #tmp_labrestimecast v
> ) f
> where f.resultrank = 1;
> I get and ArrayIndexOutOfBoundsException. In the logs it only says "11:31:44,537 ERROR [org.teiid.PROCESSOR] (Worker15031_QueryProcessorQueue278439) yfgMWpMOgQdg TEIID30019 Unexpected exception for request yfgMWpMOgQdg.43: java.lang.ArrayIndexOutOfBoundsException
> " 
> A few log entries before this I find a stack trace for an ArrayIndexOutOfBoundsException. Since I have executed this query multiple times I think it's a stack trace for the same query. I suppose this has something to do with the rank function. A normal select on #tmp_labrestimecast works without a problem.
> 16:25:39,765 ERROR [org.teiid.PROCESSOR] (Worker13352_QueryProcessorQueue214542) 90UM8pskkEDH TEIID30019 Unexpected exception for request 90UM8pskkEDH.255: java.lang.ArrayIndexOutOfBoundsException: 1
>         at java.util.Arrays$ArrayList.get(Arrays.java:2866) [rt.jar:1.7.0_25]
>         at org.teiid.query.processor.relational.WindowFunctionProjectNode.nextBatchDirect(WindowFunctionProjectNode.java:270) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:146) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.relational.SelectNode.nextBatchDirect(SelectNode.java:104) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:146) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.relational.ProjectIntoNode.nextBatchDirect(ProjectIntoNode.java:138) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:136) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:155) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:435) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:320) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:248) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:269) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:214) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_25]
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_25]
>         at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira


More information about the teiid-issues mailing list