You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Julian Hyde (JIRA)" <ji...@apache.org> on 2018/04/09 11:50:00 UTC

[jira] [Commented] (CALCITE-2243) Timestamp values change with remote connection when the result set size exceeds 100 rows

    [ https://issues.apache.org/jira/browse/CALCITE-2243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16430415#comment-16430415 ] 

Julian Hyde commented on CALCITE-2243:
--------------------------------------

You’re kind of asking for this behavior. Your custom enumerator uses wall clock time system.currentMillis.

You can’t control when your code is executed. Or, apparently, when the generated class is reloaded. 

> Timestamp values change with remote connection when the result set size exceeds 100 rows
> ----------------------------------------------------------------------------------------
>
>                 Key: CALCITE-2243
>                 URL: https://issues.apache.org/jira/browse/CALCITE-2243
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 1.16.0
>            Reporter: Markku Vuorenmaa
>            Assignee: Julian Hyde
>            Priority: Major
>         Attachments: TimestampsIssue.java
>
>
> Table queries with TIMESTAMP values return incorrect values when the result set size is larger than 100 rows. Perhaps the timezone shift is calculated twice, as the first 100 lines are correct and the bug always occurs after that. The default fetch size in the code seems to be 100. The bug should be reproducable by running the attached code, which the same model with local and remote connection and gets a different data as a result.
> Some output shortly:
> Local:
> {{#1 TIME=2018-04-09 11:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> {{#2 TIME=2018-04-09 11:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> {{#100 TIME=2018-04-09 11:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> {{#101 TIME=2018-04-09 11:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> {{#102 TIME=2018-04-09 11:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> {{#200 TIME=2018-04-09 11:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> Remote:
> {{#1 TIME=2018-04-09 11:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> {{#2 TIME=2018-04-09 11:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> {{#100 TIME=2018-04-09 11:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> {{#101 TIME=2018-04-09 08:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> {{#102 TIME=2018-04-09 08:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> {{#200 TIME=2018-04-09 08:20:38.31; FORMATTED=9.4.2018 14:20:38}}
> {{[^TimestampsIssue.java]}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)