JingsongLi edited a comment on issue #10035: [FLINK-14080][table-planner-blink] Introduce Timestamp as internal representation of TIMESTAMP_WITHOUT_TIME_ZONE URL: https://github.com/apache/flink/pull/10035#issuecomment-548235482 > adding these methods long getEpochMilliSecond(int idx), int getNano(int idx), ZoneId getZoneId(int idx). The reason is the same as why decimal not getLong directly. It will make CodeGen and computation complex, and if we separate timestamp precision less than 3 and greater than 3, it will bring two implementations on timestamp type for all functions, and it is not worth. And with JIT, object will be optimized in many scene. One type should keep only one presentation. > it is not an internal representation Data format is not only internal use, so the `CONVERSION` set of logical type contains data format too. It will cause confusion. In Java, the distinction between instant and LocalDateTime is not about performance, but about their semantics and methods. Its comments may confuse us. If it is just internal use, why not add a class to do some optimize and implement functions and etc.
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services
