You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@beam.apache.org by "Yueyang Qiu (Jira)" <ji...@apache.org> on 2020/01/23 18:58:00 UTC
[jira] [Created] (BEAM-9179) Better story for types in Beam ZetaSQL
Yueyang Qiu created BEAM-9179:
---------------------------------
Summary: Better story for types in Beam ZetaSQL
Key: BEAM-9179
URL: https://issues.apache.org/jira/browse/BEAM-9179
Project: Beam
Issue Type: Improvement
Components: dsl-sql-zetasql
Reporter: Yueyang Qiu
Assignee: Yueyang Qiu
Currently, how types work in Beam ZetaSQL is very confusing: code that does type conversion between Calcite/Beam/ZetaSQL type systems are everywhere and is likely to be not consistent. In addition, the recent migration to BeamZetaSqlCalcRel makes the situation even worse: it adds another layer for type conversion and makes a lot of code (for making ZetaSQL functions manually) obsolete. This makes debugging and supporting new features very hard. A few examples:
* Support new ZetaSQL types (e.g. DATE/TIME/DATETIME)
* Fix the long-standing precision & timezone issue of TIMESTMAP type
* Support BeamSQL query parameters
Therefore, I propose we work on the following items to make the story of Beam ZetaSQL type clearer:
* Define a clear mapping between Calcite/Beam/ZetaSQL types and values
* Refactor the codebase to move all type conversion code to a single source of truth
* Add thorough testing for it
* Remove obsolete code that is added to make functions work before BeamZetaSqlCalcRel
--
This message was sent by Atlassian Jira
(v8.3.4#803005)