MD-789: Query with condition involving addition of DATE and INTERVAL types returns no results [MapR-DB JSON Tables]
+ Added `enablePushdown` option to enable/disable all filter pushdown, enabled by default. Project: http://git-wip-us.apache.org/repos/asf/drill/repo Commit: http://git-wip-us.apache.org/repos/asf/drill/commit/391027a7 Tree: http://git-wip-us.apache.org/repos/asf/drill/tree/391027a7 Diff: http://git-wip-us.apache.org/repos/asf/drill/diff/391027a7 Branch: refs/heads/master Commit: 391027a7f30934f6f0f77065908381f555df7aa6 Parents: e5bef16 Author: Aditya <adi...@mapr.com> Authored: Fri Mar 11 02:23:35 2016 -0800 Committer: Aditya Kishore <a...@apache.org> Committed: Fri Sep 9 10:08:39 2016 -0700 ---------------------------------------------------------------------- .../exec/store/mapr/db/json/CompareFunctionsProcessor.java | 8 +++++--- .../java/com/mapr/drill/maprdb/tests/MaprDBTestsSuite.java | 3 ++- .../com/mapr/drill/maprdb/tests/json/TestSimpleJson.java | 4 ++-- 3 files changed, 9 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/drill/blob/391027a7/contrib/format-maprdb/src/main/java/org/apache/drill/exec/store/mapr/db/json/CompareFunctionsProcessor.java ---------------------------------------------------------------------- diff --git a/contrib/format-maprdb/src/main/java/org/apache/drill/exec/store/mapr/db/json/CompareFunctionsProcessor.java b/contrib/format-maprdb/src/main/java/org/apache/drill/exec/store/mapr/db/json/CompareFunctionsProcessor.java index 827fa8c..0faa888 100644 --- a/contrib/format-maprdb/src/main/java/org/apache/drill/exec/store/mapr/db/json/CompareFunctionsProcessor.java +++ b/contrib/format-maprdb/src/main/java/org/apache/drill/exec/store/mapr/db/json/CompareFunctionsProcessor.java @@ -174,9 +174,11 @@ class CompareFunctionsProcessor extends AbstractExprVisitor<Boolean, LogicalExpr } if (valueArg instanceof TimeStampExpression) { - this.value = KeyValueBuilder.initFrom(new OTimestamp(((TimeStampExpression)valueArg).getTimeStamp())); - this.path = path; - return true; + // disable pushdown of TimeStampExpression type until bug 22824 is fixed. + // + // this.value = KeyValueBuilder.initFrom(new OTimestamp(((TimeStampExpression)valueArg).getTimeStamp())); + // this.path = path; + // return true; } return false; http://git-wip-us.apache.org/repos/asf/drill/blob/391027a7/contrib/format-maprdb/src/test/java/com/mapr/drill/maprdb/tests/MaprDBTestsSuite.java ---------------------------------------------------------------------- diff --git a/contrib/format-maprdb/src/test/java/com/mapr/drill/maprdb/tests/MaprDBTestsSuite.java b/contrib/format-maprdb/src/test/java/com/mapr/drill/maprdb/tests/MaprDBTestsSuite.java index 702aa5b..a26ddeb 100644 --- a/contrib/format-maprdb/src/test/java/com/mapr/drill/maprdb/tests/MaprDBTestsSuite.java +++ b/contrib/format-maprdb/src/test/java/com/mapr/drill/maprdb/tests/MaprDBTestsSuite.java @@ -119,7 +119,8 @@ public class MaprDBTestsSuite { " \"maprdb\": {" + " \"type\": \"maprdb\"," + " \"allTextMode\": false," + - " \"readAllNumbersAsDouble\": false" + + " \"readAllNumbersAsDouble\": false," + + " \"enablePushdown\": true" + " }," + " \"streams\": {" + " \"type\": \"streams\"" + http://git-wip-us.apache.org/repos/asf/drill/blob/391027a7/contrib/format-maprdb/src/test/java/com/mapr/drill/maprdb/tests/json/TestSimpleJson.java ---------------------------------------------------------------------- diff --git a/contrib/format-maprdb/src/test/java/com/mapr/drill/maprdb/tests/json/TestSimpleJson.java b/contrib/format-maprdb/src/test/java/com/mapr/drill/maprdb/tests/json/TestSimpleJson.java index 2bf2c31..0d9a991 100644 --- a/contrib/format-maprdb/src/test/java/com/mapr/drill/maprdb/tests/json/TestSimpleJson.java +++ b/contrib/format-maprdb/src/test/java/com/mapr/drill/maprdb/tests/json/TestSimpleJson.java @@ -431,8 +431,8 @@ public class TestSimpleJson extends BaseJsonTest { ; runSQLAndVerifyCount(sql, 1); - final String[] expectedPlan = {"condition=\\(last_update = \\{\"\\$date\":\"2012-10-20T07:42:46.000Z\"\\}\\)"}; - final String[] excludedPlan = {}; + final String[] expectedPlan = {"condition=null"}; + final String[] excludedPlan = {"condition=\\(last_update = \\{\"\\$date\":\"2012-10-20T07:42:46.000Z\"\\}\\)"}; PlanTestBase.testPlanMatchingPatterns(sql, expectedPlan, excludedPlan); }