This is an automated email from the ASF dual-hosted git repository. github-bot pushed a change to branch site in repository https://gitbox.apache.org/repos/asf/calcite.git
discard be22d5fc7f [CALCITE-6302] Release Calcite 1.37.0 discard c366a7e737 [CALCITE-6321] Add copy(List<RexLiteral>) method to Window class discard 96f8b30a56 [CALCITE-6015] AssertionError during optimization of EXTRACT expression discard fdd201f7c4 Link to calcite notes about runnable examples and concise documents discard 6c3386c347 [CALCITE-6250] Limitations of MongoDB adapter are not documented discard 7056273556 Site: Remove committer by request process discard a0cfda8a6c [CALCITE-6194] Contributor rules do not give instructions about how to quote commits discard 0e0d669a26 [MINOR] Typos in the documentation discard 9d75a8faf8 Site: Switch PMC Chair to Benchao Li discard c62ecfb310 [MINOR] Link to blog post about Calcite's IRs discard 8c70da03c8 Add Wang Zhao(zoovw...@tencent.com) to .mailmap discard 716cfe7cf8 [CALCITE-6125] Automate generation of contributor names in release notes by adding a git mailmap file discard 862531e52c Site: Troubleshooting/Website publishing improvements in release guide add 816edd1fa1 [CALCITE-6100] The equalsDeep of SqlRowTypeNameSpec should use equalsDeep for fieldTypes rather than reference comparison add 53c3cc6cd1 [CALCITE-6092] Skip breaking CAST String to TIME tests until fixed in Avatica 1.24.0 add 83d320c2eb [CALCITE-5846] Preserve filters on non-distinct aggCalls in AggregateExpandWithinDistinctRule add 55034513b4 Bump 6 dependencies add 943921e494 [CALCITE-5607] Serialize return type during RelJson.toJson(RexNode node) for SqlKind.MINUS add d149ffaea5 Site: Troubleshooting/Website publishing improvements in release guide add db192e92a5 [CALCITE-6102] SqlWriter in SqlInsert's unparse start a list but does not end it add a300dd6ca7 [CALCITE-6081] Remove bouncycastle dependency add 1537555596 [CALCITE-6118] Missing empty ARRAY function usage in reference doc add d0f0214c6a [CALCITE-6124] Bump json-path from 2.7.0 to 2.8.0 add 7049f9a335 [CALCITE-6105] Documentation does not specify the behavior of SPLIT function for empty string arguments add b74c9344d3 [CALCITE-6109] Linq4j OptimizeShuttle should not create new instances of TernaryExpression if it does not do any optimization add 50263d232a Sort contributors file add 1eb6551324 [CALCITE-6083] On web site, ensure contributors file is sorted add 343132ecc9 [CALCITE-6125] Automate generation of contributor names in release notes by adding a git mailmap file add 8556807787 [CALCITE-6121] Invalid unparse for TIMESTAMP with SparkSqlDialect add 2408c679b5 [CALCITE-6118] Missing empty ARRAY function usage in reference doc (follow-up) add 5385de959e [CALCITE-6128] RelBuilder.limit should apply offset and fetch to previous Sort operator, if possible add c65fdc92a2 Broken link in tutorial add 578f44e803 Add Wang Zhao(zoovw...@tencent.com) to .mailmap add bd7d4e89c5 [CALCITE-6117] Converting SAFE_CAST from RexCall to SqlCall fails to add the type as an argument add d3ab0bc8e4 [CALCITE-6150] JDBC adapter for ClickHouse generates incorrect SQL for certain units in the EXTRACT function add 1f6022b4d4 [CALCITE-6095] Arithmetic expression with VARBINARY value causes AssertionFailure add cdf3f5cb6b [CALCITE-6147] CAST(CAST(EMPNO AS VARCHAR) AS INT) should be simplified to EMPNO add 0c4dd47e58 [MINOR] Name typo for Jiajun add bfc25cf60f [MINOR] Link to blog post about Calcite's IRs add 3a2692c25b [MINOR] Update javadoc for SqlTypeName#allowsPrecScale method add acc087a8a7 [CALCITE-5811] Error messages produced for constant out-of-bounds arguments are confusing add 871aa2945d [MINOR] Better message when no corresponding example add 56eb062ba2 [CALCITE-6131] There are duplicate sample tests in SqlTypeUtilTest add dc115a8afc [CALCITE-6048] ServerTest#testTruncateTable fails intermittently due to method not found exception add 8c640da341 [MINOR] show all data on CsvTest add f449b0fc72 [MINOR] Add ForwardXu(forwardxu...@gmail.com) to .mailmap add e4bd21ec3b [CALCITE-6115] Interval type specifier with zero fractional second precision does not pass validation add 08f685683e [CALCITE-6074] The size of REAL, DOUBLE, and FLOAT is not consistent add e066266dcd [CALCITE-6127] The spark array function gives NullPointerException when element is row type add 6f64865eb8 [CALCITE-3679] Allow lambda expressions in SQL queries add 50a20824c4 [CALCITE-5955] BigQuery PERCENTILE functions are unparsed incorrectly add 48b79228d3 [CALCITE-3329] Implement osquery for OS adapter add 6d13246686 [MINOR] Delete useless comments add a816267808 Site: Switch PMC Chair to Benchao Li add e74ff3eaa0 [CALCITE-6156] Add ENDSWITH, STARTSWITH functions (enabled in Postgres, Snowflake libraries) add cf49f594a3 [CALCITE-6165] Add DATE_ADD test and DATE_DIFF test on SqlOperatorTest add 8d624d99f7 [MINOR] Typos in the documentation add 6e7b05d776 [MINOR] Add checkNull Test on SqlOperatorTest add 3217321149 [CALCITE-6180] Append possibility to escape backslash in LIKE with ESCAPE operator add a7cc2bb9ab [MINOR] Update javadoc for RexChecker with Litmus argument add 11c540686a [CALCITE-5130] AssertionError: "Conversion to relational algebra failed to preserve datatypes" when union VARCHAR literal and CAST(null AS INTEGER) add dad9d75fd0 [MINOR] Checkstyle to fix broken build add e877885ed9 [CALCITE-6116] Add EXISTS function (enabled in Spark library) add 22b424e5f2 [CALCITE-6178] WITH RECURSIVE query when cloned using sqlshuttle looses RECURSIVE property add 7b97c4e458 [CALCITE-6149] Unparse for CAST Nullable with ClickHouseSqlDialect add d7e171e3b0 [CALCITE-6183] The second parameter of RexProgramBuilder#registerInternal is always false add be297d04d7 [CALCITE-6179] Support weekofmonth function format and add test add 9ec3a5bbf6 [CALCITE-6181] Upgrade Janino from 3.1.9 to 3.1.11 add 42f0f2d6ee Typos in SqlWriter add 429609c03e [CALCITE-6182] Add LENGTH/LEN functions (enabled in Snowflake library) add 3c19347cc4 [CALCITE-6187] Linter should disallow tags such as '[MINOR]' in commit messages add 294e42f0fb [CALCITE-6184] Add checkNullTest on SqlOperatorTest add 73e83f6be7 [CALCITE-6119] Upgrade testcontainers to 1.19.3 add 5920262929 [CALCITE-6194] Contributor rules do not give instructions about how to quote commits add ee4cb3581c [CALCITE-6172] Allow aliased operators to re-use existing tests add 3deb77cd6f [CALCITE-6192] DEFAULT expression with NULL value throws unexpected exception add a86bca8c3e Revert [CALCITE-6180] Append possibility to escape backslash in LIKE with ESCAPE operator add 135e963832 [CALCITE-6190] Incorrect precision derivation for negative numeric types add ad2a4e6af2 [CALCITE-6094] Linq4j.ConstantExpression.write crashes on special FP values add b2be7e1dac [CALCITE-6044] RelMetadataQuery should regard single-row relational expressions as unique add 402740d970 [CALCITE-6096] Remove obsolete html5shiv and respond entries from LICENSE add e71d59fe92 [CALCITE-6097] Gridism CSS dependency is mispelled in LICENSE add 24ea6bef75 [CALCITE-6200] RelJson throw UnsupportedOperationException for RexDynamicParam add 86d5720c7f [CALCITE-6202] `sqlsh` does not print error message when query fails add 6672f7e69b [CALCITE-6162] Add rule(s) to remove joins with constant single tuple relations add d5fa3eb074 [CALCITE-6212] Config locale = 'en_US' for javadoc task add e2c84a6485 [CALCITE-6111] Explicit cast from expression to numeric type doesn't check overflow add 58edb0e85f [CALCITE-6098] Update LICENSE and NOTICE for Jekyll website template add d260a7dd6d Site: Remove committer by request process add 4d8d6047f1 [CALCITE-6189] Improve FormatElementEnumTest add 0a0fd871fa [CALCITE-6205] Add BITAND_AGG, BITOR_AGG functions (enabled in Snowflake library) add aca7f02dfd [CALCITE-6213] The default behavior of NullCollation in Presto is LAST add 481d6acb4d [CALCITE-6222] Mysql does not have to_char function add 91a8ab8c06 [CALCITE-6211] SUBSTRING with Integer.MIN_VALUE as a second parameter raise unexpected exception add 26b5e9be6a [CALCITE-6220] Rewrite MIN/MAX(bool) as BOOL_AND/BOOL_OR for Postgres, Redshift add 21d263ba1f [CALCITE-6215] Support century format datetime/timestamp in pg add ba9c840b75 [CALCITE-6168] RexExecutor can throw during compilation add e17098d47f [CALCITE-6229] Bump json-path from 2.8.0 to 2.9.0 add dd53e29326 [CALCITE-6227] ELEMENT(NULL) causes an assertion failure add 12b3f3a6e4 [CALCITE-5649] Get row count statistics from ReflectiveSchema add 523bbf3730 Revert [CALCITE-6222] Mysql does not have to_char function add dc4ce8b31c [CALCITE-6063] If ARRAY subquery has ORDER BY (without LIMIT), rows are not sorted add 75511b82ab [CALCITE-6199] Trim unused fields for SNAPSHOT and SAMPLE if table has VIRTUAL column add de39888754 [CALCITE-6208] Update JSON_VALUE return type inference to make explicit array return types be nullable with nullable elements add 351ddeb47b [CALCITE-6231] JDBC adapter generates "UNNEST" when it should generate "UNNEST ... WITH ORDINALITY" add 2aabf210dc [CALCITE-6234] Add tests on SqlOperatorTest for to_char function add 4f5a08f542 Add .gitignore and .ratignore for jenv add cf91b789d1 [CALCITE-6223] Add MAP_CONTAINS_KEY function (enabled in Spark library) add b5091fe94d [CALCITE-6241] Enable a few existing functions to Spark library add f7069cc524 [CALCITE-5647] RelMdPopulationSize should use mq.getRowCount(rel) instead of rel.estimateRowCount(mq) add f837ffa877 [CALCITE-6228] ELEMENT function infers incorrect return type add 2e384ed7d0 [CALCITE-6238] Exception while evaluating ROUND/TRUNCATE functions add b64dcff73d [CALCITE-6256] Incorrect rendering of HTML on InnoDB adapter page add df5459250a [CALCITE-6247] BigQuery FORMAT_DATE function handles incorrectly the %e format specifier add 8fd9518887 [CALCITE-6243] Upgrade Cassandra to 4.1.3 and DataStax driver for Cassandra to 4.17.0 add ec0dc3c886 [CALCITE-6214] Remove DISTINCT in aggregate function if field is unique add abf462a7dd [CALCITE-6251] InnerEnumerator in EnumerableDefaults::correlateBatchJoin is not closed add e05b0473a0 [CALCITE-6250] Limitations of MongoDB adapter are not documented add c774c313a8 [CALCITE-6248] Illegal dates are accepted by casts add a19a954738 [CALCITE-6249] RelNode::estimatedRowCount should not be used in computeSelfCost add 31d66e797d [CALCITE-6273] Add sqrt negative test in SqlOperatorTest add 4369e88b15 [CALCITE-6258] Map value constructor is unparsed incorrectly for PrestoSqlDialect add fca7a27a3a [CALCITE-6255] Support BigQuery-style JSON_OBJECT invocation syntax add 39bf99bdd1 [CALCITE-6268] Support implementing custom JdbcSchema add 7ca6fc4bdd Fix CalciteResource.properties add 331f985944 [CALCITE-6254] Support table function calls in FROM clause without TABLE() wrapper add c49792f9c7 [CALCITE-6032] Multilevel correlated query is failing in RelDecorrelator code path add 6ba31302be [CALCITE-6257] StarRocks dialect implementation add 022d878a73 [CALCITE-6261] AssertionError with field pruning & duplicate agg calls add 3bce23210b [CALCITE-6252] BigQuery FORMAT_DATE uses the wrong calendar for Julian dates add 85d96207ef Clarify semantics of SAFE* functions add 96485c0ec8 Cosmetic add 2558c13cdb [CALCITE-6219] 'Must-filter' columns add c546d4a59c [CALCITE-6224] Add LOG2 function (enabled in MySQL, Spark library) add d64ee0037d Remove unused parameter from MapConstructor in Parser.jj add 8c1ec07ebc [CALCITE-6290] Incorrect return type for BigQuery TRUNC add 42c39a77b9 [CALCITE-5893] Wrong NULL operand behavior of ARRAY_CONTAINS/ARRAY_EXCEPT/ARRAY_INTERSECT In Spark Library add d16b08257a Add document for the TRUNCATE TABLE DDL statement add 93242984f8 Improve documentation for Strong add ad08ce5fbd Link to calcite notes about runnable examples and concise documents add d4e88302e3 [CALCITE-2040] Create adapter for Apache Arrow add 2ce3062633 [CALCITE-6306] JDBC adapter should not generate FILTER (WHERE) in MySQL and StarRocks dialect add 90beb01b07 [CALCITE-6283] Function ARRAY_APPEND with a NULL array argument crashes with NullPointerException add b0034c9ed8 [CALCITE-6262] CURRENT_TIMESTAMP(P) ignores DataTypeSystem#getMaxPrecision add d8804b4687 [CALCITE-6278] Add REGEXP, REGEXP_LIKE function (enabled in Spark library) add fe0da064dc [CALCITE-6317] Incorrect constant replacement when group keys are NULL add 6d3a81de13 [CALCITE-6138] Parser does not accept TIMESTAMP WITH TIME ZONE as a data type add 325b1ba845 Fix style check rule that breaks the build add b412fa4ac0 [CALCITE-6323] Serialize return type during RelJson.toJson(RexNode node) for SqlKind.SAFE_CAST add f0dc2b0aea [CALCITE-5976] Function ARRAY_PREPEND/ARRAY_APPEND/ARRAY_INSERT gives exception when inserted element type not equals array component type add 9c0d690439 [CALCITE-6314] Add RANDOM function (enabled in Postgres library) add 4823cb7760 [CALCITE-6015] AssertionError during optimization of EXTRACT expression add 14ade3a720 [CALCITE-6337] Distinguish naked measure support between inside and outside aggregation add d5b6b5c01f [CALCITE-6338] RelMdCollation#project can return an incomplete list of collations in the presence of aliasing add 0d21496f5f [CALCITE-6282] Avatica ignores time precision when returning TIME results add ef8118520e [CALCITE-6248] Illegal dates are accepted by casts add f948850b7c [CALCITE-6321] Add copy(List<RexLiteral>) method to Window class add 1cfb72e905 [CALCITE-6347] ARRAY_REPEAT with a string argument causes a compiler crash add 4c695885a5 [CALCITE-6348] ARRAY_OVERLAP with a NULL argument crashes the compiler add 1f5ba75d68 [CALCITE-6356] Upgrade Calcite to Avatica 1.25.0 add 4e6a320bf4 [CALCITE-6265] Type coercion is failing for numeric values in prepared statements add 181784b8d3 [CALCITE-6353] Optimization CoreRules.PROJECT_REDUCE_EXPRESSIONS crashes while optimizing ARRAY_CONCAT expression add 8c98d4210a [CALCITE-6332] Optimization CoreRules.AGGREGATE_EXPAND_DISTINCT_AGGREGATES_TO_JOIN produces incorrect results for aggregates with groupSets add b91c0c00d2 [CALCITE-6309] Add REGEXP_LIKE function (enabled in MySQL, Oracle, PostgreSQL and Spark libraries) add 9bd371316d [CALCITE-6285] Function ARRAY_INSERT produces an incorrect result for negative indices add 283c1c111d [CALCITE-6333] NullPointerException in AggregateExpandDistinctAggregatesRule.doRewrite when rewriting filtered distinct aggregation add 91115539f9 [CALCITE-6349] CoreRules.PROJECT_REDUCE_EXPRESSIONS crashes on expressions with ARRAY_REPEAT add 889f416158 [CALCITE-6315] Support PostgreSQL TO_CHAR, TO_DATE, TO_TIMESTAMP add aba64f0b21 [CALCITE-6210] Cast to VARBINARY causes an assertion failure add 4ce1e1651e [CALCITE-6355] RelToSqlConverter[ORDER BY] generates an incorrect order by when NULLS LAST is used in non-projected field add e7c1f0c9ba [CALCITE-6359] Update GitHub Actions workflows to use docker compose v2 add cc1d46a4c4 [CALCITE-2980] Implement the FORMAT clause of the CAST operator add 152801428f [CALCITE-6265] Type coercion is failing for numeric values in prepared statements Address some issues on the original patch add b4bcd3b69a [CALCITE-6345] Intervals with more than 100 years are not supported add 0551b89033 [CALCITE-5289] Assertion failure in MultiJoinOptimizeBushyRule add 6d4f80e90b [CALCITE-6378] Bump Redis Docker image from 2.8.19 to 7.2.4 add 4a977fe2a2 Rectify missing/broken BQ date-time format elements add 1566663494 [CALCITE-6316] Update Javadoc for CALCITE-5607 add f78dd940d7 [CALCITE-6385] LintTest fails when run in source distribution add aa8d81bf1f [CALCITE-6384] Add ASF header to buildcache.yml, gradle-wrapper-validation.yml add 3e633f6278 [CALCITE-6387] Make Arrow adapter passing tests with jdk17+ add 1506857f40 [CALCITE-6390] Exclude Arrow project on Windows builds add 61ee73e951 [CALCITE-6302] Release Calcite 1.37.0 This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (be22d5fc7f) \ N -- N -- N refs/heads/site (61ee73e951) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. No new revisions were added by this update. Summary of changes: .github/workflows/buildcache.yml | 14 + .github/workflows/gradle-wrapper-validation.yml | 14 + .github/workflows/main.yml | 2 +- .../publish-non-release-website-updates.yml | 2 +- .github/workflows/publish-website-on-release.yml | 4 +- .gitignore | 3 + .mailmap | 7 +- .ratignore | 3 + LICENSE | 13 +- NOTICE | 2 - arrow/build.gradle.kts | 49 + {geode => arrow}/gradle.properties | 4 +- .../adapter/arrow/AbstractArrowEnumerator.java | 82 + .../calcite/adapter/arrow/ArrowEnumerable.java | 61 + .../calcite/adapter/arrow/ArrowFieldType.java | 102 + .../apache/calcite/adapter/arrow/ArrowFilter.java | 62 + .../adapter/arrow/ArrowFilterEnumerator.java | 99 + .../apache/calcite/adapter/arrow/ArrowMethod.java | 29 +- .../apache/calcite/adapter/arrow/ArrowProject.java | 53 +- .../adapter/arrow/ArrowProjectEnumerator.java | 76 + .../org/apache/calcite/adapter/arrow/ArrowRel.java | 53 +- .../apache/calcite/adapter/arrow/ArrowRules.java | 173 ++ .../apache/calcite/adapter/arrow/ArrowSchema.java | 119 ++ .../calcite/adapter/arrow/ArrowSchemaFactory.java | 29 +- .../apache/calcite/adapter/arrow/ArrowTable.java | 194 ++ .../calcite/adapter/arrow/ArrowTableScan.java | 64 +- .../adapter/arrow/ArrowToEnumerableConverter.java | 89 + .../calcite/adapter/arrow/ArrowTranslator.java | 202 ++ .../calcite/adapter/arrow}/package-info.java | 4 +- .../calcite/adapter/arrow/ArrowAdapterTest.java | 712 +++++++ .../apache/calcite/adapter/arrow/ArrowData.java | 222 ++ .../calcite/adapter/arrow/ArrowExtension.java | 71 + .../src/test/resources/arrow-model.json | 8 +- .../org/apache/calcite/test/BabelQuidemTest.java | 10 + babel/src/test/resources/sql/postgresql.iq | 15 + babel/src/test/resources/sql/redshift.iq | 4 +- babel/src/test/resources/sql/spark.iq | 243 +++ bom/build.gradle.kts | 19 +- build.gradle.kts | 8 +- .../calcite/adapter/cassandra/CassandraFilter.java | 4 + .../apache/calcite/test/CassandraAdapterTest.java | 3 - .../apache/calcite/test/CassandraExtension.java | 53 +- core/src/main/codegen/templates/Parser.jj | 152 +- .../calcite/adapter/enumerable/EnumUtils.java | 3 + .../enumerable/EnumerableBatchNestedLoopJoin.java | 4 +- .../adapter/enumerable/EnumerableHashJoin.java | 4 +- .../adapter/enumerable/EnumerableMergeJoin.java | 4 +- .../enumerable/EnumerableNestedLoopJoin.java | 4 +- .../adapter/enumerable/EnumerableRelFactories.java | 6 +- .../calcite/adapter/enumerable/RexImpTable.java | 59 +- .../adapter/enumerable/RexToLixTranslator.java | 506 +++-- .../calcite/adapter/java/ReflectiveSchema.java | 17 +- .../calcite/adapter/jdbc/JdbcCatalogSchema.java | 14 +- .../org/apache/calcite/adapter/jdbc/JdbcRules.java | 11 +- .../apache/calcite/adapter/jdbc/JdbcSchema.java | 14 +- .../calcite/config/CalciteSystemProperty.java | 6 + .../apache/calcite/interpreter/AggregateNode.java | 4 +- .../org/apache/calcite/interpreter/Bindables.java | 5 +- .../apache/calcite/jdbc/CalciteConnectionImpl.java | 5 +- .../org/apache/calcite/jdbc/CalcitePrepare.java | 5 +- .../org/apache/calcite/jdbc/CalciteSchema.java | 18 +- .../apache/calcite/jdbc/JavaTypeFactoryImpl.java | 2 + .../org/apache/calcite/materialize/Lattice.java | 9 +- .../apache/calcite/materialize/LatticeNode.java | 7 +- .../calcite/materialize/MaterializationActor.java | 5 +- .../java/org/apache/calcite/plan/Convention.java | 2 +- .../java/org/apache/calcite/plan/RelOptRules.java | 5 + .../java/org/apache/calcite/plan/RelOptUtil.java | 20 +- .../main/java/org/apache/calcite/plan/Strong.java | 4 +- .../apache/calcite/plan/VisitorDataContext.java | 1 + .../org/apache/calcite/profile/ProfilerImpl.java | 11 +- .../org/apache/calcite/rel/RelCollationImpl.java | 6 +- .../org/apache/calcite/rel/core/AggregateCall.java | 9 +- .../org/apache/calcite/rel/core/Correlate.java | 4 +- .../java/org/apache/calcite/rel/core/Match.java | 5 +- .../java/org/apache/calcite/rel/core/SetOp.java | 5 +- .../org/apache/calcite/rel/core/TableModify.java | 11 +- .../org/apache/calcite/rel/core/TableScan.java | 2 +- .../java/org/apache/calcite/rel/core/Values.java | 4 + .../apache/calcite/rel/externalize/RelJson.java | 16 + .../java/org/apache/calcite/rel/hint/RelHint.java | 11 +- .../calcite/rel/metadata/BuiltInMetadata.java | 10 +- .../metadata/ReflectiveRelMetadataProvider.java | 5 +- .../calcite/rel/metadata/RelMdCollation.java | 20 +- .../rel/metadata/RelMdColumnUniqueness.java | 145 +- .../calcite/rel/metadata/RelMdPopulationSize.java | 2 +- .../calcite/rel/metadata/RelMdPredicates.java | 68 +- .../org/apache/calcite/rel/metadata/RelMdSize.java | 6 +- .../calcite/rel/metadata/RelMdUniqueKeys.java | 203 +- .../org/apache/calcite/rel/metadata/RelMdUtil.java | 7 +- .../calcite/rel/metadata/RelMetadataQuery.java | 4 +- .../calcite/rel/rel2sql/RelToSqlConverter.java | 9 +- .../apache/calcite/rel/rel2sql/SqlImplementor.java | 53 +- .../AggregateExpandDistinctAggregatesRule.java | 25 +- .../rules/AggregateExpandWithinDistinctRule.java | 7 +- .../calcite/rel/rules/AggregateStarTableRule.java | 4 +- .../apache/calcite/rel/rules/CalcRelSplitter.java | 6 +- .../org/apache/calcite/rel/rules/CoreRules.java | 2 +- .../apache/calcite/rel/rules/DateRangeRules.java | 16 +- .../apache/calcite/rel/rules/FilterToCalcRule.java | 2 +- .../rel/rules/MultiJoinOptimizeBushyRule.java | 11 + .../calcite/rel/rules/ProjectToWindowRule.java | 5 +- .../calcite/rel/rules/ReduceExpressionsRule.java | 7 + .../rel/rules/SingleValuesOptimizationRules.java | 397 ++++ .../materialize/MaterializedViewAggregateRule.java | 8 +- .../calcite/rel/type/RelDataTypeFactory.java | 11 + .../calcite/rel/type/RelDataTypeFactoryImpl.java | 3 +- .../apache/calcite/rel/type/RelDataTypeSystem.java | 2 +- .../calcite/rel/type/RelDataTypeSystemImpl.java | 8 + .../java/org/apache/calcite/rex/RexBiVisitor.java | 2 + .../org/apache/calcite/rex/RexBiVisitorImpl.java | 4 + .../java/org/apache/calcite/rex/RexBuilder.java | 139 +- .../main/java/org/apache/calcite/rex/RexCall.java | 4 + .../java/org/apache/calcite/rex/RexChecker.java | 43 +- .../org/apache/calcite/rex/RexExecutorImpl.java | 16 +- .../org/apache/calcite/rex/RexFieldAccess.java | 7 +- .../org/apache/calcite/rex/RexInterpreter.java | 8 + .../java/org/apache/calcite/rex/RexLambda.java | 100 + .../{RexPatternFieldRef.java => RexLambdaRef.java} | 42 +- .../java/org/apache/calcite/rex/RexLiteral.java | 46 +- .../main/java/org/apache/calcite/rex/RexOver.java | 6 +- .../org/apache/calcite/rex/RexProgramBuilder.java | 35 +- .../java/org/apache/calcite/rex/RexShuttle.java | 9 + .../java/org/apache/calcite/rex/RexSimplify.java | 18 +- .../main/java/org/apache/calcite/rex/RexSlot.java | 2 +- .../java/org/apache/calcite/rex/RexSubQuery.java | 5 +- .../main/java/org/apache/calcite/rex/RexUtil.java | 39 +- .../java/org/apache/calcite/rex/RexVisitor.java | 4 + .../org/apache/calcite/rex/RexVisitorImpl.java | 8 + .../java/org/apache/calcite/rex/RexWindow.java | 5 +- .../apache/calcite/runtime/AutomatonBuilder.java | 8 +- .../apache/calcite/runtime/CalciteException.java | 3 +- .../apache/calcite/runtime/CalciteResource.java | 13 +- .../java/org/apache/calcite/runtime/Pattern.java | 7 +- .../org/apache/calcite/runtime/SqlFunctions.java | 157 +- .../java/org/apache/calcite/schema/Schemas.java | 5 +- .../calcite/sql/SqlAbstractDateTimeLiteral.java | 2 +- .../org/apache/calcite/sql/SqlBasicFunction.java | 51 +- .../apache/calcite/sql/SqlBasicTypeNameSpec.java | 27 +- .../java/org/apache/calcite/sql/SqlDialect.java | 74 +- .../apache/calcite/sql/SqlDialectFactoryImpl.java | 3 + .../calcite/sql/SqlGroupedWindowFunction.java | 8 +- .../java/org/apache/calcite/sql/SqlInsert.java | 3 +- .../apache/calcite/sql/SqlIntervalQualifier.java | 10 +- .../apache/calcite/sql/SqlJdbcDataTypeName.java | 2 + .../main/java/org/apache/calcite/sql/SqlJoin.java | 6 +- .../main/java/org/apache/calcite/sql/SqlKind.java | 23 +- .../java/org/apache/calcite/sql/SqlLambda.java | 125 ++ .../java/org/apache/calcite/sql/SqlLiteral.java | 28 + .../org/apache/calcite/sql/SqlMatchRecognize.java | 12 +- .../calcite/sql/SqlNullTreatmentOperator.java | 6 +- .../org/apache/calcite/sql/SqlRowTypeNameSpec.java | 3 +- .../org/apache/calcite/sql/SqlTimeLiteral.java | 6 +- .../{SqlTimeLiteral.java => SqlTimeTzLiteral.java} | 34 +- .../apache/calcite/sql/SqlTimestampLiteral.java | 10 +- ...tampLiteral.java => SqlTimestampTzLiteral.java} | 38 +- .../org/apache/calcite/sql/SqlUnknownLiteral.java | 4 + .../apache/calcite/sql/SqlWindowTableFunction.java | 5 +- .../java/org/apache/calcite/sql/SqlWithItem.java | 10 +- .../java/org/apache/calcite/sql/SqlWriter.java | 6 +- .../calcite/sql/advise/SqlAdvisorValidator.java | 2 +- .../calcite/sql/ddl/SqlCreateForeignSchema.java | 5 +- .../apache/calcite/sql/ddl/SqlCreateFunction.java | 8 +- .../apache/calcite/sql/ddl/SqlCreateTableLike.java | 22 +- .../calcite/sql/dialect/BigQuerySqlDialect.java | 7 + .../calcite/sql/dialect/ClickHouseSqlDialect.java | 50 +- .../calcite/sql/dialect/ExasolSqlDialect.java | 20 +- .../calcite/sql/dialect/JethroDataSqlDialect.java | 2 +- .../calcite/sql/dialect/MysqlSqlDialect.java | 3 + .../calcite/sql/dialect/PostgresqlSqlDialect.java | 5 +- .../calcite/sql/dialect/PrestoSqlDialect.java | 71 +- .../calcite/sql/dialect/RedshiftSqlDialect.java | 4 + .../calcite/sql/dialect/SnowflakeSqlDialect.java | 37 + .../calcite/sql/dialect/SparkSqlDialect.java | 4 + .../calcite/sql/dialect/StarRocksSqlDialect.java | 133 ++ .../calcite/sql/fun/SqlAbstractTimeFunction.java | 5 +- .../calcite/sql/fun/SqlAnyValueAggFunction.java | 6 +- .../apache/calcite/sql/fun/SqlAvgAggFunction.java | 4 +- .../calcite/sql/fun/SqlBasicAggFunction.java | 39 +- .../calcite/sql/fun/SqlBitOpAggFunction.java | 25 +- .../apache/calcite/sql/fun/SqlCastFunction.java | 27 +- .../calcite/sql/fun/SqlCovarAggFunction.java | 4 +- .../sql/fun/SqlFirstLastValueAggFunction.java | 6 +- .../apache/calcite/sql/fun/SqlFloorFunction.java | 6 +- .../calcite/sql/fun/SqlJsonValueFunction.java | 24 +- .../calcite/sql/fun/SqlLeadLagAggFunction.java | 5 +- .../org/apache/calcite/sql/fun/SqlLibrary.java | 10 +- .../calcite/sql/fun/SqlLibraryOperators.java | 257 ++- .../calcite/sql/fun/SqlMinMaxAggFunction.java | 6 +- .../calcite/sql/fun/SqlQuantifyOperator.java | 8 +- .../apache/calcite/sql/fun/SqlRandFunction.java | 52 - .../calcite/sql/fun/SqlRegrCountAggFunction.java | 4 +- .../calcite/sql/fun/SqlStdOperatorTable.java | 26 +- .../calcite/sql/fun/SqlSubstringFunction.java | 20 +- .../apache/calcite/sql/parser/SqlParserUtil.java | 61 +- .../apache/calcite/sql/pretty/SqlPrettyWriter.java | 5 +- .../sql/type/ArrayElementOperandTypeChecker.java | 41 +- .../org/apache/calcite/sql/type/BasicSqlType.java | 6 +- .../apache/calcite/sql/type/FunctionSqlType.java | 64 + .../calcite/sql/type/MatchReturnTypeInference.java | 7 +- .../calcite/sql/type/NonNullableAccessors.java | 6 + .../NotNullOperandTypeChecker.java} | 48 +- .../org/apache/calcite/sql/type/OperandTypes.java | 396 +++- .../org/apache/calcite/sql/type/ReturnTypes.java | 44 +- .../calcite/sql/type/SqlOperandCountRanges.java | 6 +- .../sql/type/SqlReturnTypeInferenceChain.java | 5 +- .../calcite/sql/type/SqlTypeAssignmentRule.java | 9 + .../calcite/sql/type/SqlTypeCoercionRule.java | 45 + .../sql/type/SqlTypeExplicitPrecedenceList.java | 10 +- .../calcite/sql/type/SqlTypeFactoryImpl.java | 6 + .../org/apache/calcite/sql/type/SqlTypeFamily.java | 15 +- .../org/apache/calcite/sql/type/SqlTypeName.java | 32 +- .../calcite/sql/type/SqlTypeTransformCascade.java | 5 +- .../apache/calcite/sql/type/SqlTypeTransforms.java | 6 +- .../org/apache/calcite/sql/type/SqlTypeUtil.java | 37 +- .../calcite/sql/validate/AbstractNamespace.java | 34 +- .../apache/calcite/sql/validate/AggChecker.java | 2 +- .../calcite/sql/validate/DelegatingNamespace.java | 2 +- .../calcite/sql/validate/DelegatingScope.java | 9 +- .../calcite/sql/validate/IdentifierNamespace.java | 47 +- ...ecognizeNamespace.java => LambdaNamespace.java} | 26 +- .../org/apache/calcite/sql/validate/ListScope.java | 4 +- ...{ParameterNamespace.java => SemanticTable.java} | 46 +- .../calcite/sql/validate/SqlLambdaScope.java | 80 + .../apache/calcite/sql/validate/SqlQualified.java | 27 +- .../apache/calcite/sql/validate/SqlValidator.java | 53 +- .../calcite/sql/validate/SqlValidatorImpl.java | 207 +- .../sql/validate/SqlValidatorNamespace.java | 9 +- .../calcite/sql/validate/SqlValidatorUtil.java | 84 +- .../calcite/sql/validate/TableNamespace.java | 11 + .../calcite/sql/validate/WithItemNamespace.java | 1 + .../apache/calcite/sql/validate/WithNamespace.java | 6 + .../validate/implicit/AbstractTypeCoercion.java | 16 + .../calcite/sql2rel/ReflectiveConvertletTable.java | 7 +- .../apache/calcite/sql2rel/RelFieldTrimmer.java | 85 +- .../calcite/sql2rel/SqlNodeToRexConverterImpl.java | 25 +- .../apache/calcite/sql2rel/SqlToRelConverter.java | 70 +- .../calcite/sql2rel/StandardConvertletTable.java | 18 +- .../main/java/org/apache/calcite/tools/Hoist.java | 11 +- .../java/org/apache/calcite/tools/RelBuilder.java | 123 +- .../src/main/java/org/apache/calcite/util/Bug.java | 27 +- .../org/apache/calcite/util/BuiltInMethod.java | 22 +- .../java/org/apache/calcite/util/DateString.java | 17 +- .../org/apache/calcite/util/ImmutableIntList.java | 20 +- .../java/org/apache/calcite/util/JdbcTypeImpl.java | 10 +- .../java/org/apache/calcite/util/ReflectUtil.java | 2 +- .../main/java/org/apache/calcite/util/Sources.java | 5 +- .../calcite/util/TimeWithTimeZoneString.java | 20 +- .../org/apache/calcite/util/TimestampString.java | 7 +- .../calcite/util/TimestampWithTimeZoneString.java | 23 +- .../main/java/org/apache/calcite/util/Util.java | 10 +- .../calcite/util/format/FormatElementEnum.java | 247 ++- .../apache/calcite/util/format/FormatModels.java | 83 +- .../org/apache/calcite/util/mapping/Mappings.java | 4 +- .../calcite/runtime/CalciteResource.properties | 7 +- .../apache/calcite/examples/RelBuilderExample.java | 2 +- .../calcite/jdbc/CalciteRemoteDriverTest.java | 2 +- .../org/apache/calcite/plan/RelWriterTest.java | 115 +- .../calcite/rel/rel2sql/RelToSqlConverterTest.java | 846 +++++++- .../org/apache/calcite/rex/RexBuilderTest.java | 80 +- .../org/apache/calcite/rex/RexExecutorTest.java | 22 + .../apache/calcite/rex/RexLosslessCastTest.java | 6 + .../java/org/apache/calcite/sql/SqlNodeTest.java | 49 + .../apache/calcite/sql/test/SqlEqualsDeepTest.java | 54 - .../calcite/sql/test/SqlPrettyWriterTest.java | 24 + .../calcite/sql/type/RelDataTypeSystemTest.java | 54 +- .../calcite/sql/type/SqlTypeFactoryTest.java | 2 + .../apache/calcite/sql/type/SqlTypeUtilTest.java | 2 +- .../org/apache/calcite/test/JdbcAdapterTest.java | 11 + .../java/org/apache/calcite/test/JdbcTest.java | 278 ++- .../java/org/apache/calcite/test/LintTest.java | 41 +- .../calcite/test/MaterializedViewTester.java | 3 +- .../apache/calcite/test/ReflectiveSchemaTest.java | 36 + .../org/apache/calcite/test/RelBuilderTest.java | 106 + .../org/apache/calcite/test/RelMetadataTest.java | 409 +++- .../org/apache/calcite/test/RelOptRulesTest.java | 209 +- .../org/apache/calcite/test/SqlFunctionsTest.java | 18 + .../apache/calcite/test/SqlToRelConverterTest.java | 226 +++ .../calcite/test/SqlValidatorFeatureTest.java | 19 +- .../org/apache/calcite/test/SqlValidatorTest.java | 380 +++- .../calcite/test/TypeCoercionConverterTest.java | 8 + .../org/apache/calcite/test/TypeCoercionTest.java | 2 +- .../test/enumerable/EnumerableCorrelateTest.java | 4 +- .../test/enumerable/EnumerableHashJoinTest.java | 4 +- .../test/enumerable/EnumerableRepeatUnionTest.java | 5 +- .../org/apache/calcite/util/FormatModelTest.java | 4 +- .../java/org/apache/calcite/util/UtilTest.java | 8 +- .../calcite/util/format/FormatElementEnumTest.java | 120 +- .../GeneratedMetadata_PredicatesHandler.java | 2 + .../GeneratedMetadata_UniqueKeysHandler.java | 2 + .../calcite/sql/test/SqlPrettyWriterTest.xml | 7 + .../org/apache/calcite/test/RelOptRulesTest.xml | 418 +++- .../apache/calcite/test/SqlToRelConverterTest.xml | 244 ++- .../calcite/test/TypeCoercionConverterTest.xml | 12 + core/src/test/resources/sql/cast-with-format.iq | 683 ++++--- core/src/test/resources/sql/conditions.iq | 7 +- core/src/test/resources/sql/join.iq | 151 ++ core/src/test/resources/sql/lambda.iq | 104 + core/src/test/resources/sql/misc.iq | 25 +- core/src/test/resources/sql/operator.iq | 16 +- core/src/test/resources/sql/stream.iq | 242 +-- core/src/test/resources/sql/sub-query.iq | 102 +- .../apache/calcite/adapter/druid/DruidTable.java | 7 +- .../apache/calcite/adapter/druid/DruidType.java | 2 +- .../adapter/elasticsearch/ElasticsearchSchema.java | 5 +- .../elasticsearch/ElasticsearchSchemaFactory.java | 5 +- .../adapter/elasticsearch/PredicateAnalyzer.java | 12 +- .../calcite/adapter/elasticsearch/Scrolling.java | 7 +- .../elasticsearch/EmbeddedElasticsearchNode.java | 10 +- .../test/java/org/apache/calcite/test/CsvTest.java | 9 + .../apache/calcite/adapter/file/CsvEnumerator.java | 3 +- .../calcite/adapter/file/CsvStreamReader.java | 12 +- .../calcite/adapter/geode/rel/GeodeFilter.java | 7 +- .../calcite/adapter/geode/rel/GeodeRules.java | 5 +- .../adapter/geode/rel/GeodeEmbeddedPolicy.java | 8 +- gradle.properties | 32 +- .../calcite/adapter/innodb/IndexCondition.java | 2 +- .../apache/calcite/linq4j/EnumerableDefaults.java | 11 +- .../org/apache/calcite/linq4j/ModularInteger.java | 6 +- .../calcite/linq4j/tree/ConstantExpression.java | 27 +- .../apache/calcite/linq4j/tree/Expressions.java | 56 +- .../calcite/linq4j/tree/OptimizeShuttle.java | 14 +- .../org/apache/calcite/linq4j/tree/Primitive.java | 11 + .../apache/calcite/linq4j/test/InlinerTest.java | 30 + .../org/apache/calcite/adapter/pig/PigFilter.java | 6 +- .../calcite/adapter/pig/PigRelFactories.java | 5 +- .../java/org/apache/calcite/piglet/PigTypes.java | 2 +- .../java/org/apache/calcite/test/PigRelExTest.java | 8 +- plus/build.gradle.kts | 11 + .../adapter/os/AbstractBaseScannableTable.java | 33 +- ...ableFunction.java => CpuInfoTableFunction.java} | 60 +- ...ableFunction.java => CpuTimeTableFunction.java} | 59 +- .../apache/calcite/adapter/os/DuTableFunction.java | 32 +- .../calcite/adapter/os/FilesTableFunction.java | 33 +- .../adapter/os/GitCommitsTableFunction.java | 28 +- ...n.java => InterfaceAddressesTableFunction.java} | 56 +- ...ion.java => InterfaceDetailsTableFunction.java} | 64 +- .../calcite/adapter/os/JavaInfoTableFunction.java | 71 + .../calcite/adapter/os/JpsTableFunction.java | 33 +- ...eFunction.java => MemoryInfoTableFunction.java} | 59 +- ...TableFunction.java => MountsTableFunction.java} | 57 +- .../org/apache/calcite/adapter/os/OsQuery.java | 70 + .../org/apache/calcite/adapter/os/OsQueryType.java | 82 + ...leFunction.java => OsVersionTableFunction.java} | 56 +- .../apache/calcite/adapter/os/PsTableFunction.java | 33 +- .../org/apache/calcite/adapter/os/SqlShell.java | 37 +- .../calcite/adapter/os/StdinTableFunction.java | 34 +- ...eFunction.java => SystemInfoTableFunction.java} | 69 +- .../calcite/adapter/os/VmstatTableFunction.java | 30 +- .../calcite/adapter/utils/OsQueryTableUtil.java | 250 +++ .../calcite/adapter/utils}/package-info.java | 4 +- .../apache/calcite/adapter/os/OsAdapterTest.java | 97 +- .../calcite/adapter/redis/RedisSchemaFactory.java | 12 +- .../calcite/adapter/redis/RedisCaseBase.java | 2 +- release/build.gradle.kts | 4 +- .../apache/calcite/server/ServerDdlExecutor.java | 9 +- server/src/test/resources/sql/table.iq | 45 + settings.gradle.kts | 1 + site/_data/contributors.yml | 40 +- site/_docs/adapter.md | 1 + site/_docs/arrow_adapter.md | 83 + site/_docs/innodb_adapter.md | 7 +- site/_docs/os_adapter.md | 13 +- site/_docs/reference.md | 145 +- site/_docs/tutorial.md | 2 +- .../config/licenses/{gridsim => gridism}/LICENSE | 0 src/main/config/licenses/html5shiv/LICENSE | 22 - src/main/config/licenses/respond/LICENSE | 20 - .../apache/calcite/sql/parser/SqlParserTest.java | 140 +- .../apache/calcite/sql/test/AbstractSqlTester.java | 6 +- .../calcite/sql/test/SqlOperatorFixture.java | 12 +- .../java/org/apache/calcite/sql/test/SqlTests.java | 20 + .../org/apache/calcite/test/CalciteAssert.java | 2 +- .../java/org/apache/calcite/test/IntervalTest.java | 38 +- .../java/org/apache/calcite/test/Matchers.java | 4 +- .../apache/calcite/test/MockSqlOperatorTable.java | 22 +- .../java/org/apache/calcite/test/QuidemTest.java | 9 +- .../test/ReflectiveSchemaWithoutRowCount.java | 24 +- .../apache/calcite/test/RelMetadataFixture.java | 5 +- .../org/apache/calcite/test/SqlOperatorTest.java | 2142 +++++++++++++++----- .../apache/calcite/test/SqlValidatorFixture.java | 6 +- .../calcite/test/catalog/MockCatalogReader.java | 65 +- .../test/catalog/MustFilterMockCatalogReader.java | 84 + .../calcite/benchmarks/PreconditionTest.java | 6 +- 384 files changed, 15891 insertions(+), 3429 deletions(-) create mode 100644 arrow/build.gradle.kts copy {geode => arrow}/gradle.properties (92%) create mode 100644 arrow/src/main/java/org/apache/calcite/adapter/arrow/AbstractArrowEnumerator.java create mode 100644 arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowEnumerable.java create mode 100644 arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowFieldType.java create mode 100644 arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowFilter.java create mode 100644 arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowFilterEnumerator.java copy mongodb/src/main/java/org/apache/calcite/adapter/mongodb/MongoMethod.java => arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowMethod.java (62%) copy cassandra/src/main/java/org/apache/calcite/adapter/cassandra/CassandraProject.java => arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowProject.java (61%) create mode 100644 arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowProjectEnumerator.java copy cassandra/src/main/java/org/apache/calcite/adapter/cassandra/CassandraRel.java => arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowRel.java (55%) create mode 100644 arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowRules.java create mode 100644 arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowSchema.java copy file/src/main/java/org/apache/calcite/adapter/file/FileSchemaFactory.java => arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowSchemaFactory.java (63%) create mode 100644 arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowTable.java copy file/src/main/java/org/apache/calcite/adapter/file/FileTableScan.java => arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowTableScan.java (51%) create mode 100644 arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowToEnumerableConverter.java create mode 100644 arrow/src/main/java/org/apache/calcite/adapter/arrow/ArrowTranslator.java copy {core/src/main/java/org/apache/calcite/sql/dialect => arrow/src/main/java/org/apache/calcite/adapter/arrow}/package-info.java (90%) create mode 100644 arrow/src/test/java/org/apache/calcite/adapter/arrow/ArrowAdapterTest.java create mode 100644 arrow/src/test/java/org/apache/calcite/adapter/arrow/ArrowData.java create mode 100644 arrow/src/test/java/org/apache/calcite/adapter/arrow/ArrowExtension.java copy file/src/test/resources/bug.json => arrow/src/test/resources/arrow-model.json (85%) create mode 100644 babel/src/test/resources/sql/spark.iq create mode 100644 core/src/main/java/org/apache/calcite/rel/rules/SingleValuesOptimizationRules.java create mode 100644 core/src/main/java/org/apache/calcite/rex/RexLambda.java copy core/src/main/java/org/apache/calcite/rex/{RexPatternFieldRef.java => RexLambdaRef.java} (59%) create mode 100644 core/src/main/java/org/apache/calcite/sql/SqlLambda.java copy core/src/main/java/org/apache/calcite/sql/{SqlTimeLiteral.java => SqlTimeTzLiteral.java} (62%) copy core/src/main/java/org/apache/calcite/sql/{SqlTimestampLiteral.java => SqlTimestampTzLiteral.java} (64%) create mode 100644 core/src/main/java/org/apache/calcite/sql/dialect/StarRocksSqlDialect.java delete mode 100644 core/src/main/java/org/apache/calcite/sql/fun/SqlRandFunction.java create mode 100644 core/src/main/java/org/apache/calcite/sql/type/FunctionSqlType.java copy core/src/main/java/org/apache/calcite/sql/{validate/TableScope.java => type/NotNullOperandTypeChecker.java} (53%) copy core/src/main/java/org/apache/calcite/sql/validate/{MatchRecognizeNamespace.java => LambdaNamespace.java} (66%) copy core/src/main/java/org/apache/calcite/sql/validate/{ParameterNamespace.java => SemanticTable.java} (52%) create mode 100644 core/src/main/java/org/apache/calcite/sql/validate/SqlLambdaScope.java delete mode 100644 core/src/test/java/org/apache/calcite/sql/test/SqlEqualsDeepTest.java create mode 100644 core/src/test/resources/sql/lambda.iq copy core/src/main/java/org/apache/calcite/schema/impl/AbstractTable.java => plus/src/main/java/org/apache/calcite/adapter/os/AbstractBaseScannableTable.java (60%) copy plus/src/main/java/org/apache/calcite/adapter/os/{DuTableFunction.java => CpuInfoTableFunction.java} (51%) copy plus/src/main/java/org/apache/calcite/adapter/os/{DuTableFunction.java => CpuTimeTableFunction.java} (51%) copy plus/src/main/java/org/apache/calcite/adapter/os/{DuTableFunction.java => InterfaceAddressesTableFunction.java} (51%) copy plus/src/main/java/org/apache/calcite/adapter/os/{DuTableFunction.java => InterfaceDetailsTableFunction.java} (51%) create mode 100644 plus/src/main/java/org/apache/calcite/adapter/os/JavaInfoTableFunction.java copy plus/src/main/java/org/apache/calcite/adapter/os/{DuTableFunction.java => MemoryInfoTableFunction.java} (51%) copy plus/src/main/java/org/apache/calcite/adapter/os/{DuTableFunction.java => MountsTableFunction.java} (53%) create mode 100644 plus/src/main/java/org/apache/calcite/adapter/os/OsQuery.java create mode 100644 plus/src/main/java/org/apache/calcite/adapter/os/OsQueryType.java copy plus/src/main/java/org/apache/calcite/adapter/os/{DuTableFunction.java => OsVersionTableFunction.java} (51%) copy plus/src/main/java/org/apache/calcite/adapter/os/{DuTableFunction.java => SystemInfoTableFunction.java} (50%) create mode 100644 plus/src/main/java/org/apache/calcite/adapter/utils/OsQueryTableUtil.java copy {core/src/main/java/org/apache/calcite/rel/type => plus/src/main/java/org/apache/calcite/adapter/utils}/package-info.java (89%) create mode 100644 site/_docs/arrow_adapter.md rename src/main/config/licenses/{gridsim => gridism}/LICENSE (100%) delete mode 100644 src/main/config/licenses/html5shiv/LICENSE delete mode 100644 src/main/config/licenses/respond/LICENSE copy core/src/main/java/org/apache/calcite/runtime/ArrayEnumeratorCursor.java => testkit/src/main/java/org/apache/calcite/test/ReflectiveSchemaWithoutRowCount.java (58%) create mode 100644 testkit/src/main/java/org/apache/calcite/test/catalog/MustFilterMockCatalogReader.java