[ https://issues.apache.org/jira/browse/DRILL-1893?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Parth Chandra updated DRILL-1893: --------------------------------- Assignee: Mehant Baid (was: Jacques Nadeau) > VectorContainer.add(VectorContainer.java:188) Assert > ---------------------------------------------------- > > Key: DRILL-1893 > URL: https://issues.apache.org/jira/browse/DRILL-1893 > Project: Apache Drill > Issue Type: Bug > Components: Execution - Data Types > Affects Versions: 0.7.0 > Reporter: Chun Chang > Assignee: Mehant Baid > Fix For: 0.8.0 > > > #Tue Dec 16 13:28:01 EST 2014 > git.commit.id.abbrev=3b0ff5d > Have a json record looks like this (actual dataset is too big to attach here): > {code} > { "id":2, > "ooos": { > "oa": { > "oab": { > "oabc": "ooos string 2" > } > } > } > } > {code} > The following query causes assertion: > {code} > SELECT t.id, > t.ooos, > t.ooos.oa.oab.oabc > FROM `complex.json` t > WHERE Length(t.ooos.oa.oab.oabc) < 14 > OR Length(t.ooos.oa.oab.oabc) > 16 > ORDER BY t.ooos.oa.oab.oabc > LIMIT 50; > {code} > {code} > 0: jdbc:drill:schema=dfs.drillTestDirComplexJ> select t.id, t.ooos, > t.ooos.oa.oab.oabc from `complex.json` t where length(t.ooos.oa.oab.oabc) < > 14 or length(t.ooos.oa.oab.oabc) > 16 order by t.ooos.oa.oab.oabc limit 50; > +------------+------------+------------+ > | id | ooos | EXPR$2 | > +------------+------------+------------+ > Query failed: Query failed: Failure while running fragment.[ > d4b0530c-1f06-4b72-9836-07e181adaef1 on qa-node119.qa.lab:31010 ] > [ d4b0530c-1f06-4b72-9836-07e181adaef1 on qa-node119.qa.lab:31010 ] > java.lang.RuntimeException: java.sql.SQLException: Failure while executing > query. > at sqlline.SqlLine$IncrementalRows.hasNext(SqlLine.java:2514) > at sqlline.SqlLine$TableOutputFormat.print(SqlLine.java:2148) > at sqlline.SqlLine.print(SqlLine.java:1809) > at sqlline.SqlLine$Commands.execute(SqlLine.java:3766) > at sqlline.SqlLine$Commands.sql(SqlLine.java:3663) > at sqlline.SqlLine.dispatch(SqlLine.java:889) > at sqlline.SqlLine.begin(SqlLine.java:763) > at sqlline.SqlLine.start(SqlLine.java:498) > at sqlline.SqlLine.main(SqlLine.java:460) > {code} > Here is the stack trace: > {code} > 2014-12-18 14:40:02,615 [2b6ca84c-100a-9bb2-4d32-6798494f13ec:frag:1:3] WARN > o.a.d.e.w.fragment.FragmentExecutor - Error while initializing or executing > fragment > java.lang.AssertionError: null > at > org.apache.drill.exec.record.VectorContainer.add(VectorContainer.java:188) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.VectorContainer.addHyperList(VectorContainer.java:81) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.sort.SortRecordBatchBuilder.build(SortRecordBatchBuilder.java:196) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.TopN.TopNBatch.purge(TopNBatch.java:299) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.TopN.TopNBatch.innerNext(TopNBatch.java:228) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:142) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:118) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:99) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:89) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.AbstractSingleRecordBatch.innerNext(AbstractSingleRecordBatch.java:51) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.svremover.RemovingRecordBatch.innerNext(RemovingRecordBatch.java:96) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:142) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:118) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:67) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.SingleSenderCreator$SingleSenderRootExec.innerNext(SingleSenderCreator.java:97) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:57) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:114) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.work.WorkManager$RunnableWrapper.run(WorkManager.java:254) > [drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > [na:1.7.0_45] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > [na:1.7.0_45] > at java.lang.Thread.run(Thread.java:744) [na:1.7.0_45] > 2014-12-18 14:40:02,615 [2b6ca84c-100a-9bb2-4d32-6798494f13ec:frag:1:3] ERROR > o.a.drill.exec.ops.FragmentContext - Fragment Context received failure. > java.lang.AssertionError: null > at > org.apache.drill.exec.record.VectorContainer.add(VectorContainer.java:188) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.VectorContainer.addHyperList(VectorContainer.java:81) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.sort.SortRecordBatchBuilder.build(SortRecordBatchBuilder.java:196) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.TopN.TopNBatch.purge(TopNBatch.java:299) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.TopN.TopNBatch.innerNext(TopNBatch.java:228) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:142) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:118) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:99) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:89) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.AbstractSingleRecordBatch.innerNext(AbstractSingleRecordBatch.java:51) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.svremover.RemovingRecordBatch.innerNext(RemovingRecordBatch.java:96) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:142) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:118) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:67) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.SingleSenderCreator$SingleSenderRootExec.innerNext(SingleSenderCreator.java:97) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:57) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:114) > ~[drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > org.apache.drill.exec.work.WorkManager$RunnableWrapper.run(WorkManager.java:254) > [drill-java-exec-0.7.0-SNAPSHOT-rebuffed.jar:0.7.0-SNAPSHOT] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) > [na:1.7.0_45] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) > [na:1.7.0_45] > at java.lang.Thread.run(Thread.java:744) [na:1.7.0_45] > {code} > Physical plan: > {code} > 0: jdbc:drill:schema=dfs.drillTestDirComplexJ> explain plan for select t.id, > t.ooos, t.ooos.oa.oab.oabc from `complex.json` t where > length(t.ooos.oa.oab.oabc) < 14 or length(t.ooos.oa.oab.oabc) > 16 order by > t.ooos.oa.oab.oabc limit 50; > +------------+------------+ > | text | json | > +------------+------------+ > | 00-00 Screen > 00-01 Project(id=[$0], ooos=[$1], EXPR$2=[$2]) > 00-02 SelectionVectorRemover > 00-03 Limit(fetch=[50]) > 00-04 SingleMergeExchange(sort0=[2 ASC]) > 01-01 SelectionVectorRemover > 01-02 TopN(limit=[50]) > 01-03 HashToRandomExchange(dist0=[[$2]]) > 02-01 Project(id=[$1], ooos=[$0], EXPR$2=[$2]) > 02-02 SelectionVectorRemover > 02-03 Filter(condition=[OR(<(LENGTH($2), 14), > >(LENGTH($2), 16))]) > 02-04 Project(ooos=[$0], id=[$1], > ITEM=[ITEM(ITEM(ITEM($0, 'oa'), 'oab'), 'oabc')]) > 02-05 Scan(groupscan=[EasyGroupScan > [selectionRoot=/drill/testdata/complex_type/json/complex.json, numFiles=1, > columns=[`ooos`, `id`, `ooos`.`oa`.`oab`.`oabc`], > files=[maprfs:/drill/testdata/complex_type/json/complex.json]]]) > | { > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)