[
https://issues.apache.org/jira/browse/CALCITE-5761?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17730298#comment-17730298
]
Mihai Budiu commented on CALCITE-5761:
--------------------------------------
I thought that an assertion would signal corruption in the internal state of
the compiler.
At least that's how other systems tend to use assertions. Assertion doesn't
even extend Exception, so it may not be caught by exception handlers.
For user-facing errors I would expect something gentler which can print a nice
error message and perhaps even continue sometimes.
But I can use AssertionError if that's the way to do it.
Side note: I really can't figure out how to paste code in this JIRA tracker.
> DATE_TRUNC compile-time evaluation produces wrong results
> ---------------------------------------------------------
>
> Key: CALCITE-5761
> URL: https://issues.apache.org/jira/browse/CALCITE-5761
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.34.0
> Reporter: Mihai Budiu
> Priority: Minor
>
> Adding the following 3 tests to SqlOperatorTest.testDateTrunc produces
> assertion failures.
> f.checkScalar("date_trunc(date '2015-02-19', decade)",
> "2010-01-01", "DATE NOT NULL");
> f.checkScalar("date_trunc(date '2015-02-19', century)",
> "2001-01-01", "DATE NOT NULL");
> f.checkScalar("date_trunc(date '2015-02-19', millennium)",
> "1001-01-01", "DATE NOT NULL");
> Results produced:
> Query: values (date_trunc(date '2015-02-19', decade))
> Expected: is "2010-01-01"
> but: was "2015-01-05"
> Query: values (date_trunc(date '2015-02-19', century))
> Expected: is "2001-01-01"
> but: was "2012-09-17"
> Query: values (date_trunc(date '2015-02-19', millennium))
> Expected: is "1001-01-01"
> but: was "2002-11-09"
--
This message was sent by Atlassian Jira
(v8.20.10#820010)