You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Khurram Faraaz (JIRA)" <ji...@apache.org> on 2015/03/17 18:07:40 UTC

[jira] [Created] (DRILL-2481) Querying individual column from view results in AssertionError

Khurram Faraaz created DRILL-2481:
-------------------------------------

             Summary: Querying individual column from view results in AssertionError
                 Key: DRILL-2481
                 URL: https://issues.apache.org/jira/browse/DRILL-2481
             Project: Apache Drill
          Issue Type: Bug
          Components: Query Planning & Optimization
    Affects Versions: 0.8.0
            Reporter: Khurram Faraaz
            Assignee: Jinfeng Ni


Querying an individual column from a view results in an AssertionError
Data used was from a csv file, its content was a single row (pls see below)

1,John Doe,HR,5000,Software Engineer 

{code }

0: jdbc:drill:> use dfs.tmp;
+------------+------------+
|     ok     |  summary   |
+------------+------------+
| true       | Default schema changed to 'dfs.tmp' |
+------------+------------+
1 row selected (0.188 seconds)

0: jdbc:drill:> create view v1 as select * from `employee.csv` union all select * from `employee.csv`;
+------------+------------+
|     ok     |  summary   |
+------------+------------+
| true       | View 'v1' created successfully in 'dfs.tmp' schema |
+------------+------------+
1 row selected (0.073 seconds)
0: jdbc:drill:> create view v2 as select * from `employee.csv` union all select * from `employee.csv`;
+------------+------------+
|     ok     |  summary   |
+------------+------------+
| true       | View 'v2' created successfully in 'dfs.tmp' schema |
+------------+------------+
1 row selected (0.046 seconds)
0: jdbc:drill:> select * from v1;
+------------+
|  columns   |
+------------+
| ["1","John Doe","HR","5000","Software Engineer"] |
| ["1","John Doe","HR","5000","Software Engineer"] |
+------------+
2 rows selected (0.087 seconds)
0: jdbc:drill:> select * from v2;
+------------+
|  columns   |
+------------+
| ["1","John Doe","HR","5000","Software Engineer"] |
| ["1","John Doe","HR","5000","Software Engineer"] |
+------------+
2 rows selected (0.075 seconds)


0: jdbc:drill:> describe v1;
+-------------+------------+-------------+
| COLUMN_NAME | DATA_TYPE  | IS_NULLABLE |
+-------------+------------+-------------+
| *           | ANY        | NO          |
+-------------+------------+-------------+
1 row selected (0.084 seconds)
0: jdbc:drill:> describe v2;
+-------------+------------+-------------+
| COLUMN_NAME | DATA_TYPE  | IS_NULLABLE |
+-------------+------------+-------------+
| *           | ANY        | NO          |
+-------------+------------+-------------+
1 row selected (0.083 seconds)

0: jdbc:drill:> select columns[0] from v1;
Query failed: AssertionError: ANY

Error: exception while executing query: Failure while executing query. (state=,code=0)

{code}

{code}
Stack trace from driblet.log

2015-03-17 16:40:43,176 [2af7a6f3-bbcf-3a34-dfae-5b5bb11ff4a9:foreman] INFO  o.a.d.e.s.schedule.BlockMapBuilder - Get block maps: Executed 1 out of 1 using 1 threads. Time: 1ms total, 1.060851ms avg, 1ms max.
2015-03-17 16:40:43,178 [2af7a6f3-bbcf-3a34-dfae-5b5bb11ff4a9:foreman] INFO  o.a.drill.exec.work.foreman.Foreman - State change requested.  PENDING --> FAILED
org.apache.drill.exec.work.foreman.ForemanException: Unexpected exception during fragment initialization: ANY
        at org.apache.drill.exec.work.foreman.Foreman.run(Foreman.java:195) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.work.WorkManager$RunnableWrapper.run(WorkManager.java:303) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_75]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_75]
        at java.lang.Thread.run(Thread.java:745) [na:1.7.0_75]
Caused by: java.lang.AssertionError: ANY
        at org.eigenbase.reltype.RelDataTypeImpl.getFieldCount(RelDataTypeImpl.java:114) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.relopt.RelOptUtil$2.size(RelOptUtil.java:143) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.rex.RexChecker.visitInputRef(RexChecker.java:111) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.rex.RexChecker.visitInputRef(RexChecker.java:55) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.rex.RexInputRef.accept(RexInputRef.java:103) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.rex.RexChecker.visitCall(RexChecker.java:136) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.rex.RexChecker.visitCall(RexChecker.java:55) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.rex.RexCall.accept(RexCall.java:106) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.rex.RexChecker.visitCall(RexChecker.java:136) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.rex.RexChecker.visitCall(RexChecker.java:55) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.rex.RexCall.accept(RexCall.java:106) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.rel.ProjectRelBase.isValid(ProjectRelBase.java:156) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.rel.ProjectRelBase.<init>(ProjectRelBase.java:82) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.apache.drill.exec.planner.common.DrillProjectRelBase.<init>(DrillProjectRelBase.java:54) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.planner.logical.DrillProjectRel.<init>(DrillProjectRel.java:47) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.planner.logical.DrillProjectRel.copy(DrillProjectRel.java:53) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.eigenbase.rel.ProjectRelBase.copy(ProjectRelBase.java:99) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.relopt.volcano.RelSubset$CheapestPlanReplacer.visit(RelSubset.java:472) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.relopt.volcano.RelSubset.buildCheapestPlan(RelSubset.java:287) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.eigenbase.relopt.volcano.VolcanoPlanner.findBestExp(VolcanoPlanner.java:677) ~[optiq-core-0.9-drill-r20.jar:na]
        at net.hydromatic.optiq.tools.Programs$RuleSetProgram.run(Programs.java:165) ~[optiq-core-0.9-drill-r20.jar:na]
        at net.hydromatic.optiq.prepare.PlannerImpl.transform(PlannerImpl.java:275) ~[optiq-core-0.9-drill-r20.jar:na]
        at org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.convertToDrel(DefaultSqlHandler.java:206) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.planner.sql.handlers.DefaultSqlHandler.getPlan(DefaultSqlHandler.java:138) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.planner.sql.DrillSqlWorker.getPlan(DrillSqlWorker.java:145) ~[drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.work.foreman.Foreman.runSQL(Foreman.java:509) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        at org.apache.drill.exec.work.foreman.Foreman.run(Foreman.java:186) [drill-java-exec-0.8.0-SNAPSHOT-rebuffed.jar:0.8.0-SNAPSHOT]
        ... 4 common frames omitted

{code}

{code}
0: jdbc:drill:> select * from sys.version;
+------------+----------------+-------------+-------------+------------+
| commit_id  | commit_message | commit_time | build_email | build_time |
+------------+----------------+-------------+-------------+------------+
| f658a3c513ddf7f2d1b0ad7aa1f3f65049a594fe | DRILL-2209 Insert ProjectOperator with MuxExchange | 09.03.2015 @ 01:49:18 EDT | Unknown     | 09.03.2015 @ 04:50:05 EDT |
+------------+----------------+-------------+-------------+------------+
1 row selected (0.044 seconds)
{code}



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