This is an automated email from the ASF dual-hosted git repository.
zabetak pushed a change to branch site
in repository https://gitbox.apache.org/repos/asf/calcite.git.
discard ab27d0b Site: Remove vote email from release instructions, and minor
improvements
discard e6f7469 Site: Add upcoming talk about Morel and update past talks
section
discard cbdf91b Site: Remove contributors name from commit summary
discard 07cc2ae [CALCITE-4656] Broken CI links on develop web page
discard c27f3b7 Site: HTTP to HTTPS redirection is not working
discard 244a09f Site is not published due to bad yaml file suffix
discard 306fb3a Site: Deploy using .asf.yml
discard 8152a0d Site: Add upcoming talk at ApacheCon'21 and info about
tutorial at BOSS21
discard 12ef1ad Site: Add Vladimir Ozerov as committer
discard f10817c Site: Remove nowadays redundant minified javascript files
add de48e55 [CALCITE-4499] FilterJoinRule misses opportunity to push
filter to semijoin input
add 7f5e9b8 Site: Remove nowadays redundant minified javascript files
add e9443ed [CALCITE-4312] Improve content of prepareVote draft email
add 8213277 [CALCITE-4606] In Elasticsearch adapter, translate SEARCH
RexCall to termsQuery (Jacky Yin)
add e5477e7 [CALCITE-4619] `Full join` plan cannot be executed in MySQL
(Jiasen Sheng)
add 4e679f0 [CALCITE-4636] Switch out of agg mode when constructing
RelCollation for aggregate functions (Rafay)
add 58cbb46 [CALCITE-4655] JdbcTable.scan throws NullPointerException
(Ulrich Kramer)
add 8430023 [CALCITE-4158] In generated SQL, "*" should be followed by
space (NobiGo)
add d4a4c8b Site: Add Vladimir Ozerov as committer
add c1bf421 Site: Deploy using .asf.yml
add f928e07 [CALCITE-4614] Exasol dialect implementation (TJ Banghart)
add 85953ce [CALCITE-4644] Add PERCENTILE_CONT and PERCENTILE_DISC
functions (Rafay)
add 40baa00 [CALCITE-4638] VolcanoPlanner fails to recognize
transformation rule correctly in the top-down mode (Vladimir Ozerov)
add a59693e [CALCITE-4668] RelBuilder.join should convert Correlate to
Join if correlation variable is unused (James Starr)
add d46137a RelOptRulesTest improvements: - Provide relFn pattern
mechanism to test a RelNode function instead of a sql string - Refactor several
tests to use relFn - Refactor similar tests by using common auxiliary methods -
Correct auxiliary methods names (use "check" prefix instead of "test" prefix)
add 09a8a2f [CALCITE-4640] Propagate table scan hints to JDBC
add 138c2bc [CALCITE-3775] Implicit lookup methods in SimpleCalciteSchema
ignore case sensitivity parameter (Alon Eldar)
add d7290e7 [CALCITE-4674] Excess quotes in generated SQL when STAR is a
column alias
add 4066a34 [CALCITE-4675] Error executing query with SUM and
multiplication via JdbcAdapter
add c700e37 [CALCITE-4420] Some simple arithmetic operations can be
simplified
add 1da412a [CALCITE-4690] Error when executing query with CHARACTER SET
in Redshift
add 5e1ce04 [CALCITE-4623] SemiJoinRule should not match SEMI join
add 3c4dd30 [CALCITE-4692] Redshift does not support DOUBLE/TINYINT
datatypes (Narayanan Venkateswaran)
add ca03a4e Enable JdbcTest#testBushy and update expected plan (NobiGo)
add 288cab5 Site: Sort table of aggregate functions
add e04f3b0 [CALCITE-4661] Add MODE aggregate function (NobiGo)
add 2f7f9bc [CALCITE-4642] Use RelDataTypeSystem from Config in Planner
(Nick Riasanovsky)
add 39e77d7 [CALCITE-4673] If arguments to a table function are
correlation variables, SqlToRelConverter should eliminate duplicate variables
(Evgeniy Stanilovskiy)
add 96cbd70 Refactor RelToSqlConverterTest
add 8346167 [CALCITE-4485] JDBC adapter generates invalid SQL when one of
the joins is "INNER JOIN ... ON TRUE"
add 48126d3 [CALCITE-4706] JDBC adapter generates casts exceeding
Redshift's data types bounds
add 53ee1ba [CALCITE-4716] ClassCastException converting SARG in RelNode
to SQL
add 8a1535f [CALCITE-4652] AggregateExpandDistinctAggregatesRule must
cast top aggregates to original type (Taras Ledkov)
add dff28d1 Cosmetic
add d64fd60 [CALCITE-4724] In JDBC adapter for ClickHouse, implement
Values by generating SELECT without FROM (Liu Enze)
add 94e2f98 [CALCITE-4741] AbstractRelNode#getId can overflow into a
negative value causing CompileException in certain Enumerable implement methods
add 017c974 [CALCITE-4665] Allow Aggregate.groupKey to be a strict
superset of Aggregate.groupKeys (NobiGo)
add c7d1818 [CALCITE-4748] If there are duplicate GROUPING SETS, Calcite
should return duplicate rows (NobiGo)
add 4b4bb7f [CALCITE-4734] If there are duplicate RexNode in MutableCalc,
SubstitutionVisitor should return right rebuild RexNode (xurenhe)
add 51c0d92 [CALCITE-4584] Using function in partition by list of over
window cause converting exception (Wang Yanlin)
add 8c46299 [CALCITE-4726] Support aggregate calls with a FILTER clause
in AggregateExpandWithinDistinctRule (Will Noble)
add 48d4cfa [CALCITE-4760] RelBuilder creation fails with error 'No
suitable driver found for jdbc:calcite:' in shaded Calcite
add 474611c [CALCITE-4747]: clean all outdated edges from graph.edges
add 9b042be Site: Add upcoming talk at ApacheCon'21 and info about
tutorial at BOSS21
add d7e20ba [CALCITE-4766] Remove unreachable code from
SqlValidatorImpl#performUnconditionalRewrites for VALUES node (Jianhui Dong)
add f3baf34 Site is not published due to bad yaml file suffix
add 4d82c53 Add RelBuilder.lessThan, and use RelBuilder shorthands
add 053d9b7 [CALCITE-4742] Implement "SOME <>" sub-query (NobiGo)
add 60457b2 [CALCITE-4774] Materialized view recognition fails for
equivalent predicates (dz)
add a9f0036 [CALCITE-4767] JDBC adapter wrongly quotes backticks inside
BigQuery identifiers (Jack Scott)
add ce86af8 [CALCITE-4177] RelJson should throw if asked to deserialize a
call to an unknown operator (Xzh & Wang Yanlin)
add a36f5a2 [CALCITE-3935] Enhance Join-Materialization, support to
pull-up filters under join of left or right (xurenhe)
add 8ddb3f8 [CALCITE-4784] Ensure Correlate#requiredColumns is subset of
columns in left relation
add b03ca2f Remove obsolete/misleading comments in
RelOptUtil#classifyFilters
add 98d254d Site: Update jhyde's organization and add pronouns
add 4d185ee Site: Add michaelmior's pronouns
add b420caf Site: Add zabetak's pronouns
add 3af21db Site: HTTP to HTTPS redirection is not working
add d66f4c5 [CALCITE-4486] UNIQUE sub-query (NobiGo)
add 4b1e9ed [CALCITE-4789] Build is broken on Guava versions < 21
add 77b6755 [CALCITE-4796] Travis links in README.md should point to
'app.travis-ci.com' instead of 'travis-ci.org' (Alessandro Solimando)
add 1438503 [CALCITE-4772] PushProjector should retain alias when
handling RexCall (YuKong)
add b51a2e1 [CALCITE-4544] Deprecate Metadata API backed by Java
Reflection (James Starr)
add d65397a Replace deprecated com.google.common.io.Files.createTempDir()
with java.nio.file.Files.createTempDirectory() in ElasticSearch tests
add d4640d0 [CALCITE-4793]
CassandraAdapterDataTypesTest.testCollectionsInnerValues fails depending on the
user timezone (Alessandro Solimando)
add f4db84c [CALCITE-4773] RelDecorrelator's RemoveSingleAggregateRule
can produce result with wrong row type
add 5a2df22 [CALCITE-4656] Broken CI links on develop web page
add c7b3764 Site: Remove contributors name from commit summary
add a800546 Site: Add upcoming talk about Morel and update past talks
section
add 3f84d08 Site: Remove vote email from release instructions, and minor
improvements
add 56d5dda [CALCITE-3409] Add a method in RelOptMaterializations to
allow registering UnifyRule (xzh)
add f368cbe [CALCITE-4532] Correct code generated for primitive-object
ConstantExpression
add e533f4b Site: Update fengzhu's organization and add pronouns
add 219e41e [CALCITE-4779] GroupByList contains constant literal,
materialized view recognition failed (xzh)
add d6a2d69 [CALCITE-4790] Make Gradle pass the 'user.timezone' property
to the test JVM (Alessandro Solimando)
add 5b8ce9c [CALCITE-4805] Calcite should convert a small IN-list as if
the user had written OR, even if the IN-list contains NULL
add 511eecd [CALCITE-4787] Replace ImmutableBeans with Immutables in core
module
add b4d7d48 Bump JUnit5 to 5.8.1
add 49c1a6d Skip EqualsHashCode verification in ErrorProne: it is already
verified with Checkstyle
add 2fdc537 [CALCITE-4823] Suppress warnings for
java.security.AccessController deprecation
add ef40b52 [CALCITE-4821] Move utility test classes into calcite-testkit
and unpublish -test.jar
add a8a8a6b Add missing @Override annotations
add 1667b51 Fix ErrorProne violations in testkit
add a8a6569 [CALCITE-4829] Bump Gradle to 7.2 and test with Java 17 at
GitHub Actions
add 21cbdf8 Fix string reference to HrSchema in MaterializationTest with
HrSchema.class.getName()
add 07b68bc Use jdk16 instead of jdk17 since jdk17 is not yet available
at AppVeyor
add 5824c54 [CALCITE-4825] Move remaining core/main off of ImmutableBeans
add fbbdf46 [CALCITE-4546] Change metadata dispatch to avoid registration
of all RelNode subtypes (James Starr)
add 4704745 [CALCITE-4819] SemiJoin operator is not skipped in
materialized view-based rewriting algorithm
add 74e9778 [CALCITE-4817] Expand SubstitutionVisitor of Aggregate with
max/min, which column is the group by list of target (xurenhe)
add 3fffc31 [CALCITE-4798] Gradle build fails due to deprecated metadata
APIs
add dff775d Bump JDK from 15 to 17 in seed build cache CI jobs
add 50dbd12 [CALCITE-4834] JaninoRelMetadataProvider uses hardcoded class
name
add 3170c3f [CALCITE-4830] Remove remaining uses of ImmutableBeans and
deprecate
add 814ca45 [CALCITE-4836] Upgrade protobuf-java 3.6.1 -> 3.17.1
add dbaf22c Revert "[CALCITE-4817] Expand SubstitutionVisitor of
Aggregate with max/min, which column is the group by list of target (xurenhe)"
add 460de04 Site: Add Zhaohui Xu as committer
add 9c0e313 [CALCITE-3745] CompileException in UnitCompiler when using
multiple class loaders
add 2916b83 [CALCITE-3583] Exchange operator deserialize fail when the
RexInput has no RelCollcation (Xzh)
add 53e0968 [CALCITE-4811] Check if input type is a struct in
RelDataTypeFactoryImpl#leastRestrictiveStructuredType
add 62a1a14 [CALCITE-3338] Error with executeBatch and preparedStatement
when using RemoteMeta (Xzh & Jin Xing)
add d0837f1 [CALCITE-4762] Upgrade Calcite to Avatica 1.19
add 95b3ab6 [CALCITE-4600] ClassCastException retrieving from an ARRAY
that has DATE, TIME or TIMESTAMP elements
add c3f3dec [CALCITE-4602] ClassCastException retrieving from ARRAY that
has mixed INTEGER and DECIMAL elements
add a7728d7 [CALCITE-4757] In Avatica, support columns of type "NULL" in
query results
add 342aeba [CALCITE-4628] If SqlImplementor fails, include the RelNode
in the exception
add a250ab0 [CALCITE-4795] In class SqlBasicCall, make the "operands"
field private (part 1)
add c2d0d66 [CALCITE-4847] Parse SQL with BigQuery-style quoted
identifiers and character literals
add 9481277 [CALCITE-4616] AggregateUnionTransposeRule causes row type
mismatch when some inputs have unique grouping key
add 8a0de7a Refactor: Introduce field SqlUtil.GENERATED_EXPR_ALIAS_PREFIX
add e20f881 [CALCITE-4740] JDBC adapter generates incorrect HAVING clause
in BigQuery dialect
add 82dd78a [CALCITE-2736] ReduceExpressionsRule never reduces dynamic
expressions but this should be configurable (Yingyu Wang)
add 77ff9f6 [CALCITE-4550] Simplify JaninoRelMetadataProvider API for
binding methods (James Starr)
add 23e1b1f [CALCITE-4848] Adding a HAVING condition to a query with a
dynamic parameter makes the result always empty
add 67b2838 [CALCITE-3524] In RelBuilder, add methods for creating
various kinds of sub-query
add 9c741e4 [CALCITE-4719] Add variants of RexSubQuery that collect
sub-queries into MULTISET, ARRAY and MAP collections
add 46fb263 [CALCITE-4735] Enhance Aggregate-Materialization, when
aggcall of query could be expressed by target's grouping (xurenhe)
add 9330b30 [CALCITE-4853] Gradle could not determine the dependencies of
task ':syncPreviewSiteRepo'
add 81d3eab Site: Pronouns, talks
add 2326cf8 Bump Guava maximum version up to 31.0.1-jre
add dec167a [CALCITE-4835] Release Calcite 1.28.0
add c6a9599 Add news item for release 1.28.0
add 0390069 [CALCITE-4639] Broken links on download page
add bf962b8 [CALCITE-4856] Gradle prepareVote fails with 'not authorized'
add bebe473 [CALCITE-4839] Remove ImmutableBeans implementation and usage
add 77bb696 [CALCITE-4795] In class SqlBasicCall, make the "operands"
field private (part 2)
add 87f60d2 Site: Add Xiong Duan as committer
add 2280879 [CALCITE-4858] Use Log4j2 instead of unsupported Log4j (1.x)
in tests
add 3af1d78 [CALCITE-4818] AggregateExpandDistinctAggregatesRule must
infer correct data type for top aggregate calls (Taras Ledkov)
add 5bec337 Fix typo in reference.md
add f61541d [CALCITE-4822] Add functions ARRAY_CONCAT, ARRAY_REVERSE,
ARRAY_LENGTH for BigQuery dialect
add 2c17f7a [CALCITE-4551] Reusing Immutable metadata cache keys
add cbe6a7b [CALCITE-4768] Upgrade DataStax Driver for Apache Cassandra®
version to latest 4.x
add f1db79f [CALCITE-4131] remove the XmlFunctions exception handled by
System.out
add 7e87833 Bump com.github.vlsi.vlsi-release-plugins to 1.76
add 6d51d27 Update Gradle to 7.3
add a03586c [CALCITE-4875] Preserve Operand Nullability in NVL rewrite
add 8438754 [CALCITE-4877] Ignore test for invalid foreign schema class
add bcaa978 [CALCITE-4844] IN-list that references columns is wrongly
converted to Values, and gives incorrect results
add 07e420b [CALCITE-4877] Enable schema.iq test, with variants depending
on Avatica version
add 0899e6c [CALCITE-4846] IN-list that includes NULL converted to Values
throws exception
add faee09f [CALCITE-4884] Provide a new constructor for RelJsonWriter to
allow customized JsonBuilder
add 065e323 [CALCITE-4841] Support decimal column type in CSV file format
add 7c423ef [CALCITE-4876] Converting RelNode to SQL with
CalciteSqlDialect gets wrong result while EnumerableIntersect is followed by
EnumerableLimit
add f3e2f04 Exclude kotlin-stdlib from :core runtime dependencies
add 8a266e6 Clarify why squash commits option in GitHub PR merge is
disabled
add d9f946b [CALCITE-4883] The traitset of Exchange operator losses the
distribution when externalizing Exchange operator from JSON
add 2317f4e [CALCITE-4783] RelFieldTrimmer incorrectly drops filter
condition
add fd3c1d0 [CALCITE-4851] Build gives lots of 'Execution optimizations
have been disabled' warnings
add 8373d4c Use GitHub Action concurrency feature to cancel stale CI
executions
add 3456136 Keep backslash when autoformatting <<...\n" +>>
add 86dce8a Log plan after physical tweaks in new line
add 264636e [CALCITE-4927] Remove deprecated
RelBuilder#groupKey(ImmutableBitSet, ImmutableList) clashing with new
replacement API
add 9b0268a [CALCITE-4930] Update log4j2 version to 2.15.0
add ecbafbf [CALCITE-4925] AggregateReduceFunctionsRule should accept
arbitrary predicates
add f3c0936 [CALCITE-4928] Decouple JaninoRelMetadataProvider from
RelMetadataQuery
add 422599c [CALCITE-4932] Deprecate JdbcCalc and remove JdbcCalcRule
add 8b62f88 [CALCITE-4894] MV rewriting fails for conjunctive top
expressions in SELECT clause
add 4ff5fa8 [CALCITE-4929] Implement default getDef() methods in
MetadataHandler interfaces
add c986156 [CALCITE-4937] Upgrade Calcite to Avatica 1.20
add 2ee53f2 [CALCITE-4938] Upgrade SQLLine to 1.12.0
add f5a6526 [CALCITE-4939] Upgrade log4j2 version to 2.16.0
add 96f4a73 Improve debug message in IterativeRuleDriver
add c1fab9d Remove duplicate entries from RelOptRules.CALC_RULES
add 250dfb7 [CALCITE-4906] Wrong result for scalar subquery from empty
input
add 7d342b3 [CALCITE-4941] SemiJoinRule loses hints
add a6293a3 [CALCITE-4895] MAP type in UDF cannot be externalized from
json correctly
add d6a36fc [CALCITE-4898] Upgrading Elasticsearch version from 7.0.1 to
7.15.2
add ce25311 [CALCITE-4737] Add RelOptPlanner visualizer for debugging
(Zuozhi Wang, Thomas Rebele)
add e4cdcee [CALCITE-4948] Revert Elasticsearch to 7.10.2
add 607c45b [CALCITE-4946] Add method RelBuilder.size()
add 6208196 Finishing up [CALCITE-4937], remove workarounds for
[CALCITE-4877]
add 538016e [CALCITE-4700] AggregateUnionTransposeRule produces wrong
group sets for the top Aggregate (Vladimir Ozerov)
add e42b85a [CALCITE-4704] Log plan on rule application using explain
formatting
add 0d17965 [CALCITE-4950] Upgrade log4j2 version to 2.17.0
add f6d51ff Set timeout for running Druid tests in GitHub CI
add 7a7b37f [CALCITE-4917] Add test for 'a IS NOT NULL AND a = b'
simplification
add cbfe060 [CALCITE-4955] Release Calcite 1.29.0.
add 8a40603 Add 1.29.0 release announcement
add fb2e28a Prepare for next development iteration
add 3303e4b Revise release notes
add f79624a [CALCITE-4547] Support Java 16 and 17
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 (ab27d0b)
\
N -- N -- N refs/heads/site (f79624a)
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:
.asf.yaml | 3 +
.github/workflows/buildcache.yml | 9 +-
.github/workflows/cancel-duplicates.yml | 20 -
.github/workflows/main.yml | 16 +-
.travis.yml | 16 +-
README | 2 +-
README.md | 2 +-
appveyor.yml | 2 +-
babel/build.gradle.kts | 16 +-
bom/build.gradle.kts | 17 +-
build.gradle.kts | 29 +-
buildSrc/build.gradle.kts | 6 -
buildSrc/gradle.properties | 1 -
cassandra/build.gradle.kts | 60 +-
.../adapter/cassandra/CassandraEnumerator.java | 39 +-
.../calcite/adapter/cassandra/CassandraFilter.java | 19 +-
.../calcite/adapter/cassandra/CassandraLimit.java | 6 +-
.../calcite/adapter/cassandra/CassandraMethod.java | 2 +-
.../adapter/cassandra/CassandraProject.java | 1 +
.../calcite/adapter/cassandra/CassandraRel.java | 8 +-
.../calcite/adapter/cassandra/CassandraRules.java | 104 +-
.../calcite/adapter/cassandra/CassandraSchema.java | 275 ++--
.../calcite/adapter/cassandra/CassandraSort.java | 2 +-
.../calcite/adapter/cassandra/CassandraTable.java | 57 +-
.../adapter/cassandra/CassandraTableScan.java | 7 +-
.../cassandra/CassandraToEnumerableConverter.java | 12 +-
.../cassandra/CqlToSqlTypeConversionRules.java | 51 +-
.../test/CassandraAdapterDataTypesTest.java | 18 +-
.../apache/calcite/test/CassandraAdapterTest.java | 7 +-
.../apache/calcite/test/CassandraExtension.java | 71 +-
cassandra/src/test/resources/cassandra.yaml | 1466 ++++++++++++++----
cassandra/src/test/resources/datatypes.cql | 9 +-
.../src/test/resources/log4j2-test.xml | 15 +-
cassandra/src/test/resources/twissandra.cql | 2 +-
core/build.gradle.kts | 98 +-
core/src/main/codegen/templates/Parser.jj | 44 +-
.../{package-info.java => CalciteImmutable.java} | 19 +-
.../enumerable/EnumerableBatchNestedLoopJoin.java | 2 +-
.../EnumerableBatchNestedLoopJoinRule.java | 16 +-
.../adapter/enumerable/EnumerableCalcRule.java | 6 +-
.../adapter/enumerable/EnumerableCollect.java | 41 +-
.../adapter/enumerable/EnumerableCollectRule.java | 9 +-
.../enumerable/EnumerableCorrelateRule.java | 6 +-
.../adapter/enumerable/EnumerableFilterRule.java | 3 +-
.../enumerable/EnumerableFilterToCalcRule.java | 9 +-
.../enumerable/EnumerableInterpretable.java | 7 +-
.../adapter/enumerable/EnumerableLimitRule.java | 9 +-
.../enumerable/EnumerableLimitSortRule.java | 9 +-
.../adapter/enumerable/EnumerableMergeUnion.java | 2 +-
.../enumerable/EnumerableMergeUnionRule.java | 11 +-
.../adapter/enumerable/EnumerableProjectRule.java | 2 +-
.../enumerable/EnumerableProjectToCalcRule.java | 10 +-
.../EnumerableTableFunctionScanRule.java | 3 +-
.../enumerable/EnumerableTableScanRule.java | 3 +-
.../calcite/adapter/enumerable/RexImpTable.java | 118 ++
.../calcite/adapter/jdbc/JdbcImplementor.java | 10 -
.../org/apache/calcite/adapter/jdbc/JdbcRules.java | 47 +-
.../org/apache/calcite/adapter/jdbc/JdbcTable.java | 37 +-
.../apache/calcite/adapter/jdbc/JdbcTableScan.java | 15 +-
.../calcite/config/CalciteSystemProperty.java | 7 +-
.../main/java/org/apache/calcite/config/Lex.java | 12 +-
.../org/apache/calcite/interpreter/Bindables.java | 8 +-
.../calcite/interpreter/JaninoRexCompiler.java | 7 +-
.../apache/calcite/jdbc/CalciteConnectionImpl.java | 13 +-
.../org/apache/calcite/jdbc/CalciteMetaImpl.java | 2 +-
.../apache/calcite/jdbc/SimpleCalciteSchema.java | 65 +-
.../main/java/org/apache/calcite/package-info.java | 1 +
.../apache/calcite/plan/AbstractRelOptPlanner.java | 17 +-
.../apache/calcite/plan/CommonRelSubExprRule.java | 6 -
.../org/apache/calcite/plan/RelOptCluster.java | 12 +-
.../calcite/plan/RelOptMaterializations.java | 28 +-
.../org/apache/calcite/plan/RelOptPlanner.java | 2 +
.../java/org/apache/calcite/plan/RelOptRules.java | 3 -
.../java/org/apache/calcite/plan/RelOptUtil.java | 112 ++
.../main/java/org/apache/calcite/plan/RelRule.java | 56 +-
.../org/apache/calcite/plan/RuleEventLogger.java | 70 +
.../apache/calcite/plan/SubstitutionVisitor.java | 202 ++-
.../org/apache/calcite/plan/hep/HepPlanner.java | 2 +
.../calcite/plan/hep/HepRelMetadataProvider.java | 10 +
.../org/apache/calcite/plan/hep/HepRelVertex.java | 10 +-
.../plan/visualizer/InputExcludedRelWriter.java | 89 ++
.../calcite/plan/visualizer/NodeUpdateHelper.java | 107 ++
.../plan/visualizer/RuleMatchVisualizer.java | 487 ++++++
.../visualizer/StepInfo.java} | 37 +-
.../{ => plan/visualizer}/package-info.java | 6 +-
.../calcite/plan/volcano/AbstractConverter.java | 8 +-
.../calcite/plan/volcano/IterativeRuleDriver.java | 6 +-
.../calcite/plan/volcano/VolcanoPlanner.java | 25 +-
.../plan/volcano/VolcanoRelMetadataProvider.java | 10 +
.../calcite/plan/volcano/VolcanoRuleCall.java | 16 -
.../org/apache/calcite/prepare/PlannerImpl.java | 9 +-
.../java/org/apache/calcite/prepare/Prepare.java | 11 +-
.../org/apache/calcite/rel/AbstractRelNode.java | 1 +
.../main/java/org/apache/calcite/rel/RelNode.java | 3 +
.../apache/calcite/rel/convert/ConverterRule.java | 20 +-
.../calcite/rel/convert/TraitMatchingRule.java | 11 +-
.../org/apache/calcite/rel/core/Aggregate.java | 5 +
.../java/org/apache/calcite/rel/core/Collect.java | 150 +-
.../org/apache/calcite/rel/core/Correlate.java | 3 +
.../java/org/apache/calcite/rel/core/Exchange.java | 5 +-
.../org/apache/calcite/rel/core/JoinRelType.java | 32 +
.../calcite/rel/externalize/RelDotWriter.java | 19 +-
.../apache/calcite/rel/externalize/RelJson.java | 20 +-
.../calcite/rel/externalize/RelJsonWriter.java | 10 +-
.../calcite/rel/logical/ToLogicalConverter.java | 4 +-
.../calcite/rel/metadata/BuiltInMetadata.java | 125 ++
.../rel/metadata/CachingRelMetadataProvider.java | 9 +-
.../rel/metadata/ChainedRelMetadataProvider.java | 12 +
.../metadata/DelegatingMetadataRel.java} | 9 +-
.../rel/metadata/JaninoRelMetadataProvider.java | 433 +-----
.../apache/calcite/rel/metadata/MetadataDef.java | 3 +-
.../calcite/rel/metadata/MetadataFactoryImpl.java | 3 +
.../rel/metadata/MetadataHandlerProvider.java | 62 +
.../metadata/ReflectiveRelMetadataProvider.java | 61 +-
.../calcite/rel/metadata/RelMdAllPredicates.java | 6 +-
.../calcite/rel/metadata/RelMdCollation.java | 3 +-
.../calcite/rel/metadata/RelMdColumnOrigins.java | 3 +-
.../rel/metadata/RelMdColumnUniqueness.java | 10 +-
.../rel/metadata/RelMdDistinctRowCount.java | 3 +-
.../calcite/rel/metadata/RelMdDistribution.java | 8 +-
.../rel/metadata/RelMdExplainVisibility.java | 4 +-
.../rel/metadata/RelMdExpressionLineage.java | 14 +-
.../calcite/rel/metadata/RelMdLowerBoundCost.java | 3 +-
.../calcite/rel/metadata/RelMdMaxRowCount.java | 3 +-
.../apache/calcite/rel/metadata/RelMdMemory.java | 5 +-
.../calcite/rel/metadata/RelMdMinRowCount.java | 3 +-
.../calcite/rel/metadata/RelMdNodeTypes.java | 9 +-
.../calcite/rel/metadata/RelMdParallelism.java | 4 +-
.../rel/metadata/RelMdPercentageOriginalRows.java | 60 +-
.../calcite/rel/metadata/RelMdPopulationSize.java | 3 +-
.../calcite/rel/metadata/RelMdPredicates.java | 9 +-
.../apache/calcite/rel/metadata/RelMdRowCount.java | 3 +-
.../calcite/rel/metadata/RelMdSelectivity.java | 3 +-
.../org/apache/calcite/rel/metadata/RelMdSize.java | 4 +-
.../calcite/rel/metadata/RelMdTableReferences.java | 8 +-
.../calcite/rel/metadata/RelMdUniqueKeys.java | 3 +-
.../org/apache/calcite/rel/metadata/RelMdUtil.java | 7 +-
.../calcite/rel/metadata/RelMetadataProvider.java | 22 +
.../calcite/rel/metadata/RelMetadataQuery.java | 228 +--
.../calcite/rel/metadata/RelMetadataQueryBase.java | 47 +-
.../rel/metadata/janino/CacheGeneratorUtil.java | 419 +++++
.../calcite/rel/metadata/janino/CacheUtil.java | 47 +
.../rel/metadata/janino/CodeGeneratorUtil.java | 47 +
.../metadata/janino/DescriptiveCacheKey.java} | 25 +-
.../rel/metadata/janino/DispatchGenerator.java | 202 +++
.../janino/RelMetadataHandlerGeneratorUtil.java | 165 ++
.../{ => rel/metadata/janino}/package-info.java | 9 +-
.../apache/calcite/rel/mutable/MutableRels.java | 19 +-
.../calcite/rel/rel2sql/RelToSqlConverter.java | 203 ++-
.../apache/calcite/rel/rel2sql/SqlImplementor.java | 53 +-
.../rel/rules/AbstractJoinExtractFilterRule.java | 12 -
.../rel/rules/AggregateCaseToFilterRule.java | 13 +-
.../AggregateExpandDistinctAggregatesRule.java | 37 +-
.../rules/AggregateExpandWithinDistinctRule.java | 232 ++-
.../rel/rules/AggregateExtractProjectRule.java | 7 +-
.../rel/rules/AggregateFilterTransposeRule.java | 6 +-
.../rel/rules/AggregateJoinJoinRemoveRule.java | 7 +-
.../calcite/rel/rules/AggregateJoinRemoveRule.java | 6 +-
.../rel/rules/AggregateJoinTransposeRule.java | 18 +-
.../calcite/rel/rules/AggregateMergeRule.java | 6 +-
.../rel/rules/AggregateProjectMergeRule.java | 5 +-
.../rules/AggregateProjectPullUpConstantsRule.java | 15 +-
.../rel/rules/AggregateProjectStarTableRule.java | 7 +-
.../rel/rules/AggregateReduceFunctionsRule.java | 50 +-
.../calcite/rel/rules/AggregateRemoveRule.java | 7 +-
.../calcite/rel/rules/AggregateStarTableRule.java | 7 +-
.../rel/rules/AggregateUnionAggregateRule.java | 7 +-
.../rel/rules/AggregateUnionTransposeRule.java | 54 +-
.../calcite/rel/rules/AggregateValuesRule.java | 6 +-
.../apache/calcite/rel/rules/CalcMergeRule.java | 6 +-
.../apache/calcite/rel/rules/CalcRemoveRule.java | 6 +-
.../apache/calcite/rel/rules/CalcSplitRule.java | 9 +-
.../apache/calcite/rel/rules/CoerceInputsRule.java | 15 +-
.../org/apache/calcite/rel/rules/CoreRules.java | 31 +-
.../apache/calcite/rel/rules/DateRangeRules.java | 23 +-
.../rel/rules/ExchangeRemoveConstantKeysRule.java | 25 +-
.../rel/rules/FilterAggregateTransposeRule.java | 6 +-
.../calcite/rel/rules/FilterCalcMergeRule.java | 6 +-
.../calcite/rel/rules/FilterCorrelateRule.java | 9 +-
.../FilterFlattenCorrelatedConditionRule.java | 7 +-
.../apache/calcite/rel/rules/FilterJoinRule.java | 86 +-
.../apache/calcite/rel/rules/FilterMergeRule.java | 6 +-
.../rel/rules/FilterMultiJoinMergeRule.java | 5 +-
.../rel/rules/FilterProjectTransposeRule.java | 19 +-
.../rules/FilterRemoveIsNotDistinctFromRule.java | 9 +-
.../rel/rules/FilterSetOpTransposeRule.java | 9 +-
.../rules/FilterTableFunctionTransposeRule.java | 9 +-
.../calcite/rel/rules/FilterTableScanRule.java | 18 +-
.../apache/calcite/rel/rules/FilterToCalcRule.java | 9 +-
.../calcite/rel/rules/IntersectToDistinctRule.java | 6 +-
.../rel/rules/JoinAddRedundantSemiJoinRule.java | 6 +-
.../calcite/rel/rules/JoinAssociateRule.java | 13 +-
.../apache/calcite/rel/rules/JoinCommuteRule.java | 18 +-
.../calcite/rel/rules/JoinExtractFilterRule.java | 9 +-
.../rel/rules/JoinProjectTransposeRule.java | 15 +-
.../calcite/rel/rules/JoinPushExpressionsRule.java | 9 +-
.../calcite/rel/rules/JoinPushThroughJoinRule.java | 19 +-
.../rules/JoinPushTransitivePredicatesRule.java | 6 +-
.../calcite/rel/rules/JoinToCorrelateRule.java | 6 +-
.../calcite/rel/rules/JoinToMultiJoinRule.java | 5 +-
.../calcite/rel/rules/JoinUnionTransposeRule.java | 12 +-
.../calcite/rel/rules/LoptOptimizeJoinRule.java | 8 +-
.../org/apache/calcite/rel/rules/MatchRule.java | 9 +-
.../rel/rules/MaterializedViewFilterScanRule.java | 6 +-
.../rel/rules/MultiJoinOptimizeBushyRule.java | 8 +-
.../rel/rules/MultiJoinProjectTransposeRule.java | 31 +-
.../rel/rules/ProjectAggregateMergeRule.java | 12 +-
.../calcite/rel/rules/ProjectCalcMergeRule.java | 6 +-
.../rel/rules/ProjectCorrelateTransposeRule.java | 13 +-
.../rel/rules/ProjectFilterTransposeRule.java | 33 +-
.../rel/rules/ProjectJoinJoinRemoveRule.java | 6 +-
.../calcite/rel/rules/ProjectJoinRemoveRule.java | 6 +-
.../rel/rules/ProjectJoinTransposeRule.java | 13 +-
.../apache/calcite/rel/rules/ProjectMergeRule.java | 19 +-
.../rel/rules/ProjectMultiJoinMergeRule.java | 6 +-
.../calcite/rel/rules/ProjectRemoveRule.java | 9 +-
.../rel/rules/ProjectSetOpTransposeRule.java | 14 +-
.../calcite/rel/rules/ProjectTableScanRule.java | 9 +-
.../calcite/rel/rules/ProjectToCalcRule.java | 9 +-
.../calcite/rel/rules/ProjectToWindowRule.java | 45 +-
.../rel/rules/ProjectWindowTransposeRule.java | 6 +-
.../apache/calcite/rel/rules/PruneEmptyRules.java | 59 +-
.../apache/calcite/rel/rules/PushProjector.java | 26 +-
.../calcite/rel/rules/ReduceDecimalsRule.java | 8 +-
.../calcite/rel/rules/ReduceExpressionsRule.java | 176 ++-
.../rel/rules/SemiJoinFilterTransposeRule.java | 6 +-
.../rel/rules/SemiJoinJoinTransposeRule.java | 6 +-
.../rel/rules/SemiJoinProjectTransposeRule.java | 6 +-
.../calcite/rel/rules/SemiJoinRemoveRule.java | 6 +-
.../org/apache/calcite/rel/rules/SemiJoinRule.java | 43 +-
.../apache/calcite/rel/rules/SortJoinCopyRule.java | 6 +-
.../calcite/rel/rules/SortJoinTransposeRule.java | 6 +-
.../rel/rules/SortProjectTransposeRule.java | 6 +-
.../rel/rules/SortRemoveConstantKeysRule.java | 9 +-
.../apache/calcite/rel/rules/SortRemoveRule.java | 9 +-
.../calcite/rel/rules/SortUnionTransposeRule.java | 13 +-
.../org/apache/calcite/rel/rules/SpatialRules.java | 5 +-
.../calcite/rel/rules/SubQueryRemoveRule.java | 437 ++++--
.../apache/calcite/rel/rules/TableScanRule.java | 15 +-
.../calcite/rel/rules/UnionEliminatorRule.java | 6 +-
.../apache/calcite/rel/rules/UnionMergeRule.java | 16 +-
.../rel/rules/UnionPullUpConstantsRule.java | 6 +-
.../calcite/rel/rules/UnionToDistinctRule.java | 6 +-
.../apache/calcite/rel/rules/ValuesReduceRule.java | 40 +-
.../materialize/MaterializedViewAggregateRule.java | 80 +-
.../materialize/MaterializedViewJoinRule.java | 12 +-
.../MaterializedViewOnlyAggregateRule.java | 11 +-
.../MaterializedViewOnlyFilterRule.java | 9 +-
.../materialize/MaterializedViewOnlyJoinRule.java | 10 +-
.../MaterializedViewProjectAggregateRule.java | 10 +-
.../MaterializedViewProjectFilterRule.java | 9 +-
.../MaterializedViewProjectJoinRule.java | 9 +-
.../rules/materialize/MaterializedViewRule.java | 39 +-
.../org/apache/calcite/rel/stream/StreamRules.java | 121 +-
.../calcite/rel/type/RelDataTypeFactoryImpl.java | 4 +
.../java/org/apache/calcite/rex/RexSimplify.java | 90 ++
.../calcite/rex/RexSqlStandardConvertletTable.java | 39 +-
.../java/org/apache/calcite/rex/RexSubQuery.java | 46 +-
.../apache/calcite/runtime/CalciteResource.java | 13 +
.../org/apache/calcite/runtime/PredicateImpl.java | 7 +-
.../java/org/apache/calcite/runtime/Resources.java | 4 +-
.../org/apache/calcite/runtime/SqlFunctions.java | 7 +
.../org/apache/calcite/runtime/XmlFunctions.java | 26 +-
.../org/apache/calcite/sql/SqlAggFunction.java | 11 +
.../java/org/apache/calcite/sql/SqlBasicCall.java | 99 +-
.../java/org/apache/calcite/sql/SqlDialect.java | 101 +-
.../apache/calcite/sql/SqlDialectFactoryImpl.java | 8 +-
.../java/org/apache/calcite/sql/SqlIdentifier.java | 3 +-
.../main/java/org/apache/calcite/sql/SqlKind.java | 18 +-
.../calcite/sql/SqlNullTreatmentOperator.java | 4 +-
.../java/org/apache/calcite/sql/SqlOperator.java | 4 +-
.../java/org/apache/calcite/sql/SqlTableRef.java | 5 +-
.../main/java/org/apache/calcite/sql/SqlUtil.java | 21 +-
.../java/org/apache/calcite/sql/SqlWindow.java | 29 +-
.../org/apache/calcite/sql/SqlWriterConfig.java | 137 +-
.../apache/calcite/sql/dialect/AnsiSqlDialect.java | 12 +
.../calcite/sql/dialect/BigQuerySqlDialect.java | 1 +
.../calcite/sql/dialect/ClickHouseSqlDialect.java | 4 +
.../calcite/sql/dialect/ExasolSqlDialect.java | 183 +++
.../apache/calcite/sql/dialect/H2SqlDialect.java | 5 +
.../calcite/sql/dialect/MysqlSqlDialect.java | 5 +
.../calcite/sql/dialect/RedshiftSqlDialect.java | 63 +-
.../calcite/sql/fun/SqlArrayQueryConstructor.java | 3 +-
.../calcite/sql/fun/SqlBasicAggFunction.java | 34 +-
.../calcite/sql/fun/SqlLibraryOperators.java | 30 +
.../calcite/sql/fun/SqlMapQueryConstructor.java | 3 +-
.../sql/fun/SqlMultisetQueryConstructor.java | 61 +-
.../calcite/sql/fun/SqlSingleValueAggFunction.java | 2 +-
.../calcite/sql/fun/SqlStdOperatorTable.java | 87 +-
.../calcite/sql/parser/SqlAbstractParserImpl.java | 2 +
.../org/apache/calcite/sql/parser/SqlParser.java | 64 +-
.../apache/calcite/sql/pretty/SqlPrettyWriter.java | 3 +-
.../org/apache/calcite/sql/type/OperandTypes.java | 55 +
.../org/apache/calcite/sql/type/ReturnTypes.java | 9 +
.../org/apache/calcite/sql/type/SqlTypeFamily.java | 36 +
.../apache/calcite/sql/type/SqlTypeTransforms.java | 11 +
.../org/apache/calcite/sql/type/SqlTypeUtil.java | 21 +-
.../apache/calcite/sql/validate/SqlValidator.java | 54 +-
.../calcite/sql/validate/SqlValidatorImpl.java | 61 +-
.../calcite/sql/validate/SqlValidatorUtil.java | 3 +-
.../apache/calcite/sql2rel/RelDecorrelator.java | 131 +-
.../apache/calcite/sql2rel/RelFieldTrimmer.java | 25 +-
.../apache/calcite/sql2rel/SqlToRelConverter.java | 314 ++--
.../calcite/sql2rel/StandardConvertletTable.java | 14 +-
.../statistic/QuerySqlStatisticProvider.java | 3 +-
.../java/org/apache/calcite/tools/Frameworks.java | 13 +-
.../main/java/org/apache/calcite/tools/Hoist.java | 10 +-
.../java/org/apache/calcite/tools/Programs.java | 1 +
.../java/org/apache/calcite/tools/RelBuilder.java | 542 +++++--
.../src/main/java/org/apache/calcite/util/Bug.java | 1 +
.../org/apache/calcite/util/BuiltInMethod.java | 6 +-
.../org/apache/calcite/util/ImmutableBeans.java | 513 -------
.../apache/calcite/util/ImmutableNullableList.java | 4 +-
.../org/apache/calcite/util/SaffronProperties.java | 7 +-
.../calcite/util/graph/DefaultDirectedGraph.java | 5 +
.../apache/calcite/util/javac/JaninoCompiler.java | 4 +-
.../calcite/plan/visualizer/viz-template.html | 421 +++++
.../calcite/runtime/CalciteResource.properties | 4 +
.../calcite/jdbc/CalciteRemoteDriverTest.java | 34 +-
.../CustomMaterializedViewRecognitionRuleTest.java | 179 +++
.../org/apache/calcite/plan/RelOptUtilTest.java | 54 +-
.../org/apache/calcite/plan/RelWriterTest.java | 171 ++-
.../plan/volcano/CollationConversionTest.java | 13 +-
.../apache/calcite/plan/volcano/ComboRuleTest.java | 13 +-
.../apache/calcite/plan/volcano/PlannerTests.java | 24 +-
.../calcite/plan/volcano/TraitConversionTest.java | 13 +-
.../calcite/plan/volcano/TraitPropagationTest.java | 20 +-
.../calcite/plan/volcano/VolcanoPlannerTest.java | 66 +-
.../plan/volcano/VolcanoPlannerTraitTest.java | 18 +-
.../rel/logical/ToLogicalConverterTest.java | 16 +-
.../RelMetadataHandlerGeneratorUtilTest.java | 183 +++
.../rel/rel2sql/RelToSqlConverterStructsTest.java | 136 +-
.../calcite/rel/rel2sql/RelToSqlConverterTest.java | 1341 ++++++++++------
.../calcite/rel/rules/DateRangeRulesTest.java | 2 +-
.../org/apache/calcite/rex/RexProgramTest.java | 65 +-
.../calcite/sql/parser/CoreSqlParserTest.java} | 6 +-
.../apache/calcite/sql/test/SqlAdvisorTest.java | 3 +
.../calcite/sql/test/SqlOperatorBaseTest.java | 106 ++
.../calcite/sql/test/SqlPrettyWriterTest.java | 18 +
.../calcite/sql/type/SqlTypeFactoryTest.java | 8 +
.../calcite/sql2rel/RelFieldTrimmerTest.java | 44 +-
.../calcite/test/AbstractMaterializedViewTest.java | 24 +-
.../org/apache/calcite/test/CoreQuidemTest.java | 21 +
.../apache/calcite/test/ExtensionDdlExecutor.java | 2 +-
.../org/apache/calcite/test/JdbcAdapterTest.java | 66 +-
.../apache/calcite/test/JdbcFrontLinqBackTest.java | 39 +-
.../java/org/apache/calcite/test/JdbcTest.java | 582 +++----
.../java/org/apache/calcite/test/LatticeTest.java | 8 +-
.../apache/calcite/test/MaterializationTest.java | 15 +-
.../test/MaterializedViewRelOptRulesTest.java | 86 +-
.../MaterializedViewSubstitutionVisitorTest.java | 232 +++
.../org/apache/calcite/test/MockRelOptPlanner.java | 2 +
.../calcite/test/MultiJdbcSchemaJoinTest.java | 3 +-
.../apache/calcite/test/ReflectiveSchemaTest.java | 205 +--
.../org/apache/calcite/test/RelBuilderTest.java | 578 +++++--
.../org/apache/calcite/test/RelMetadataTest.java | 224 ++-
.../org/apache/calcite/test/RelOptRulesTest.java | 1607 +++++++++-----------
.../org/apache/calcite/test/RelOptTestBase.java | 61 +-
.../calcite/test/RexImplicationCheckerTest.java | 212 +--
.../calcite/test/RuleMatchVisualizerTest.java | 138 ++
.../apache/calcite/test/SqlAdvisorJdbcTest.java | 3 +-
.../apache/calcite/test/SqlHintsConverterTest.java | 6 +-
.../apache/calcite/test/SqlToRelConverterTest.java | 270 +++-
.../org/apache/calcite/test/SqlToRelTestBase.java | 92 +-
.../org/apache/calcite/test/SqlValidatorTest.java | 88 +-
.../java/org/apache/calcite/test/StreamTest.java | 271 +---
.../org/apache/calcite/test/TableFunctionTest.java | 21 +
.../org/apache/calcite/test/TopDownOptTest.java | 2 +-
.../test/java/org/apache/calcite/test/UdfTest.java | 5 +-
.../EnumerableBatchNestedLoopJoinTest.java | 27 +-
.../test/enumerable/EnumerableCalcTest.java | 6 +-
.../test/enumerable/EnumerableCorrelateTest.java | 20 +-
.../test/enumerable/EnumerableHashJoinTest.java | 18 +-
.../test/enumerable/EnumerableJoinTest.java | 16 +-
.../test/enumerable/EnumerableMergeUnionTest.java | 26 +-
.../EnumerableRepeatUnionHierarchyTest.java | 2 +-
.../enumerable/EnumerableSortedAggregateTest.java | 12 +-
.../enumerable/EnumerableStringComparisonTest.java | 4 +-
.../java/org/apache/calcite/tools/PlannerTest.java | 71 +-
.../org/apache/calcite/util/ImmutableBeanTest.java | 672 --------
.../calcite/util/graph/DirectedGraphTest.java | 3 +
core/src/test/resources/log4j.properties | 31 -
core/src/test/resources/log4j2-test.xml | 44 +
.../GeneratedMetadata_AllPredicatesHandler.java | 94 ++
.../janino/GeneratedMetadata_CollationHandler.java | 106 ++
.../GeneratedMetadata_ColumnOriginHandler.java | 98 ++
.../GeneratedMetadata_ColumnUniquenessHandler.java | 106 ++
.../GeneratedMetadata_CumulativeCostHandler.java | 72 +
.../GeneratedMetadata_DistinctRowCountHandler.java | 94 ++
.../GeneratedMetadata_DistributionHandler.java | 86 ++
...GeneratedMetadata_ExplainVisibilityHandler.java | 78 +
...GeneratedMetadata_ExpressionLineageHandler.java | 94 ++
.../GeneratedMetadata_LowerBoundCostHandler.java | 74 +
.../GeneratedMetadata_MaxRowCountHandler.java | 100 ++
.../janino/GeneratedMetadata_MemoryHandler.java | 150 ++
.../GeneratedMetadata_MinRowCountHandler.java | 100 ++
.../janino/GeneratedMetadata_NodeTypesHandler.java | 106 ++
...GeneratedMetadata_NonCumulativeCostHandler.java | 70 +
.../GeneratedMetadata_ParallelismHandler.java | 116 ++
...atedMetadata_PercentageOriginalRowsHandler.java | 76 +
.../GeneratedMetadata_PopulationSizeHandler.java | 90 ++
.../GeneratedMetadata_PredicatesHandler.java | 94 ++
.../janino/GeneratedMetadata_RowCountHandler.java | 102 ++
.../GeneratedMetadata_SelectivityHandler.java | 88 ++
.../janino/GeneratedMetadata_SizeHandler.java | 136 ++
.../GeneratedMetadata_TableReferencesHandler.java | 96 ++
.../GeneratedMetadata_UniqueKeysHandler.java | 98 ++
.../calcite/sql/test/SqlPrettyWriterTest.xml | 8 +-
.../org/apache/calcite/test/RelOptRulesTest.xml | 690 ++++++++-
.../calcite/test/RuleMatchVisualizerTest.xml | 264 ++++
.../apache/calcite/test/SqlToRelConverterTest.xml | 540 ++++++-
.../org/apache/calcite/test/TopDownOptTest.xml | 16 +-
core/src/test/resources/sql/agg.iq | 359 +++++
core/src/test/resources/sql/functions.iq | 29 +
core/src/test/resources/sql/join.iq | 42 +
core/src/test/resources/sql/misc.iq | 4 +-
core/src/test/resources/sql/scalar.iq | 26 +
core/src/test/resources/sql/some.iq | 270 ++++
core/src/test/resources/sql/sub-query.iq | 1242 ++++++++++++++-
core/src/test/resources/sql/unnest.iq | 19 +
core/src/test/resources/sql/winagg.iq | 43 +
core/src/test/resources/sql/within-distinct.iq | 47 +
druid/build.gradle.kts | 47 +-
.../apache/calcite/adapter/druid/DruidRules.java | 104 +-
.../org/apache/calcite/test/DruidAdapter2IT.java | 8 +-
.../org/apache/calcite/test/DruidAdapterIT.java | 8 +-
.../calcite/test/DruidDateRangeRulesTest.java | 2 +-
druid/src/test/resources/log4j.properties | 30 -
.../src/test/resources/log4j2-test.xml | 12 +-
elasticsearch/build.gradle.kts | 20 +-
.../adapter/elasticsearch/PredicateAnalyzer.java | 112 +-
.../adapter/elasticsearch/AggregationTest.java | 43 +-
.../elasticsearch/EmbeddedElasticsearchNode.java | 23 +-
.../test/resources/{log4j2.xml => log4j2-test.xml} | 12 +-
example/csv/build.gradle.kts | 51 +-
.../calcite/adapter/csv/CsvFilterableTable.java | 4 +-
.../adapter/csv/CsvProjectTableScanRule.java | 8 +-
.../calcite/adapter/csv/CsvScannableTable.java | 4 +-
.../adapter/csv/CsvStreamScannableTable.java | 4 +-
.../org/apache/calcite/adapter/csv/CsvTable.java | 5 +-
example/function/build.gradle.kts | 1 +
file/build.gradle.kts | 44 +-
.../apache/calcite/adapter/file/CsvEnumerator.java | 166 +-
.../apache/calcite/adapter/file/CsvFieldType.java | 78 -
.../adapter/file/CsvProjectTableScanRule.java | 8 +-
.../org/apache/calcite/adapter/file/CsvTable.java | 4 +-
.../apache/calcite/adapter/file/FileFieldType.java | 2 -
.../calcite/adapter/file/CsvEnumeratorTest.java | 58 +
.../calcite/adapter/file/FileAdapterTest.java | 68 +
file/src/test/resources/sales-csv/DECIMAL.csv | 4 +
geode/build.gradle.kts | 47 +-
.../calcite/adapter/geode/rel/GeodeRules.java | 24 +-
geode/src/test/resources/log4j.properties | 28 -
.../src/test/resources/log4j2-test.xml | 16 +-
gradle.properties | 43 +-
gradle/wrapper/gradle-wrapper.properties | 4 +-
innodb/build.gradle.kts | 52 +-
.../apache/calcite/adapter/innodb/InnodbRules.java | 41 +-
.../src/test/resources/log4j2-test.xml | 12 +-
kafka/build.gradle.kts | 3 +-
.../src/test/resources/log4j2-test.xml | 12 +-
.../calcite/linq4j/tree/ConstantExpression.java | 5 +
.../apache/calcite/linq4j/test/ExpressionTest.java | 15 +
mongodb/build.gradle.kts | 3 +-
mongodb/src/test/resources/log4j.properties | 26 -
.../src/test/resources/log4j2-test.xml | 16 +-
pig/build.gradle.kts | 2 +-
.../calcite/test/PigRelBuilderStyleTest.java | 3 +-
piglet/build.gradle.kts | 50 +-
.../org/apache/calcite/piglet/PigRelOpVisitor.java | 3 +-
.../calcite/piglet/PigToSqlAggregateRule.java | 21 +-
.../org/apache/calcite/test/PigRelBuilderTest.java | 13 +-
plus/build.gradle.kts | 3 +-
.../org/apache/calcite/adapter/tpch/TpchTest.java | 1 -
.../src/test/resources/log4j2-test.xml | 31 +-
redis/build.gradle.kts | 4 +-
.../src/test/resources/log4j2-test.xml | 15 +-
release/build.gradle.kts | 21 +-
server/build.gradle.kts | 15 +-
.../src/test/resources/log4j2-test.xml | 14 +-
server/src/test/resources/sql/schema.iq | 2 +-
settings.gradle.kts | 1 +
site/_data/contributors.yml | 19 +-
site/_docs/adapter.md | 2 +-
site/_docs/algebra.md | 26 +
site/_docs/history.md | 655 +++++++-
site/_docs/howto.md | 32 +-
site/_docs/reference.md | 64 +-
site/_posts/2019-03-26-release-1.20.0.md | 2 +-
site/_posts/2021-06-04-release-1.27.0.md | 3 +-
site/_posts/2021-10-19-release-1.28.0.md | 107 ++
...-incubating.md => 2021-12-26-release-1.29.0.md} | 23 +-
site/community/index.md | 14 +-
site/downloads/index.md | 27 +-
spark/build.gradle.kts | 8 +-
spark/src/test/resources/log4j.properties | 29 -
.../src/test/resources/log4j2-test.xml | 16 +-
splunk/build.gradle.kts | 48 +-
.../calcite/adapter/splunk/SplunkPushDownRule.java | 29 +-
.../org/apache/calcite/test/SplunkAdapterTest.java | 3 +-
splunk/src/test/resources/log4j.properties | 26 -
.../src/test/resources/log4j2-test.xml | 13 +-
...mpleCompiler.astub => ClassBodyEvaluator.astub} | 4 +-
...pleCompiler.astub => IClassBodyEvaluator.astub} | 4 +-
.../{ICookable.astub => ISimpleCompiler.astub} | 2 +-
src/main/config/checkstyle/suppressions.xml | 6 +
{redis => testkit}/build.gradle.kts | 29 +-
.../apache/calcite/sql/parser/SqlParserTest.java | 131 +-
.../apache/calcite/sql/parser}/package-info.java | 4 +-
.../apache/calcite/sql/test/AbstractSqlTester.java | 101 +-
.../apache/calcite/sql/test/SqlTestFactory.java | 2 +-
.../org/apache/calcite/sql/test/SqlTester.java | 2 +-
.../java/org/apache/calcite/sql/test/SqlTests.java | 19 +-
.../calcite/sql/test/SqlValidatorTester.java | 2 +-
.../org/apache/calcite/sql/test}/package-info.java | 4 +-
.../calcite/test/AbstractModifiableTable.java | 51 +
.../calcite/test/AbstractModifiableView.java | 14 +-
.../org/apache/calcite/test/CalciteAssert.java | 229 ++-
.../org/apache/calcite/test/ConnectionSpec.java | 3 +
.../java/org/apache/calcite/test/DiffTestCase.java | 1 -
.../java/org/apache/calcite/test/Matchers.java | 15 +-
.../apache/calcite/test/MockSqlOperatorTable.java | 28 +-
.../java/org/apache/calcite/test/QuidemTest.java | 34 +-
.../test/RexImplicationCheckerFixtures.java | 246 +++
.../apache/calcite/test/SqlValidatorTestCase.java | 8 +-
.../main}/java/org/apache/calcite/test/Unsafe.java | 0
.../calcite/test/catalog/CompoundNameColumn.java | 0
.../test/catalog/CompoundNameColumnResolver.java | 0
.../calcite/test/catalog/CountingFactory.java | 0
.../catalog/EmpInitializerExpressionFactory.java | 0
.../org/apache/calcite/test/catalog/Fixture.java | 0
.../calcite/test/catalog/MockCatalogReader.java | 172 +--
.../test/catalog/MockCatalogReaderDynamic.java | 0
.../test/catalog/MockCatalogReaderExtended.java | 4 +-
.../test/catalog/MockCatalogReaderSimple.java | 4 +-
.../catalog/VirtualColumnsExpressionFactory.java | 0
.../apache/calcite/test/catalog}/package-info.java | 4 +-
.../org/apache/calcite/test}/package-info.java | 4 +-
.../test/schemata/bookstore}/BookstoreSchema.java | 2 +-
.../test/schemata/catchall/CatchallSchema.java | 218 +++
.../countries}/CountriesTableFunction.java | 14 +-
.../schemata/countries}/StatesTableFunction.java | 14 +-
.../test/schemata/foodmart/FoodmartSchema.java | 77 +
.../calcite/test/schemata/hr/Department.java | 55 +
.../calcite/test/schemata/hr/DepartmentPlus.java | 20 +-
.../apache/calcite/test/schemata/hr/Dependent.java | 34 +-
.../apache/calcite/test/schemata/hr/Employee.java | 54 +
.../org/apache/calcite/test/schemata/hr/Event.java | 32 +-
.../calcite/test/schemata/hr}/HierarchySchema.java | 20 +-
.../apache/calcite/test/schemata/hr/HrSchema.java | 90 ++
.../calcite/test/schemata/hr/HrSchemaBig.java | 100 ++
.../apache/calcite/test/schemata/hr/Location.java | 32 +-
.../calcite/test/schemata/lingual/LingualEmp.java | 29 +-
.../test/schemata/lingual/LingualSchema.java | 10 +-
.../schemata/orderstream/BaseOrderStreamTable.java | 69 +
.../InfiniteOrdersStreamTableFactory.java | 30 +-
.../schemata/orderstream/InfiniteOrdersTable.java | 58 +
.../schemata/orderstream/OrdersHistoryTable.java | 29 +-
.../orderstream/OrdersStreamTableFactory.java | 57 +
.../test/schemata/orderstream/OrdersTable.java | 59 +
.../test/schemata/orderstream/ProductsTable.java | 77 +
.../schemata/orderstream/ProductsTableFactory.java | 34 +-
.../orderstream/ProductsTemporalTable.java | 75 +
.../calcite/test/schemata/tpch}/TpchSchema.java | 51 +-
.../main}/java/org/apache/calcite/util/Smalls.java | 124 +-
.../java/org/apache/calcite/util/TestUtil.java | 5 +
.../org/apache/calcite/util}/package-info.java | 4 +-
.../apache/calcite/testlib/WithLocaleExtension.kt | 0
.../calcite/testlib/annotations/LocaleEnUs.kt | 0
.../apache/calcite/testlib/annotations/WithLex.kt | 0
.../calcite/testlib/annotations/WithLocale.kt | 0
.../java/org/apache/calcite/util/TestUtilTest.java | 0
.../test/kotlin/org/apache/calcite/TestKtTest.kt | 0
ubenchmark/build.gradle.kts | 4 +-
.../enumerable/CodeGenerationBenchmark.java | 3 +-
575 files changed, 23761 insertions(+), 8704 deletions(-)
delete mode 100644 .github/workflows/cancel-duplicates.yml
copy elasticsearch/src/test/resources/log4j2.xml =>
cassandra/src/test/resources/log4j2-test.xml (70%)
copy core/src/main/java/org/apache/calcite/{package-info.java =>
CalciteImmutable.java} (60%)
create mode 100644
core/src/main/java/org/apache/calcite/plan/RuleEventLogger.java
create mode 100644
core/src/main/java/org/apache/calcite/plan/visualizer/InputExcludedRelWriter.java
create mode 100644
core/src/main/java/org/apache/calcite/plan/visualizer/NodeUpdateHelper.java
create mode 100644
core/src/main/java/org/apache/calcite/plan/visualizer/RuleMatchVisualizer.java
copy core/src/main/java/org/apache/calcite/{sql/dialect/H2SqlDialect.java =>
plan/visualizer/StepInfo.java} (52%)
copy core/src/main/java/org/apache/calcite/{ =>
plan/visualizer}/package-info.java (82%)
copy core/src/main/java/org/apache/calcite/{package-info.java =>
rel/metadata/DelegatingMetadataRel.java} (76%)
create mode 100644
core/src/main/java/org/apache/calcite/rel/metadata/MetadataHandlerProvider.java
create mode 100644
core/src/main/java/org/apache/calcite/rel/metadata/janino/CacheGeneratorUtil.java
create mode 100644
core/src/main/java/org/apache/calcite/rel/metadata/janino/CacheUtil.java
create mode 100644
core/src/main/java/org/apache/calcite/rel/metadata/janino/CodeGeneratorUtil.java
copy
core/src/main/java/org/apache/calcite/{sql/fun/SqlMapQueryConstructor.java =>
rel/metadata/janino/DescriptiveCacheKey.java} (62%)
create mode 100644
core/src/main/java/org/apache/calcite/rel/metadata/janino/DispatchGenerator.java
create mode 100644
core/src/main/java/org/apache/calcite/rel/metadata/janino/RelMetadataHandlerGeneratorUtil.java
copy core/src/main/java/org/apache/calcite/{ =>
rel/metadata/janino}/package-info.java (82%)
create mode 100644
core/src/main/java/org/apache/calcite/sql/dialect/ExasolSqlDialect.java
delete mode 100644
core/src/main/java/org/apache/calcite/util/ImmutableBeans.java
create mode 100644
core/src/main/resources/org/apache/calcite/plan/visualizer/viz-template.html
create mode 100644
core/src/test/java/org/apache/calcite/materialize/CustomMaterializedViewRecognitionRuleTest.java
create mode 100644
core/src/test/java/org/apache/calcite/rel/metadata/janino/RelMetadataHandlerGeneratorUtilTest.java
copy core/src/{main/java/org/apache/calcite/package-info.java =>
test/java/org/apache/calcite/sql/parser/CoreSqlParserTest.java} (87%)
create mode 100644
core/src/test/java/org/apache/calcite/test/RuleMatchVisualizerTest.java
delete mode 100644
core/src/test/java/org/apache/calcite/util/ImmutableBeanTest.java
delete mode 100644 core/src/test/resources/log4j.properties
create mode 100644 core/src/test/resources/log4j2-test.xml
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_AllPredicatesHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_CollationHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_ColumnOriginHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_ColumnUniquenessHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_CumulativeCostHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_DistinctRowCountHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_DistributionHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_ExplainVisibilityHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_ExpressionLineageHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_LowerBoundCostHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_MaxRowCountHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_MemoryHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_MinRowCountHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_NodeTypesHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_NonCumulativeCostHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_ParallelismHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_PercentageOriginalRowsHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_PopulationSizeHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_PredicatesHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_RowCountHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_SelectivityHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_SizeHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_TableReferencesHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/rel/metadata/janino/GeneratedMetadata_UniqueKeysHandler.java
create mode 100644
core/src/test/resources/org/apache/calcite/test/RuleMatchVisualizerTest.xml
delete mode 100644 druid/src/test/resources/log4j.properties
copy elasticsearch/src/test/resources/log4j2.xml =>
druid/src/test/resources/log4j2-test.xml (77%)
copy elasticsearch/src/test/resources/{log4j2.xml => log4j2-test.xml} (81%)
delete mode 100644
file/src/main/java/org/apache/calcite/adapter/file/CsvFieldType.java
create mode 100644
file/src/test/java/org/apache/calcite/adapter/file/CsvEnumeratorTest.java
create mode 100644 file/src/test/resources/sales-csv/DECIMAL.csv
delete mode 100644 geode/src/test/resources/log4j.properties
copy elasticsearch/src/test/resources/log4j2.xml =>
geode/src/test/resources/log4j2-test.xml (68%)
copy elasticsearch/src/test/resources/log4j2.xml =>
innodb/src/test/resources/log4j2-test.xml (77%)
copy elasticsearch/src/test/resources/log4j2.xml =>
kafka/src/test/resources/log4j2-test.xml (77%)
delete mode 100644 mongodb/src/test/resources/log4j.properties
copy elasticsearch/src/test/resources/log4j2.xml =>
mongodb/src/test/resources/log4j2-test.xml (67%)
rename {core =>
piglet}/src/test/java/org/apache/calcite/test/PigRelBuilderTest.java (91%)
rename cassandra/src/test/resources/logback-test.xml =>
plus/src/test/resources/log4j2-test.xml (62%)
copy elasticsearch/src/test/resources/log4j2.xml =>
redis/src/test/resources/log4j2-test.xml (70%)
copy elasticsearch/src/test/resources/log4j2.xml =>
server/src/test/resources/log4j2-test.xml (77%)
create mode 100644 site/_posts/2021-10-19-release-1.28.0.md
rename site/_posts/{2014-06-27-release-0.8.0-incubating.md =>
2021-12-26-release-1.29.0.md} (62%)
delete mode 100644 spark/src/test/resources/log4j.properties
copy elasticsearch/src/test/resources/log4j2.xml =>
spark/src/test/resources/log4j2-test.xml (69%)
delete mode 100644 splunk/src/test/resources/log4j.properties
rename elasticsearch/src/test/resources/log4j2.xml =>
splunk/src/test/resources/log4j2-test.xml (77%)
copy src/main/config/checkerframework/janino/{SimpleCompiler.astub =>
ClassBodyEvaluator.astub} (84%)
rename src/main/config/checkerframework/janino/{SimpleCompiler.astub =>
IClassBodyEvaluator.astub} (90%)
rename src/main/config/checkerframework/janino/{ICookable.astub =>
ISimpleCompiler.astub} (96%)
copy {redis => testkit}/build.gradle.kts (59%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/sql/parser/SqlParserTest.java (98%)
copy {core/src/main/java/org/apache/calcite =>
testkit/src/main/java/org/apache/calcite/sql/parser}/package-info.java (89%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/sql/test/AbstractSqlTester.java (88%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/sql/test/SqlTestFactory.java (99%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/sql/test/SqlTester.java (99%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/sql/test/SqlTests.java (97%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/sql/test/SqlValidatorTester.java (96%)
copy {core/src/main/java/org/apache/calcite =>
testkit/src/main/java/org/apache/calcite/sql/test}/package-info.java (89%)
create mode 100644
testkit/src/main/java/org/apache/calcite/test/AbstractModifiableTable.java
copy core/src/test/kotlin/org/apache/calcite/testlib/annotations/WithLex.kt =>
testkit/src/main/java/org/apache/calcite/test/AbstractModifiableView.java (69%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/CalciteAssert.java (92%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/ConnectionSpec.java (95%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/DiffTestCase.java (99%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/Matchers.java (96%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/MockSqlOperatorTable.java (91%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/QuidemTest.java (90%)
create mode 100644
testkit/src/main/java/org/apache/calcite/test/RexImplicationCheckerFixtures.java
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/SqlValidatorTestCase.java (97%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/Unsafe.java (100%)
copy {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/catalog/CompoundNameColumn.java
(100%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/catalog/CompoundNameColumnResolver.java
(100%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/catalog/CountingFactory.java
(100%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/catalog/EmpInitializerExpressionFactory.java
(100%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/catalog/Fixture.java (100%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/catalog/MockCatalogReader.java
(89%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/catalog/MockCatalogReaderDynamic.java
(100%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/catalog/MockCatalogReaderExtended.java
(98%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/catalog/MockCatalogReaderSimple.java
(99%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/test/catalog/VirtualColumnsExpressionFactory.java
(100%)
copy {core/src/main/java/org/apache/calcite =>
testkit/src/main/java/org/apache/calcite/test/catalog}/package-info.java (89%)
copy {core/src/main/java/org/apache/calcite =>
testkit/src/main/java/org/apache/calcite/test}/package-info.java (89%)
rename {core/src/test/java/org/apache/calcite/test =>
testkit/src/main/java/org/apache/calcite/test/schemata/bookstore}/BookstoreSchema.java
(98%)
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/catchall/CatchallSchema.java
rename {core/src/test/java/org/apache/calcite/test =>
testkit/src/main/java/org/apache/calcite/test/schemata/countries}/CountriesTableFunction.java
(96%)
rename {core/src/test/java/org/apache/calcite/test =>
testkit/src/main/java/org/apache/calcite/test/schemata/countries}/StatesTableFunction.java
(90%)
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/foodmart/FoodmartSchema.java
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/hr/Department.java
copy core/src/main/java/org/apache/calcite/sql/fun/SqlMapQueryConstructor.java
=>
testkit/src/main/java/org/apache/calcite/test/schemata/hr/DepartmentPlus.java
(64%)
copy core/src/main/java/org/apache/calcite/sql/dialect/H2SqlDialect.java =>
testkit/src/main/java/org/apache/calcite/test/schemata/hr/Dependent.java (54%)
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/hr/Employee.java
copy
core/src/main/java/org/apache/calcite/sql/fun/SqlArrayQueryConstructor.java =>
testkit/src/main/java/org/apache/calcite/test/schemata/hr/Event.java (57%)
rename {core/src/test/java/org/apache/calcite/test =>
testkit/src/main/java/org/apache/calcite/test/schemata/hr}/HierarchySchema.java
(82%)
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/hr/HrSchema.java
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/hr/HrSchemaBig.java
copy
core/src/main/java/org/apache/calcite/sql/fun/SqlArrayQueryConstructor.java =>
testkit/src/main/java/org/apache/calcite/test/schemata/hr/Location.java (58%)
copy core/src/main/java/org/apache/calcite/sql/fun/SqlMapQueryConstructor.java
=>
testkit/src/main/java/org/apache/calcite/test/schemata/lingual/LingualEmp.java
(61%)
copy core/src/main/java/org/apache/calcite/package-info.java =>
testkit/src/main/java/org/apache/calcite/test/schemata/lingual/LingualSchema.java
(80%)
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/orderstream/BaseOrderStreamTable.java
copy
core/src/test/java/org/apache/calcite/test/catalog/CompoundNameColumn.java =>
testkit/src/main/java/org/apache/calcite/test/schemata/orderstream/InfiniteOrdersStreamTableFactory.java
(54%)
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/orderstream/InfiniteOrdersTable.java
copy
core/src/test/java/org/apache/calcite/test/catalog/CompoundNameColumn.java =>
testkit/src/main/java/org/apache/calcite/test/schemata/orderstream/OrdersHistoryTable.java
(55%)
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/orderstream/OrdersStreamTableFactory.java
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/orderstream/OrdersTable.java
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/orderstream/ProductsTable.java
rename
core/src/test/java/org/apache/calcite/test/catalog/CompoundNameColumn.java =>
testkit/src/main/java/org/apache/calcite/test/schemata/orderstream/ProductsTableFactory.java
(53%)
create mode 100644
testkit/src/main/java/org/apache/calcite/test/schemata/orderstream/ProductsTemporalTable.java
rename {core/src/test/java/org/apache/calcite/tools =>
testkit/src/main/java/org/apache/calcite/test/schemata/tpch}/TpchSchema.java
(62%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/util/Smalls.java (90%)
rename {core/src/test =>
testkit/src/main}/java/org/apache/calcite/util/TestUtil.java (98%)
copy {core/src/main/java/org/apache/calcite =>
testkit/src/main/java/org/apache/calcite/util}/package-info.java (89%)
rename {core/src/test =>
testkit/src/main}/kotlin/org/apache/calcite/testlib/WithLocaleExtension.kt
(100%)
rename {core/src/test =>
testkit/src/main}/kotlin/org/apache/calcite/testlib/annotations/LocaleEnUs.kt
(100%)
rename {core/src/test =>
testkit/src/main}/kotlin/org/apache/calcite/testlib/annotations/WithLex.kt
(100%)
rename {core/src/test =>
testkit/src/main}/kotlin/org/apache/calcite/testlib/annotations/WithLocale.kt
(100%)
rename {core =>
testkit}/src/test/java/org/apache/calcite/util/TestUtilTest.java (100%)
rename {core => testkit}/src/test/kotlin/org/apache/calcite/TestKtTest.kt
(100%)