[
https://issues.apache.org/jira/browse/CALCITE-5678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Evgeny Stanilovsky updated CALCITE-5678:
----------------------------------------
Description:
RexToLixTranslator now process datetime input\output string representation
through transformation between gregorian and julian [1] calendars , thus no
exception is raised if incorrect string is passed, just smart transformation
instead.
[1] org.apache.calcite.avatica.util.DateTimeUtils#timestampStringToUnixDate
{noformat}
create table t (i int not null, j timestamp);
insert into t values (1, '2013-20-14 00:00:00');
select * from t;
> +---+---------------------+
> | I | J |
> +---+---------------------+
> | 1 | 2014-08-16 00:00:00 |
> +---+---------------------+{noformat}
was:
RexToLixTranslator now process datetime input string representation through
org.apache.calcite.avatica.util.DateTimeUtils#timestampStringToUnixDate , thus
no exception is raised if incorrect string is passed.
{noformat}
create table t (i int not null, j timestamp);
insert into t values (1, '2013-20-14 00:00:00');
select * from t;
> +---+---------------------+
> | I | J |
> +---+---------------------+
> | 1 | 2014-08-16 00:00:00 |
> +---+---------------------+{noformat}
> Reject date literals not satisfying Gregorian calendar and sql standard rules.
> ------------------------------------------------------------------------------
>
> Key: CALCITE-5678
> URL: https://issues.apache.org/jira/browse/CALCITE-5678
> Project: Calcite
> Issue Type: Improvement
> Components: avatica
> Affects Versions: 1.34.0
> Reporter: Evgeny Stanilovsky
> Assignee: Evgeny Stanilovsky
> Priority: Major
> Labels: patch-available
>
> RexToLixTranslator now process datetime input\output string representation
> through transformation between gregorian and julian [1] calendars , thus no
> exception is raised if incorrect string is passed, just smart transformation
> instead.
> [1] org.apache.calcite.avatica.util.DateTimeUtils#timestampStringToUnixDate
> {noformat}
> create table t (i int not null, j timestamp);
> insert into t values (1, '2013-20-14 00:00:00');
> select * from t;
> > +---+---------------------+
> > | I | J |
> > +---+---------------------+
> > | 1 | 2014-08-16 00:00:00 |
> > +---+---------------------+{noformat}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)