You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Aman Sinha (JIRA)" <ji...@apache.org> on 2015/04/23 07:06:38 UTC

[jira] [Created] (DRILL-2852) CASTing the column 'dir0' in view causes partition pruning to fail

Aman Sinha created DRILL-2852:
---------------------------------

             Summary: CASTing the column 'dir0' in view causes partition pruning to fail 
                 Key: DRILL-2852
                 URL: https://issues.apache.org/jira/browse/DRILL-2852
             Project: Apache Drill
          Issue Type: Bug
          Components: Query Planning & Optimization
    Affects Versions: 0.8.0
            Reporter: Aman Sinha
            Assignee: Aman Sinha


If the partition column 'dir0' is CAST inside a view and the query has a filter on that column, then partition pruning interpreter evaluator encounters an AssertionError. 

Table data in the example below is from test/resources/multilevel/parquet.  

{code}
create view dfs.tmp.myview2 as select cast(dir0 as varchar(100)) as myyear, dir1 as myquarter, o_totalprice from `multilevel/parquet` ;

select * from dfs.tmp.myview2 where myyear = '1995' and myquarter = 'Q2' and o_totalprice < 40000.0;
{code}

Failure stack trace: 
{code}
Caused by: java.lang.AssertionError: Internal error: Error while applying rule PruneScanRule:Filter_On_Project,
...
<skip>

Caused by: java.lang.AssertionError: null
        at org.apache.drill.exec.expr.fn.interpreter.InterpreterEvaluator$EvalVisitor.isBitOn(InterpreterEvaluator.java:490) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.expr.fn.interpreter.InterpreterEvaluator$EvalVisitor.visitBooleanAnd(InterpreterEvaluator.java:434) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.expr.fn.interpreter.InterpreterEvaluator$EvalVisitor.visitBooleanOperator(InterpreterEvaluator.java:332) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.expr.fn.interpreter.InterpreterEvaluator$EvalVisitor.visitBooleanOperator(InterpreterEvaluator.java:147) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.common.expression.BooleanOperator.accept(BooleanOperator.java:36) ~[drill-common-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.expr.fn.interpreter.InterpreterEvaluator.evaluate(InterpreterEvaluator.java:80) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
        at org.apache.drill.exec.planner.logical.partition.PruneScanRule.doOnMatch(PruneScanRule.java:224) ~[drill-java-exec-0.9.0-SNAPSHOT-rebuffed.jar:0.9.0-SNAPSHOT]
{code}



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