[FLINK-39183][table] Support BITMAP type in Calcite parser#27720
[FLINK-39183][table] Support BITMAP type in Calcite parser#27720dylanhz wants to merge 1 commit intoapache:masterfrom
Conversation
| @@ -7977,6 +7979,7 @@ SqlPostfixOperator PostfixRowOperator() : | |||
| | < BIGINT: "BIGINT" > | |||
| | < BINARY: "BINARY" > | |||
| | < BIT: "BIT" > | |||
| | < BITMAP: "BITMAP" > | |||
There was a problem hiding this comment.
is it in Calcite?
We shouldn't change this file without good justification
It should be removed once we bump to certain Calcite version
snuyanzin
left a comment
There was a problem hiding this comment.
Can we do this without Parser.jj modification?
Or first be sure it is merged to Calcite and then port changes here
i also agree this "merged to Calcite and then port changes here" |
Thanks for the review! BITMAP is not a SQL standard type — it's an extension type specific to analytical systems, so proposing it to Calcite upstream doesn't really make sense. This also shouldn't block Flink from introducing its own extension type. For the Parser.jj concern, would it be acceptable if we move the token and type parsing rule into Parser.tdd and parserImpls.ftl? This follows the same pattern used by STRING, BYTES, RAW, etc. The SqlTypeName.java and SqlTypeFamily.java changes would remain as-is. |
What is the purpose of the change
This pull request adds parsing support for the
BITMAPdata type in Flink's Calcite-based SQL parser.Brief change log
BITMAPtoken and type literal toParser.jjSqlTypeNameandSqlTypeFamilyenums withBITMAPVerifying this change
FlinkSqlParserImplTest#testBitmapTypeDoes this pull request potentially affect one of the following parts:
@Public(Evolving): noDocumentation