Luke Cwik created BEAM-2442:
-------------------------------

             Summary: DSL SQL: Public classes/methods should not expose/use 
calcite types
                 Key: BEAM-2442
                 URL: https://issues.apache.org/jira/browse/BEAM-2442
             Project: Beam
          Issue Type: Improvement
          Components: dsl-sql
            Reporter: Luke Cwik
            Assignee: Xu Mingmin


Calcite is an internal implementation detail of how Beam SQL is operating. To 
prevent a hard dependence on Calcite, public methods and classes should not 
rely on consuming/producing Calcite types.

For example, BeamSqlRecordType uses org.apache.calcite.sql.type.SqlTypeName 
instead of using the Java SQL types 
(https://docs.oracle.com/javase/8/docs/api/java/sql/Types.html).

This task is to create an ApiSurfaceTest to help find, fix, and prevent 
org.apache.calcite.* from being exposed. Example ApiSurfaceTest: 
https://github.com/apache/beam/blob/367fcb28d544934797d25cb34d54136b2d7d6e99/sdks/java/core/src/test/java/org/apache/beam/SdkCoreApiSurfaceTest.java



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to