Clone
 

jinfeng ni <jni@maprtech.com> in drill

DRILL-1384: Part 5 - Make sure ProjectRemove will honor the output fieldName and use validated rowtype from SqlValidator to honor the final output field. ProjectRemove should honor parent's output field name. Fix Parser, allow * in compound identifier in DrillParserImpl.

Make sure ProjectRemove will honor the output fieldName and use validated rowtype from SqlValidator to honor the final output field. This is required, since Drill's execution framework is name-based, different from Calcite's ordinal-based execution engine.

DRILL-1384: Part 4 - Modify cost estimation for DrillProject and Drill Logical Join operator. Use cpu, io, network, meory cost in Drill cost compare method.

Modify DrillProjectRelBase

Use a visitor to identify complex filed with named segment only in DrillProjectRelBase.

Modify cost estimation for Drill Logical Join operator. Use meory cost in Drill cost compare method.

Put the memory costing into DrillCostBase comparison.

Revise based on review comments.

Revise code based on review comments.

DRILL-1384: Part 3 - Fix CanNotPlan, by making infinite cost for non-equal DrillJoinRel. Provide Drill specific FilterJoinRule, to enforce Drill only support equal-join in execution.

DRILL-2458: Ensure no unwanted columns are added to CTAS output when * column is used in the query.

DRILL-2400: Part 1: Change cpu cost estimation formula for DrillFilterRelBase. Add testcase for MergeFilter rule.

Modify costing of Filter.

Cost change to Filter.

Change to filter costing.

Move one test utility method to PlanTestBase.

DRILL-2269: Add default implementation for estimating cost of evaluating an expression, in stead of throwing Exception.

Set default cost of evaluating a HiveFuncHolder expression.

DRILL-2236: Optimize hash inner join by swapping inputs based on row count comparison. Add a planner option to enable/disable this feature.

Revise code based on review comments.

DRILL-2087: Fix an incorrect join plan by ensure either both sides are distributed, or none of them is distributed.

Add unit testcase.

DRILL-2069: Fix star query prefix logic it's used with subquery in where clause. Convert some star query query unit test to verify query results.

Add new unit test case based on review comments.

DRILL-1655: Fix CanNotPlan issue when join Mongodb and other datasource, by ensuring Mongodb plugin return one single instance for each table reference.

DRILL-2041 : Throw more meaningful error message when Group BY / ORDER BY / COMPARE array/map or repeated scalar type.

DRILL-2030: fix column prefix for CTAS when query has select * and expression.

Code refactor.

DRILL-1889: Fix star column prefix and subsume logic, so that query planner handle single table * query properly.

Code revision based on review comment.

DRILL-1384: Part 6 - Change dependency from optiq to Apache calcite. Use calcite version 1.1.0-drill-r1.

Change dependency from optiq to calcite.

pom file change for jdbc/jdbc-all module. Use optiq-avertica library for drill's jdbc.

Exclude commons-loggings from calcite dependency.

Exclude jcl-over-slf4j in jdbc-all proGuard plugin.

Use calcite version 1.1.0-drill-r1.

DRILL-1867: Fix case-insensitive matching for subquery. Bump calcite version to r15. Code fix is in calcite

DRILL-1900: Fix numeric overflow problem in hbase stat calculation.

DRILL-1635: Propagate detailed error information when Drill sees a SQL parser error.

DRILL-1634: Fix issue in complex type expression type resolution, when Drill queries a nested array.

code clean up.

add comment of code change.

    • -0
    • +2
    /exec/java-exec/src/test/resources/jsoninput/nestedArray.json
DRILL-1470 : cast into varchar should recognize the length parameter in varchar. Fix casting function implementation: the length parameter should mean # of chars, not # of bytes.

New unit test case to verify the result from cast function.

Fix bug in cast into varchar. When target length = 0, it means we want to keep the input .

code clean up.

Include change for varbinary cast as well.

DRILL-1339: Use EStore to track running query status.

Move common code to ZkAbstractStore.

Get full profile from foreman directly.

code cleanup.

code change based on review comments.

ZK store check node exists before delete. Add error message in case of error.

Use a different profile for running queries, so that running query would have different ZK node from completed queries.

More log. Do not delete query state in EStore. In stead, modify the state in EStore.

  1. … 4 more files in changeset.
DRILL-1544 : Support escape character in "like" or "similar to" SQL operator.

Conflicts:

exec/java-exec/src/test/java/org/apache/drill/TestExampleQueries.java

    • -0
    • +3
    /exec/java-exec/src/test/resources/jsoninput/specialchar.json
DRILL-1592: Detect drillbit failure and cancel the affected running queries.

Revise code based on review comments.

Revise code based on comments: only track the newly dead drillbits.

Remove some debug msg.

Minor code change based on review comments.

clean up.

add comment. Clear listeners when drillbit is unregistered from CC.

Minor code change from review comments.

DRILL-1384: Part 1 - Rebase on Calcite. Change code due to Calcite package renaming/re-structure.

Optiq changed to use DATETIME_PLUS. Have to handle it in Drill.

PushFilterPastJoinRule has some issue. Temp fix for that.

Failed unit tests:

1) TestFlatten

2) TestConvertFunctions / TestComplexTypeWriter : "Concat"

3) TPCH Q16 : CanNotPlanException

Feed a RelDataTypeSystem into planner, to support decimal with precision/scale up to 38.

Remove assertion in DrillFilterRel. Optiq/Calcite could create a TRUE AND TRUE for query like WHERE col1 in (select ...) and col2 in (select ...) .

Rebase on calcite-1.1.0-drill-test-r1. Change code due to Calcite package renaming/re-structure.

Rebase on calcite : remaing with perl script. Part 1

reverse change to jdbc test.

Renaming for rebasing calcite. Part 2

Renaming for calcite rebasing. Part 3

Renaming for calcite rebasing. Part 4

Reverse change to testcase in jdbc.

Renaming for calcite rebasing. Part 5

Renaming for calcite rebasing. Part 6

remove 1.sh

WindowRel change related.

Renaming for calcite rebase. Part 7

PreprocessLogical and AggPrelBase

Renaming for calcite rebasing. Part 8. More manual change

Rebasing Calcite. Part 9

Rebasing calcite. Part 10

Rebasing API change from Calcite.

SQL parser change, due to Calcite rebasing.

Renaming change for calcite rebasing.

Renaming package due to Calcite rebasing.

Renaming package due to Calicte Rebase.

Work in progress for calcite rebasing.

Change import package names due to Calcite rebase.

Code refactor due to Calcite rebasing.

Fix bug in DistributionTraitDef.

Resolve compiler error, due to Calcite Rebasing.

Resolve compiler error after Calcite Rebasing.

minor change.

  1. … 247 more files in changeset.
DRILL-1443: Enforce sort order when order by clause is used with select * query. Fix in optiq.

DRILL-1391 : Fix compilation error in run-time generated code for several math functions over decimal types.

DRILL-1383: Support interpreted execution for Drill expression tree.

Fix OOM while running InterpreterBuilder

    • -0
    • +109
    /exec/interpreter/pom.xml
DRILL-1299: Enable short circuit evaluation for case expressions in the run-time generated code.

DRILL-1265: Drill may incorrectly return null when evaluates an expression of repeated list. The fix is to correctly set offsets vectors for repeated list vector.

DRILL-1355: Ensure Drill optimizer will use storage plugin specific rules, when a new storage plugin is added.

DRILL-1337 : Fix incorrect query result for TPCH Q13. Stop pulling up local filter from an outer join condition.