Kyligence / calcite

a tailored Apache Calcite for Apache Kylin, more details at http://mail-archives.apache.org/mod_mbox/kylin-dev/201704.mbox/%3CCAF7etT=wEBPKm4C_6ffssQ0=kEhD=j1jz3O9DpjC+Zu9xWU=5A@mail.gmail.com%3E . Isn't AtopCalcite in Kylin enough? It depends on tomcat feature that's no longer supported in tomcat 8
Apache License 2.0
14 stars 53 forks source link

KE-11534 Upgrade Calcite to 1.30 and adapt it for Kylin #320

Closed gleonSun closed 7 months ago

gleonSun commented 1 year ago

For SDK dialect conversion

Calcite 1.30 changed Rexcall operator from SqlCaseOperator to SqlPostfixOperator in RelOptUtil#isDistinctFromInternal

Calcite 1.30 remove EquiJoinInfo and NonEquiJoinInfo, but we need rexbuilder

Calcite 1.30 implement CHAR function

Fallback the logic of the simplification condition to version 1.16, otherwise it may lead to a failure to prune partitions

Revert "Fallback the logic of the simplification condition to version 1.16, otherwise it may lead to a failure to prune partitions"

This reverts commit 27f1a28ff0825546b2a1e2268916522569911a4f.

[Follow up] Fallback the logic of the simplification condition to version 1.16, otherwise it may lead to a failure to prune partitions

Refer to KE-36291 for an adapted method to simplify the filter condition

Refer to AL-5295 fix the ut about CharNColumnTest#testCharNColumn

Calcite 1.30 fix about SumCaseWhenFunctionRule and CountDistinctCaseWhenFunctionRule

[Follow up] Fix ProjectRel replacement and old agg replacement caused by RelBuilder#aggregate method

Roll back Calcite's computeDigest and simplifyCase logic from previous versions to ensure correct matching of Kylin models

[Follow up] Fix the way digest is calculated, delete the previous logic

Fix exception in Calcite 1.30 where data type conversion affected logical plan changes

Fix with Sort optimize and Trim function

Revert "Calcite 1.30 implement CHAR function"

This reverts commit 0e1f6b034a7ad2050b314f89c1c48efd5761c49a.

[CALCITE-5241] Implement CHAR function for MySQL and Spark, also JDBC '{fn CHAR(n)}'

Close apache/calcite#2878

Debug for Calcite deploy

Calcite 1.30 don't keep the precision of BigDecimal, add scale to fix exception

Fix SqlBasicCall's Deep Copy Logic Raises Rule Optimization Exception and TDVT test

Change kap-external-guava20 to kylin-external-guava30 and package name

Remove the default Unicode operation on the quoteStringLiteral function in Calcite 1.30