[
https://issues.apache.org/jira/browse/CALCITE-1658?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Julian Hyde updated CALCITE-1658:
---------------------------------
Component/s: druid
> DateRangeRules issues
> ---------------------
>
> Key: CALCITE-1658
> URL: https://issues.apache.org/jira/browse/CALCITE-1658
> Project: Calcite
> Issue Type: Bug
> Components: core, druid
> Reporter: Gian Merlino
> Assignee: Nishant Bangarwa
> Fix For: 1.16.0
>
>
> Follow up to CALCITE-1601. In Druid's built in SQL module (not the Druid
> adapter in Calcite), some unit tests fail when DateRangeRules.FILTER_INSTANCE
> is enabled. These include the SQLs below. In all cases, the predicate was
> incorrectly simplified to "false" and no Druid queries were made.
> Removing DateRangeRules from the planner causes the results to be correct.
> {code}
> SELECT COUNT(*) FROM druid.foo
> WHERE
> (EXTRACT(YEAR FROM __time) = 2000 AND EXTRACT(MONTH FROM __time) IN
> (2, 3, 5))
> OR (EXTRACT(YEAR FROM __time) = 2001 AND EXTRACT(MONTH FROM __time) = 1)
> {code}
> {code}
> SELECT COUNT(*) FROM druid.foo
> WHERE
> EXTRACT(YEAR FROM __time) IN (2000, 2001) AND ( (EXTRACT(YEAR FROM
> __time) = 2000 AND EXTRACT(MONTH FROM __time) IN (2, 3, 5))
> OR (EXTRACT(YEAR FROM __time) = 2001 AND EXTRACT(MONTH FROM __time) = 1)
> )
> {code}
> {code}
> SELECT COUNT(*) FROM druid.foo
> WHERE
> EXTRACT(YEAR FROM __time) <> 2000 AND ( (EXTRACT(YEAR FROM __time) =
> 2000 AND EXTRACT(MONTH FROM __time) IN (2, 3, 5))
> OR (EXTRACT(YEAR FROM __time) = 2001 AND EXTRACT(MONTH FROM __time) = 1)
> )
> {code}
> {code}
> SELECT COUNT(*) FROM druid.foo
> WHERE
> EXTRACT(MONTH FROM __time) IN (1, 2, 3, 5) AND ( (EXTRACT(YEAR FROM
> __time) = 2000 AND EXTRACT(MONTH FROM __time) IN (2, 3, 5))
> OR (EXTRACT(YEAR FROM __time) = 2001 AND EXTRACT(MONTH FROM __time) = 1)
> )
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)