[ 
https://issues.apache.org/jira/browse/DRILL-2094?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Rahul Challapalli reopened DRILL-2094:
--------------------------------------

The below query is still failing :
{code}
select s.id from (select id from `non-flatten1.json` order by list[0]) s;
{code}

Below is the error from the logs :
{code}
 org.apache.drill.exec.work.foreman.ForemanException: Unexpected exception 
during fragment initialization: -1
        at org.apache.drill.exec.work.foreman.Foreman.run(Foreman.java:210) 
[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
[na:1.7.0_71]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
[na:1.7.0_71]
        at java.lang.Thread.run(Thread.java:745) [na:1.7.0_71]
 Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
        at org.eigenbase.rex.RexProgram.deduceCollations(RexProgram.java:564) 
~[optiq-core-0.9-drill-r21.jar:na]
        at org.eigenbase.rex.RexProgram.getCollations(RexProgram.java:533) 
~[optiq-core-0.9-drill-r21.jar:na]
        at org.eigenbase.rel.CalcRel.createProject(CalcRel.java:146) 
~[optiq-core-0.9-drill-r21.jar:na]
        at org.eigenbase.rel.CalcRel.createProject(CalcRel.java:88) 
~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.eigenbase.sql2rel.SqlToRelConverter.convertSelectList(SqlToRelConverter.java:3319)
 ~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.eigenbase.sql2rel.SqlToRelConverter.convertSelectImpl(SqlToRelConverter.java:519)
 ~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.eigenbase.sql2rel.SqlToRelConverter.convertSelect(SqlToRelConverter.java:474)
 ~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.eigenbase.sql2rel.SqlToRelConverter.convertQueryRecursive(SqlToRelConverter.java:2657)
 ~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.eigenbase.sql2rel.SqlToRelConverter.convertQuery(SqlToRelConverter.java:432)
 ~[optiq-core-0.9-drill-r21.jar:na]
        at 
net.hydromatic.optiq.prepare.PlannerImpl.convert(PlannerImpl.java:190) 
~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.convertToRel(DefaultSqlHandler.java:166)
 ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan(DefaultSqlHandler.java:133)
 ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
org.apache.drill.exec.planner.sql.DrillSqlWorker.getPlan(DrillSqlWorker.java:154)
 ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.work.foreman.Foreman.runSQL(Foreman.java:769) 
[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.work.foreman.Foreman.run(Foreman.java:201) 
[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        ... 3 common frames omitted
 2015-04-22 00:38:22,183 [2ac91281-0a46-1dfa-ad31-4a2b76a1a6f0:foreman] INFO  
o.a.drill.exec.work.foreman.Foreman - foreman cleaning up.
 2015-04-22 00:38:22,184 [2ac91281-0a46-1dfa-ad31-4a2b76a1a6f0:foreman] ERROR 
o.a.d.c.e.DrillRuntimeException - SYSTEM ERROR: Unexpected exception during 
fragment initialization: -1
 
 
 [16a660b3-fcd4-4642-b6bf-dfb30c1570d8 on qa-node190.qa.lab:31010]
 org.apache.drill.common.exceptions.UserException: SYSTEM ERROR: Unexpected 
exception during fragment initialization: -1
 
 
 [16a660b3-fcd4-4642-b6bf-dfb30c1570d8 on qa-node190.qa.lab:31010]
        at 
org.apache.drill.common.exceptions.UserException$Builder.build(UserException.java:465)
 ~[drill-common-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
org.apache.drill.exec.work.foreman.Foreman$ForemanResult.close(Foreman.java:616)
 [drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
org.apache.drill.exec.work.foreman.Foreman$StateSwitch.processEvent(Foreman.java:713)
 [drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
org.apache.drill.exec.work.foreman.Foreman$StateSwitch.processEvent(Foreman.java:655)
 [drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
org.apache.drill.common.EventProcessor.sendEvent(EventProcessor.java:73) 
[drill-common-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
org.apache.drill.exec.work.foreman.Foreman$StateSwitch.moveToState(Foreman.java:657)
 [drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
org.apache.drill.exec.work.foreman.Foreman.moveToState(Foreman.java:758) 
[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.work.foreman.Foreman.run(Foreman.java:210) 
[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
[na:1.7.0_71]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
[na:1.7.0_71]
        at java.lang.Thread.run(Thread.java:745) [na:1.7.0_71]
 Caused by: org.apache.drill.exec.work.foreman.ForemanException: Unexpected 
exception during fragment initialization: -1
        ... 4 common frames omitted
 Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
        at org.eigenbase.rex.RexProgram.deduceCollations(RexProgram.java:564) 
~[optiq-core-0.9-drill-r21.jar:na]
        at org.eigenbase.rex.RexProgram.getCollations(RexProgram.java:533) 
~[optiq-core-0.9-drill-r21.jar:na]
        at org.eigenbase.rel.CalcRel.createProject(CalcRel.java:146) 
~[optiq-core-0.9-drill-r21.jar:na]
        at org.eigenbase.rel.CalcRel.createProject(CalcRel.java:88) 
~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.eigenbase.sql2rel.SqlToRelConverter.convertSelectList(SqlToRelConverter.java:3319)
 ~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.eigenbase.sql2rel.SqlToRelConverter.convertSelectImpl(SqlToRelConverter.java:519)
 ~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.eigenbase.sql2rel.SqlToRelConverter.convertSelect(SqlToRelConverter.java:474)
 ~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.eigenbase.sql2rel.SqlToRelConverter.convertQueryRecursive(SqlToRelConverter.java:2657)
 ~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.eigenbase.sql2rel.SqlToRelConverter.convertQuery(SqlToRelConverter.java:432)
 ~[optiq-core-0.9-drill-r21.jar:na]
        at 
net.hydromatic.optiq.prepare.PlannerImpl.convert(PlannerImpl.java:190) 
~[optiq-core-0.9-drill-r21.jar:na]
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.convertToRel(DefaultSqlHandler.java:166)
 ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan(DefaultSqlHandler.java:133)
 ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at 
org.apache.drill.exec.planner.sql.DrillSqlWorker.getPlan(DrillSqlWorker.java:154)
 ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.work.foreman.Foreman.runSQL(Foreman.java:769) 
[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.work.foreman.Foreman.run(Foreman.java:201) 
[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        ... 3 common frames omitted
{code}

> Drill has problems with reading json fields when used in a subquery
> -------------------------------------------------------------------
>
>                 Key: DRILL-2094
>                 URL: https://issues.apache.org/jira/browse/DRILL-2094
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Query Planning & Optimization
>            Reporter: Rahul Challapalli
>            Assignee: Sean Hsuan-Yi Chu
>             Fix For: 0.9.0
>
>         Attachments: DRILL-2094.1.patch
>
>
> git.commit.id.abbrev=3e33880
> Data Set :
> {code}
> {
>   "id" : 1,
>   "list" : [1,2]
> }
> {code} 
> The below query works
> {code}
> 0: jdbc:drill:schema=dfs.drillTestDir> select id from `temp1.json` order by 
> list[0];
> +------------+
> |     id     |
> +------------+
> | 1          |
> +------------+
> 1 row selected (0.146 seconds)
> {code}
> However when I used the same exact query as part of a sub-query, I get an 
> error from drill
> {code}
> 0: jdbc:drill:schema=dfs.drillTestDir> select s.id from (select id from 
> `temp1.json` order by list[0]) s;
> Query failed: SqlValidatorException: Table 'list' not found
> Error: exception while executing query: Failure while executing query. 
> (state=,code=0)
> {code}
> Explain plan also does not work and it returns the same problem



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to