drill-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jason Altekruse" <altekruseja...@gmail.com>
Subject Re: Review Request 30697: Drill-2060 - part 2 - constant expression folding during planning
Date Thu, 26 Mar 2015 01:29:03 GMT


> On March 24, 2015, 9:58 p.m., Jinfeng Ni wrote:
> > exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillReduceExpressionsRule.java,
line 40
> > <https://reviews.apache.org/r/30697/diff/6/?file=904524#file904524line40>
> >
> >     This is not an issue for now, since Drill uses a forked version of Calcite.
But in the Calcite master branch, one restriction is added for the naming convention for the
RelOptRule. If we move Drill on top of the Calcite master (which I'm doing right now), then
it will cause problem. Could you please modify the rule name here?   
> >     
> >         if (!description.matches("[A-Za-z][-A-Za-z0-9_.():]*")) {
> >           throw new RuntimeException("Rule description '" + description
> >               + "' is not valid");
> >         }

Fixed


- Jason


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/30697/#review77666
-----------------------------------------------------------


On March 26, 2015, 12:01 a.m., Jason Altekruse wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/30697/
> -----------------------------------------------------------
> 
> (Updated March 26, 2015, 12:01 a.m.)
> 
> 
> Review request for drill, Aditya Kishore, Aman Sinha, Jacques Nadeau, Jinfeng Ni, Mehant
Baid, and Parth Chandra.
> 
> 
> Bugs: DRILL-2060
>     https://issues.apache.org/jira/browse/DRILL-2060
> 
> 
> Repository: drill-git
> 
> 
> Description
> -------
> 
> THIS REQUEST HAS BEEN BROKEN INTO TWO REVIEWS:
> - I had to make a fairly substandial change to the interpreteed expression evaluation
to make the tests work.
> 
> Use a small modification of a rule in optiq and hook up the interpreted expression evaluator
to fold constant expressions (including those with Drill UDFs) into literals. Fragment memory
limits have been disabled, a more complete refactoring of memory management is planned, the
changes made here were to allow the creation of a childAllocator without access to a fragment
context. I have added two comments next to the modifiations I made to the optiq rule for our
use case.
> 
> 
> Diffs
> -----
> 
>   common/src/main/java/org/apache/drill/common/expression/ExpressionStringBuilder.java
d3839ed 
>   contrib/storage-hive/core/src/main/java/org/apache/drill/exec/planner/sql/HiveUDFOperator.java
7524690 
>   exec/java-exec/src/main/codegen/templates/TypeHelper.java d387b74 
>   exec/java-exec/src/main/java/io/netty/buffer/DrillBuf.java d87fb76 
>   exec/java-exec/src/main/java/org/apache/drill/exec/expr/ExpressionTreeMaterializer.java
6d42136 
>   exec/java-exec/src/main/java/org/apache/drill/exec/expr/fn/DrillFunctionRegistry.java
32cf362 
>   exec/java-exec/src/main/java/org/apache/drill/exec/expr/fn/impl/StringFunctionHelpers.java
3b1d7ef 
>   exec/java-exec/src/main/java/org/apache/drill/exec/expr/fn/interpreter/InterpreterEvaluator.java
35c35ec 
>   exec/java-exec/src/main/java/org/apache/drill/exec/ops/BufferManager.java 536f6fd 
>   exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/project/ProjectRecordBatch.java
0c7a71a 
>   exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillConstExecutor.java
PRE-CREATION 
>   exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillReduceExpressionsRule.java
PRE-CREATION 
>   exec/java-exec/src/main/java/org/apache/drill/exec/planner/logical/DrillRuleSets.java
b1a7189 
>   exec/java-exec/src/main/java/org/apache/drill/exec/planner/physical/PlannerSettings.java
f320157 
>   exec/java-exec/src/main/java/org/apache/drill/exec/planner/sql/DrillSqlWorker.java
710418b 
>   exec/java-exec/src/main/java/org/apache/drill/exec/server/options/SystemOptionManager.java
608fac7 
>   exec/java-exec/src/test/java/org/apache/drill/PlanningBase.java e673230 
>   exec/java-exec/src/test/java/org/apache/drill/TestProjectPushDown.java cbb5c6e 
>   exec/java-exec/src/test/java/org/apache/drill/exec/fn/impl/TestAggregateFunctions.java
72ad31a 
>   exec/java-exec/src/test/java/org/apache/drill/exec/fn/interp/TestConstantFolding.java
PRE-CREATION 
>   exec/java-exec/src/test/resources/parquet/alltypes.json PRE-CREATION 
>   pom.xml 05573a1 
> 
> Diff: https://reviews.apache.org/r/30697/diff/
> 
> 
> Testing
> -------
> 
> This is a work in progress, some testing has been done, no full unit test run yet
> 
> 
> Thanks,
> 
> Jason Altekruse
> 
>


Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message