[ https://issues.apache.org/jira/browse/IGNITE-24889?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Pavel Pereslegin reassigned IGNITE-24889: ----------------------------------------- Assignee: Pavel Pereslegin > Sql. Incorrect precision is calculated for temporal value in some cases > ----------------------------------------------------------------------- > > Key: IGNITE-24889 > URL: https://issues.apache.org/jira/browse/IGNITE-24889 > Project: Ignite > Issue Type: Bug > Components: sql > Affects Versions: 3.0 > Reporter: Pavel Pereslegin > Assignee: Pavel Pereslegin > Priority: Major > Labels: ignite-3 > > 1. Literal with interval arithmetic > {code:java} > assertQuery("SELECT TIMESTAMP '2021-01-01 00:00:00.1' + INTERVAL '0.001' > SECOND") > // org.opentest4j.AssertionFailedError: precision ==> > // Expected :3 > // Actual :1 > .columnMetadata(new > MetadataMatcher().type(ColumnType.DATETIME).precision(3)) > .returns(LocalDateTime.of(2021, Month.JANUARY, 01, 00, 00, 00, > 101000000)) > .check(); > {code} > 2. Dynamic param > {code:java} > // precision = 1 > sql("CREATE TABLE test(id int PRIMARY KEY, ts TIMESTAMP(1))"); > LocalDateTime ts = LocalDateTime.of(2021, Month.JANUARY, 01, 00, > 00, 00, 111000000); > sql("INSERT INTO test values (1, ?)", ts); > LocalDateTime truncated = LocalDateTime.of(2021, Month.JANUARY, 01, 00, > 00, 00, 100000000); > assertQuery("SELECT ts FROM test") > .columnMetadata(new MetadataMatcher().precision(1)) > // Expected: 2021-01-01T00:00:00.100 <class java.time.LocalDateTime> > // Actual: 2021-01-01T00:00:00.111 <class java.time.LocalDateTime> > .returns(truncated) > .check(); > {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)