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/04/07 02:04:12 UTC

[jira] [Created] (DRILL-2704) Schema change not reported in Union All query

Khurram Faraaz created DRILL-2704:
-------------------------------------

             Summary: Schema change not reported in Union All query
                 Key: DRILL-2704
                 URL: https://issues.apache.org/jira/browse/DRILL-2704
             Project: Apache Drill
          Issue Type: Bug
          Components: Query Planning & Optimization
    Affects Versions: 0.9.0
         Environment: 4 node cluster on CentOS 
            Reporter: Khurram Faraaz
            Assignee: Jinfeng Ni


Schema change is not reported in Union All query. Inputs to Union All read from CSV file.

{code}
0: jdbc:drill:> select columns[0] from `f1.csv` where columns[0] = 13 union all select columns[0] from `f2.csv` where columns[0] = 100000;
Query failed: RemoteRpcException: Failure while running fragment., 99999.99 [ a80303f5-781c-4288-875e-90ad60c8caac on centos-02.qa.lab:31010 ]
[ a80303f5-781c-4288-875e-90ad60c8caac on centos-02.qa.lab:31010 ]


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

0: jdbc:drill:> select * from `f1.csv`;
+------------+
|  columns   |
+------------+
| ["1"]      |
| ["2"]      |
| ["55"]     |
| ["77"]     |
| ["-1000000"] |
| ["13"]     |
| ["17"]     |
| ["19"]     |
| ["2"]      |
| ["10000000"] |
| ["999999"] |
| ["99999.99"] |
| ["12345.987"] |
| ["Hello World"] |
| ["this is a test string"] |
| ["foobar"] |
| []         |
| ["new string"] |
| ["34534534"] |
| ["345345"] |
| ["2321312"] |
| ["67867867"] |
| ["112319089"] |
| ["-14695967"] |
| ["100"]    |
| ["99"]     |
| ["7"]      |
| ["5"]      |
| ["13"]     |
| []         |
| []         |
| []         |
| ["0"]      |
| ["1"]      |
| ["-1"]     |
| null       |
| null       |
| null       |
| null       |
+------------+
39 rows selected (0.16 seconds)
0: jdbc:drill:> select * from `f2.csv`;
+------------+
|  columns   |
+------------+
| ["1"]      |
| ["0"]      |
| ["-1"]     |
| ["999999"] |
| ["10000000"] |
| ["100000"] |
| ["-13"]    |
| ["-17"]    |
| ["19"]     |
| ["17"]     |
| ["13"]     |
| []         |
| ["no way"] |
| ["good quality"] |
| []         |
| ["done!"]  |
| ["Yay!!!"] |
| null       |
+------------+
18 rows selected (0.128 seconds)

Casting columns[0] to varchar gives correct results

0: jdbc:drill:> select cast(columns[0] as varchar(100)) from `f1.csv` where columns[0] = '13' union all select cast(columns[0] as varchar(100)) from `f2.csv` where columns[0] = '100000';
+------------+
|   EXPR$0   |
+------------+
| 13         |
| 13         |
| 100000     |
+------------+
3 rows selected (0.474 seconds)

Stack trace from drillbit.log for failing query

2015-04-06 23:31:43,674 [2adce8a0-24c8-58ad-2f46-30c42a33ef2a:frag:0:0] ERROR o.a.d.e.w.f.AbstractStatusReporter - Error a4ec50e8-88ea-4474-9a36-b2250f34e340: Failure while running fragment.
java.lang.NumberFormatException: 99999.99
        at org.apache.drill.exec.expr.fn.impl.StringFunctionHelpers.nfeI(StringFunctionHelpers.java:96) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.expr.fn.impl.StringFunctionHelpers.varCharToInt(StringFunctionHelpers.java:121) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.test.generated.FiltererGen37.doEval(FilterTemplate2.java:42) ~[na:na]
        at org.apache.drill.exec.test.generated.FiltererGen37.filterBatchNoSV(FilterTemplate2.java:98) ~[na:na]
        at org.apache.drill.exec.test.generated.FiltererGen37.filterBatch(FilterTemplate2.java:71) ~[na:na]
        at org.apache.drill.exec.physical.impl.filter.FilterRecordBatch.doWork(FilterRecordBatch.java:82) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractSingleRecordBatch.innerNext(AbstractSingleRecordBatch.java:93) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:142) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:118) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:99) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:89) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractSingleRecordBatch.innerNext(AbstractSingleRecordBatch.java:51) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.svremover.RemovingRecordBatch.innerNext(RemovingRecordBatch.java:96) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:142) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:118) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:99) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:89) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractSingleRecordBatch.innerNext(AbstractSingleRecordBatch.java:51) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.project.ProjectRecordBatch.innerNext(ProjectRecordBatch.java:134) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:142) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:118) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:99) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:89) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.union.UnionAllRecordBatch$UnionAllInput$OneSideInput.nextBatch(UnionAllRecordBatch.java:452) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.union.UnionAllRecordBatch$UnionAllInput.nextBatch(UnionAllRecordBatch.java:295) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.union.UnionAllRecordBatch.innerNext(UnionAllRecordBatch.java:102) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.record.AbstractRecordBatch.next(AbstractRecordBatch.java:142) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.validate.IteratorValidatorBatchIterator.next(IteratorValidatorBatchIterator.java:118) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:68) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.ScreenCreator$ScreenRoot.innerNext(ScreenCreator.java:96) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.physical.impl.BaseRootExec.next(BaseRootExec.java:58) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:163) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.common.SelfCleaningRunnable.run(SelfCleaningRunnable.java:38) [drill-common-0.9.0-SNAPSHOT-rebuffed.jar:0.9.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]
2015-04-06 23:31:43,675 [2adce8a0-24c8-58ad-2f46-30c42a33ef2a:frag:0:0] INFO  o.a.drill.exec.work.foreman.Foreman - State change requested.  RUNNING --> FAILED
org.apache.drill.exec.rpc.RemoteRpcException: Failure while running fragment., 99999.99 [ a4ec50e8-88ea-4474-9a36-b2250f34e340 on centos-02.qa.lab:31010 ]
[ a4ec50e8-88ea-4474-9a36-b2250f34e340 on centos-02.qa.lab:31010 ]

        at org.apache.drill.exec.work.foreman.QueryManager.statusUpdate(QueryManager.java:163) [drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.work.foreman.QueryManager$RootStatusReporter.statusChange(QueryManager.java:281) [drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.work.fragment.AbstractStatusReporter.fail(AbstractStatusReporter.java:114) [drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.work.fragment.AbstractStatusReporter.fail(AbstractStatusReporter.java:110) [drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.work.fragment.FragmentExecutor.internalFail(FragmentExecutor.java:230) [drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.work.fragment.FragmentExecutor.run(FragmentExecutor.java:182) [drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.common.SelfCleaningRunnable.run(SelfCleaningRunnable.java:38) [drill-common-0.9.0-SNAPSHOT-rebuffed.jar:0.9.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]

{code}



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