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 2b764dbcf3 [CALCITE-5797] Release Calcite 1.35.0
discard 5fb6ec493a Site: Add TJ Banghart as committer
discard d0165364fb Site: Add Dan Zou as committer
discard 41ee857d62 Site: Add Zhe Hu as committer
discard b81da85b78 Site: Add Yong Liu as committer
discard fefa52e9b0 Site: Add Oliver Lee as committer
discard 5f02e526d0 Bump nokogiri from 1.13.4 to 1.14.3 in /site
discard c9aab6be33 [CALCITE-5768] JDBC adapter should insert a subquery for a
query with ORDER BY ordinal
discard 586fe4bbb0 [CALCITE-5746] Support JDK 19
discard 50c864f820 Site: Add Tanner Clary as committer
discard c6e019cff5 Site: Add talks from Calcite Meetup March 2023
discard 983d8b6698 Site: Troubleshooting/Website publishing improvements in
release guide
discard 7883cbd2e4 [CALCITE-5440] Bump gradle from 7.4.2 to 7.6.1
add 298a94a09a [CALCITE-5577] Map value constructor is unparsed
incorrectly for `SparkSqlDialect`
add 5ee1b1ba2c [CALCITE-5553] `RelStructuredTypeFlattener` produces bad
plan for single field struct
add 052a5cc724 [CALCITE-5440] Bump gradle from 7.4.2 to 7.6.1
add 627e06718a Site: Troubleshooting/Website publishing improvements in
release guide
add 12b7193e4f [CALCITE-5571] Remove org.jetbrains.annotations from java
source code
add 0d43d61de0 Site: Clarify that SQL does not support recursive queries
yet
add d68f6a5ceb [CALCITE-5361] Update janino from 3.1.8 to 3.1.9
add e9fada6a1e Site: Add talks from Calcite Meetup March 2023
add ace7940731 [CALCITE-5574] Break `MockCatalogReaderSimple#init` into
smaller methods
add 8d3b277961 Refactor: In RexImpTable, create field 'variableName' to
implement method 'getVariableName()'
add b9aaba14d5 Refactor: In tests, pass 'typeSystem' connection property
value via a ThreadLocal
add 625a2e03c4 [CALCITE-5554] In EXTRACT function, add DAYOFWEEK and
DAYOFYEAR as synonyms for DOW, DOY
add c63f0be38e [CALCITE-5381] Add `convertCorrelateToJoin` config property
to RelBuilder
add 26719b3b22 Update javadoc for RelColumnOrigin#isDerived method
add ba975ba061 [CALCITE-5476] Add DATETIME_TRUNC function (enabled in
BigQuery library)
add 8b1059ee8a Add .gitignore for Java VSCode plugin
add 03fd95b97c [CALCITE-5548] Add MSSQL-style CONVERT function (enabled in
MSSql library)
add d2ca97e799 [CALCITE-5580] Add SPLIT function (enabled in BigQuery
library)
add ba36004fb1 [CALCITE-5557] Add SAFE_CAST function (enabled in BigQuery
library)
add 6fcfaa7fd9 [CALCITE-5587] Upgrade geode-core from 1.10.0 to 1.15.1
add 93b11cb1dc [CALCITE-5585] Add STRPOS function (enabled in BigQuery,
Postgres libraries)
add 62024984f0 [CALCITE-5403] Babel parser should parse PostgreSQL's SET,
RESET, BEGIN, SHOW, ROLLBACK, COMMIT commands
add c28d1dcbc3 [CALCITE-5367] Implement spatial type functions
add ce3d1333b9 [CALCITE-5160] ANY/SOME, ALL operators should support
collection expressions
add 5c7be55ffe [CALCITE-5411] `SparkSqlDialect` should support `ROLLUP`
and `CUBE` aggregate functions
add 1f15d98852 [CALCITE-5593] Elasticsearch adapter should support aliases
add a10b858664 [CALCITE-5605] Add BigQuery as supported library for CHR
add 2d0b3acb11 [CALCITE-5538] Allow creating TimestampString with
fractional seconds ending in 0
add 74bc025fbb [CALCITE-5565] Add LOG function (enabled in BigQuery
library)
add 8a4f8d525b [CALCITE-5619] Add TO_CHAR(<TIMESTAMP>, <STRING>) function
(enabled in MySQL,Oracle,PostgreSQL libraries)
add 96da5297db [CALCITE-5606] Add SqlLibrary.ALL
add 83f136167d [CALCITE-4771] Add `TRY_CAST` function (enabled in MSSQL
library)
add 1abb7ad737 [CALCITE-5648] SqlDelegatingConformance incorrectly
delegates to SqlConformanceEnum.DEFAULT
add e7375ae745 [CALCITE-5650] Obtain typesystem from dialect in
RelToSqlConverterTest
add b2917b33e8 [CALCITE-111] Support CONVERT function, for changing
character sets
add 74524cf1df [CALCITE-5655] Wrong plan for multiple IN/SOME sub-queries
with OR predicate
add 1fe1ce8845 [CALCITE-5651] Inferred scale for decimal should not exceed
maximum allowed scale
add 2822518713 Disable JIRA worklog notifications for GitHub PRs
add f500e2f157 [CALCITE-5563] Reduce loops to optimize
RelSubset#getParents and RelSubset#getParentSubsets
add 8b0745784b [CALCITE-5596] Elasticsearch adapter test fails on Apple
silicon
add 8db5403d2e [CALCITE-5646] JoinDeriveIsNotNullFilterRule incorrectly
handles COALESCE in join condition
add febd06b2cc [CALCITE-5642] Add SHA256, SHA512 functions (enabled in
BigQuery and PostgreSQL libraries)
add cc3c5fed07 [CALCITE-5670] Assertion error in SemiJoinJoinTransposeRule
when Semi-Join has keys from both tables of the bottom Join
add 0305067459 [CALCITE-5639] RexSimplify should remove IS NOT NULL check
when LIKE comparison is present
add e5f7729d7d [CALCITE-5675] Infer predicates for anti-join
add dd8fa24a6a [CALCITE-5671] Add option to disable SSL certificate
validation to ES adapter
add bbc2cec5e8 [CALCITE-5543] Add functions PARSE_DATE, PARSE_DATETIME,
PARSE_TIME, PARSE_TIMESTAMP (enabled in BigQuery library)
add 07a29b6071 [CALCITE-4698] Result type of datetime '+' operators and
TIMESTAMPADD function should be the same as the operand type
add 3326475c76 [CALCITE-5614] Serialize Sarg values to and from JSON
add a833bd626c [CALCITE-5679] HepPlanner#buildFinalPlan: do not clear
metadata cache if RelNode has not changed
add cb34e78c23 [CALCITE-5530] RelToSqlConverter[ORDER BY] generates an
incorrect field alias when 2 projection fields have the same name
add a25f4a733d [CALCITE-5664] Add CONVERT(string USING transcodingName)
function, also known as TRANSLATE
add 5d93ed4c89 [CALCITE-5621] Allow user-defined type declarations (UDTs)
in the root of the JSON catalog
add 9ea862478d [CALCITE-3959] Add INSTR function (enabled in BigQuery,
MySQL, Oracle libraries)
add 788a4404a8 [CALCITE-5653] SELECT DISTINCT aggregate function with
ORDER BY gives invalid validation error
add 372346f398 [CALCITE-5547] JOIN USING returns incorrect column names
add 8a2c680b96 [CALCITE-5680] Wrong plan for multiple IN sub-queries with
only literal operands
add 6f10c132be [CALCITE-5506] RelToSqlConverter should retain the
aggregation logic when Project without RexInputRef on the Aggregate
add 74a2a18bcb Code style: disallow '))' and ').' at the start of a line
add 5b73f3665a In tests, don't allow multi-line strings as argument to
CalciteAssert.returnsUnordered
add 62a9ee9423 [CALCITE-5610] Add COTH, CSCH, SECH functions
add e92a5fcaba [CALCITE-5611] In SqlOperatorTest, show SQL for failed tests
add 9007d3afad [CALCITE-5677] SUBSTR signature incorrect for BigQuery
add ea9db4421f [CALCITE-5660] Add array subscript operators OFFSET,
ORDINAL, SAFE_OFFSET, SAFE_ORDINAL (enabled for BigQuery)
add d68656a251 [CALCITE-5657] Add ARRAY_DISTINCT function (enabled in
Spark library).
add bf8e1142c8 [CALCITE-4554] Support TIMESTAMP WITH LOCAL TIME ZONE for
Snapshot and MatchRecognize
add 1ffb1a1013 [CALCITE-5669] Add rules to remove Correlate when one of
its inputs is empty
add b3e16dffa8 [CALCITE-5624] Add ARRAY function (enabled in Spark library)
add b0b27e8872 Upgrade Jackson from 2.14.1 to 2.15.0
add 48f51ea5d9 [CALCITE-5700] Add ARRAY_SIZE, ARRAY_REPEAT function
(enabled in Spark library).
add dbefd68825 [CALCITE-5602] Implement CSC and SEC functions
add c56d556462 [CALCITE-5698] EXTRACT from INTERVAL should return negative
numbers if interval is negative
add 289d082055 [CALCITE-5674] CAST expr to target type should respect
nullable when it is complex type
add 9c33d7aeef [CALCITE-5695] Add MAP_KEYS, MAP_VALUES function (enabled
in Spark library)
add d08b5cf73f [CALCITE-5691] IN sub-query inside FILTER clause throws
IndexOutOfBoundsException
add f7ad9093f4 [CALCITE-5699] Negated posix regex expressions throw
NullPointerException when applied to NULL values
add b0420947dd [CALCITE-5662] Allow CAST(BOOLEAN as INTEGER) (if enabled
by conformance)
add 0d3cf2cbad [CALCITE-5668] When parsing SQL in PostgreSQL dialect,
allow unquoted table names to contain dollar sign, letters with diacritical
marks and non-Latin letters
add f32289870b [CALCITE-5705] Generalize RemoveEmptySingleRule to work
with arbitrary relations and pruning configurations
add 3843ede3d2 [CALCITE-5674] CAST expr to target type should respect
nullable when it is complex type (follow-up)
add af2fb7f02b [CALCITE-5608] Implement ASINH, ACOSH, ATANH functions
add e981e217d1 Site: Add Tanner Clary as committer
add 6324646db7 In ImmutableBitSet, specialize forEach, and add forEachInt,
anyMatch, allMatch
add b42c181a60 Refactor: RelBuilder.variable(Holder) becomes
variable(Supplier)
add 7fc3e1b007 Refactor: Add RelNode.stripped
add b2f59d7b90 [CALCITE-5697] RelBuilder.convert does not match
nullability if top of stack is a Project
add ddb4200f8f Refactor: Add fields AggregateCall.rexList and
RelBuilder.AggCall.preOperands
add de4631f62c [CALCITE-4334] LITERAL_AGG, an internal aggregate function
that returns a constant value
add 379f41d3be [CALCITE-5717] RelBuilder.project of literals on a
single-row Aggregate should create a Values
add 0b819dfe83 [CALCITE-5726] Canonize use of Hamcrest matchers in test
code
add c4042a34ef Code style: improve Javadoc
add 3817b0e42c [CALCITE-5703] Reduce amount of generated runtime code
add 58120b2d84 [CALCITE-5564] Add parsing and validation for
PERCENTILE_CONT/PERCENTILE_DISC functions (enabled in BigQuery)
add 0a363e47a2 [CALCITE-5734] Add ARRAY_COMPACT function (enabled in Spark
library)
add d98f96d830 [CALCITE-5723] Oracle dialect generates SQL that cannot be
recognized by lower version Oracle Server(<12) when unparsing OffsetFetch
add e34caf70ac [CALCITE-5730] Initial null values can be dropped by
EnumerableLimitSort with offset
add 671f49d7d0 [CALCITE-5714] Add MAP_ENTRIES function (enabled in Spark
library)
add 6ffcb86052 [CALCITE-5722] Sarg.isComplementedPoints fails with
anti-points which are equal under `compareTo` but not `equals`
add bfa7d782b1 [CALCITE-4555] Invalid zero literal value is used for
TIMESTAMP WITH LOCAL TIME ZONE type in RexBuilder
add 462f8c3b7d [CALCITE-5746] Support JDK 19
add baa6b104f3 [CALCITE-5710] Add ARRAY_MAX, ARRAY_MIN function (enabled
in Spark library)
add 967bb5acc5 [CALCITE-5676] In JDBC DatabaseMetaData.getColumns, set
DATA_TYPE and TYPE_NAME metadata values for MEASURE types
add 2cb766380a [CALCITE-5738] Add SORT_ARRAY function (enabled in Spark
library)
add 821f03be6a [CALCITE-5704] Add ARRAY_EXCEPT, ARRAY_INTERSECT,
ARRAY_UNION function (enabled in Spark library)
add cf7f71bcde [CALCITE-5768] JDBC adapter should insert a subquery for a
query with ORDER BY ordinal
add 7dc94e381b [CALCITE-5757] BigQuery DATE_TRUNC return type should be
ARG0 and TIMESTAMP_TRUNC/DATETIME_TRUNC should return TIMESTAMP for
DATE/TIMESTAMPs and TIMESTAMP_LTZ for TIMESTAMP_LTZ
add 644a3f0727 [CALCITE-5762] Create class TestUnsafe, that contains
unsafe methods used by tests
add 4219c993b6 [CALCITE-5706] Add class PairList
add 267326d15e [CALCITE-5764] Add Puffin
add ac4920bb0a In Puffin, add actions before and after each source and all
sources
add abf05e39ee Code style: Lint
add c0e6ba264b [CALCITE-5765] Add LintTest, to apply custom lint rules to
source code
add 9f41a123b7 [CALCITE-5721] Capture build scans on ge.apache.org to
benefit from deep build insights
add 2e3e4ae220 [CALCITE-5401] Rule fired by HepPlanner can return
Volcano's RelSubset
add cf1454ddda Code style: Lint
add 0f0288f4e9 [CALCITE-5767] JDBC adapter for MSSQL adds GROUPING to
ORDER BY clause twice when emulating NULLS LAST
add 3dfefd1a95 [CALCITE-5707] Add ARRAY_CONTAINS function (enabled in
Spark library)
add 0f68201723 [CALCITE-5755] In Sarg, allow TimestampString values to be
serialized to/from JSON
add 649f6c41da Bump nokogiri from 1.13.4 to 1.14.3 in /site
add 94fce144b1 [CALCITE-5745] CONCAT function (enabled in Oracle library)
should only return NULL when both arguments are NULL
add 1bda1b5c7a [CALCITE-5425] Should not pushdown Filter through Aggregate
without group keys
add 18ba66da96 [CALCITE-5728] Add ARRAY_TO_STRING function (enabled in
BigQuery library)
add 10f1744709 [CALCITE-5759] 'SEARCH(1, Sarg[IS NOT NULL])' should be
simplified to 'TRUE'
add e4ad5e8b79 Refactor: Make SqlValidatorScope mandatory
add f9a41552d3 Site: Add Oliver Lee as committer
add 4f46cbfaec [CALCITE-5783] Support hint for TableFunctionScan
add 4b37ed377a [CALCITE-5761] Allow DECADE, CENTURY, and MILLENNIUM time
units in DATE_TRUNC, TIMESTAMP_TRUNC, DATETIME_TRUNC functions
add 3f2ae2f4dd [CALCITE-5771] Apply two different NULL semantics for
CONCAT function (enabled in MySQL, Postgres, BigQuery and MSSQL)
add 181dd402ae [CALCITE-5790] Validator should disallow a query with * but
no FROM clause
add 54192eb678 [CALCITE-5788] Order of metadata handler methods is
inconsistent in different java versions
add f48393ce24 [CALCITE-5785] Gradle remote build caching is broken for
:babel:fmppMain and :server:fmppMain tasks
add 8b7284ba39 [CALCITE-5477] Build with Guava 19.0
add a2d2a31a70 [CALCITE-5751] Add ARRAY_APPEND, ARRAY_POSITION,
ARRAY_REMOVE, ARRAY_PREPEND function (enabled in Spark library)
add 2826a1c5c5 [CALCITE-5779] Implicit column alias for single-column
table function should work
add 08b94e33ec [CALCITE-5747] Conflicting FLOOR return type between
Calcite and BigQuery
add 5e88fe0d1e Refactor: Use PairList
add 568ce125e6 Refactor: Move class AggConverter out of SqlToRelConverter
add 9df9b536b7 [CALCITE-5741] Add CONCAT_WS function (enabled in MSSQL,
MySQL, Postgres libraries)
add 2baf23b46c [CALCITE-5773] Gradle show tasks fails when creating
javadocAggregateIncludingTests
add 95089c86fa [CALCITE-5744] Add MAP_FROM_ARRAYS, STR_TO_MAP function
(enabled in Spark library)
add e969f87aea [CALCITE-5778] Add ARRAY_JOIN, ARRAYS_OVERLAP, ARRAYS_ZIP
function (enabled in Spark library)
add 00db00161c [CALCITE-5709] Add TO_BASE32 and FROM_BASE32 functions
(enabled in BigQuery library)
add 7dd3ecd5a6 [CALCITE-5789] Query with two nested subqueries where the
inner-most references the outer-most table returns wrong result [CALCITE-5683]
Two level nested correlated subquery throws an exception during decorrelation
add 50f0e18589 Site: Add Yong Liu as committer
add d4276bcc19 [CALCITE-5786] QuidemTest and DiffRepository are not
compatible with Gradle incremental builds since they write to build/resources
add 7bb4f4191a [CALCITE-5793] JDBC adapter should use NULLS FIRST, NULLS
LAST syntax for BigQuery
add 4e6a33e375 Site: Add Zhe Hu as committer
add aff0fc981b [MINOR] Assert can be replaced in
`AbstractMaterializedViewRule#perform()`
add 313b958059 [CALCITE-5772] Add MAP_CONCAT, MAP_FROM_ENTRIES function
(enabled in Spark library)
add 1dd1b4ac85 [CALCITE-5810] Prevent overflow in substring length
computation
add b94917883c [CALCITE-5727] RelOptFixture#checkUnchanged should assert
planAfter is not present
add 362cc566ed [CALCITE-5711] Implement the SINGLE_VALUE aggregation in
PostgreSQL Dialect
add 7e1e0298cb [CALCITE-5798] Improve simplification of '(x < y) IS NOT
TRUE' when x and y are not nullable
add f1d03166a7 [CALCITE-5816] Only return left-hand table columns when
validate LEFT SEMI JOIN query
add 1b11d99e65 [CALCITE-5708] SUBSTRING validation error if any parameter
is a NULL literal
add 9600147e7d Code style: Lint
add 1f0140eb1d Add various lint checks
add fb6f43192c [CALCITE-5688] Support TRUNCATE TABLE DDL statement in
server parser
add b8ffcce8ec [CALCITE-5780] Simplify '1 > x OR 1 <= x OR x IS NULL' to
TRUE
add f38b2a89b4 Site: Add Dan Zou as committer
add e3105a8fe0 [CALCITE-5819] Upgrade commons-collections from 3.x to 4.4
add 8eeab5ea6d [CALCITE-5823] Remove commons-collections dependency from
innodb
add 2c007fb087 [CALCITE-5769] Optimizing 'CAST(e AS t) IS NOT NULL' to 'e
IS NOT NULL'
add 8d33c2e620 [CALCITE-5782] Add TO_HEX and FROM_HEX functions (enabled
in BigQuery library)
add ad3ecd2187 [CALCITE-5822] Add BIT_LENGTH function (enabled in Spark
library)
add 2ac9028ecc [CALCITE-5824] Handle IndexCondition null pointQueryKey
list in innodb
add 3c5345c988 [CALCITE-5479] FamilyOperandTypeChecker is not readily
composable in sequences
add baf37913f7 [MINOR] Adjust nullableType and java doc for
RexProgramBuilderBase
add b2cdab28ad Site: Add TJ Banghart as committer
add 55f714cc37 [CALCITE-5839] EnumerableInterpretable#StaticFieldDetector
can overwrite its flag and return an incorrect result
add 3ab8003106 Bump vlsi-release-plugins from 1.84 to 1.90
add 94b78e9884 [CALCITE-5865] ClassCastException with FLOOR and CEIL on
conformances that are not builtin
add bdfb17029f [CALCITE-5865] ClassCastException with FLOOR and CEIL on
conformances that are not builtin (follow-up)
add 75750b78b5 [CALCITE-5797] Release Calcite 1.35.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 (2b764dbcf3)
\
N -- N -- N refs/heads/site (75750b78b5)
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 | 2 +-
.github/workflows/buildcache.yml | 1 +
.github/workflows/main.yml | 69 +-
.gitignore | 6 +
babel/build.gradle.kts | 2 +-
babel/src/main/codegen/config.fmpp | 38 +
.../codegen/includes/parserPostgresqlImpls.ftl | 264 +++
.../calcite/sql/babel/postgresql/AndChain.java | 25 +-
.../calcite/sql/babel/postgresql/SqlBegin.java | 90 +
.../calcite/sql/babel/postgresql/SqlCommit.java | 54 +-
.../calcite/sql/babel/postgresql/SqlDiscard.java | 53 +-
.../calcite/sql/babel/postgresql/SqlRollback.java | 54 +-
.../calcite/sql/babel/postgresql/SqlShow.java | 57 +-
.../sql/babel/postgresql}/package-info.java | 4 +-
.../org/apache/calcite/test/BabelParserTest.java | 101 +-
.../java/org/apache/calcite/test/BabelTest.java | 36 +-
babel/src/test/resources/sql/big-query.iq | 595 ++++-
babel/src/test/resources/sql/postgresql.iq | 56 +
babel/src/test/resources/sql/select.iq | 15 +-
bom/build.gradle.kts | 1 +
build.gradle.kts | 54 +-
.../adapter/cassandra/CassandraEnumerator.java | 4 +-
.../calcite/adapter/cassandra/CassandraRules.java | 6 +-
.../calcite/adapter/cassandra/CassandraSchema.java | 14 +-
.../calcite/adapter/cassandra/package-info.java | 2 +-
.../test/CassandraAdapterWithoutKeyspaceTest.java | 3 +-
.../apache/calcite/test/CassandraExtension.java | 17 +-
core/src/main/codegen/default_config.fmpp | 15 +
core/src/main/codegen/templates/Parser.jj | 233 +-
.../main/java/org/apache/calcite/DataContext.java | 2 +-
.../apache/calcite/adapter/clone/ArrayTable.java | 6 +-
.../calcite/adapter/enumerable/AggAddContext.java | 2 +
.../calcite/adapter/enumerable/AggContext.java | 2 +
.../adapter/enumerable/AggResultContext.java | 5 +
.../calcite/adapter/enumerable/EnumUtils.java | 30 +-
.../EnumerableBatchNestedLoopJoinRule.java | 4 +-
.../enumerable/EnumerableInterpretable.java | 2 +-
.../adapter/enumerable/EnumerableLimitRule.java | 3 +-
.../enumerable/EnumerableLimitSortRule.java | 2 +-
.../adapter/enumerable/EnumerableMergeJoin.java | 59 +-
.../enumerable/EnumerableMergeUnionRule.java | 3 +-
.../adapter/enumerable/EnumerableRules.java | 6 +-
.../enumerable/EnumerableSortedAggregate.java | 3 +-
.../adapter/enumerable/EnumerableTableScan.java | 6 +-
.../calcite/adapter/enumerable/MatchUtils.java | 1 +
.../adapter/enumerable/NestedBlockBuilder.java | 3 +
.../adapter/enumerable/NestedBlockBuilderImpl.java | 4 +
.../calcite/adapter/enumerable/NullPolicy.java | 2 +-
.../calcite/adapter/enumerable/PhysType.java | 8 +-
.../calcite/adapter/enumerable/PhysTypeImpl.java | 4 +
.../calcite/adapter/enumerable/RexImpTable.java | 892 ++++---
.../adapter/enumerable/RexToLixTranslator.java | 557 ++---
.../adapter/enumerable/StrictAggImplementor.java | 1 +
.../enumerable/StrictWinAggImplementor.java | 1 +
.../adapter/enumerable/WinAggAddContext.java | 2 +
.../adapter/enumerable/WinAggFrameContext.java | 6 +
.../enumerable/WinAggFrameResultContext.java | 5 +
.../adapter/enumerable/WinAggImplementor.java | 5 +
.../adapter/enumerable/WinAggResultContext.java | 2 +
.../enumerable/impl/AggResultContextImpl.java | 8 +
.../enumerable/impl/WinAggResetContextImpl.java | 1 +
.../calcite/adapter/jdbc/JdbcConvention.java | 6 +-
.../apache/calcite/adapter/jdbc/JdbcSchema.java | 2 +-
.../org/apache/calcite/adapter/jdbc/JdbcTable.java | 2 +-
.../config/CalciteConnectionConfigImpl.java | 9 +-
.../calcite/config/CalciteConnectionProperty.java | 8 +-
.../calcite/config/CalciteSystemProperty.java | 90 +-
.../apache/calcite/interpreter/AggregateNode.java | 1 +
.../org/apache/calcite/jdbc/CalciteConnection.java | 8 +-
.../org/apache/calcite/jdbc/CalciteMetaImpl.java | 13 +-
.../org/apache/calcite/jdbc/CalciteSchema.java | 10 +-
.../apache/calcite/jdbc/ContextSqlValidator.java | 1 +
.../org/apache/calcite/jdbc/JavaRecordType.java | 2 +-
.../apache/calcite/jdbc/JavaTypeFactoryImpl.java | 2 +-
.../calcite/materialize/MaterializationActor.java | 4 +-
.../calcite/materialize/MaterializationKey.java | 2 +-
.../calcite/materialize/SqlStatisticProvider.java | 2 +-
.../apache/calcite/materialize/package-info.java | 2 +-
.../java/org/apache/calcite/model/JsonRoot.java | 15 +-
.../java/org/apache/calcite/model/JsonSchema.java | 6 +-
.../java/org/apache/calcite/model/JsonType.java | 3 +-
.../org/apache/calcite/model/ModelHandler.java | 3 +
.../org/apache/calcite/model/package-info.java | 4 +-
.../java/org/apache/calcite/plan/Convention.java | 4 +-
.../java/org/apache/calcite/plan/RelDigest.java | 2 +-
.../org/apache/calcite/plan/RelOptConnection.java | 2 +-
.../calcite/plan/RelOptMaterializations.java | 3 +
.../org/apache/calcite/plan/RelOptPlanner.java | 9 +-
.../apache/calcite/plan/RelOptPredicateList.java | 15 +-
.../java/org/apache/calcite/plan/RelOptRule.java | 25 +-
.../org/apache/calcite/plan/RelOptRuleOperand.java | 8 +-
.../calcite/plan/RelOptRuleOperandChildPolicy.java | 2 +-
.../java/org/apache/calcite/plan/RelOptSchema.java | 4 +-
.../java/org/apache/calcite/plan/RelOptTable.java | 4 +-
.../java/org/apache/calcite/plan/RelOptUtil.java | 129 +-
.../java/org/apache/calcite/plan/RelTrait.java | 10 +-
.../java/org/apache/calcite/plan/RelTraitDef.java | 4 +-
.../apache/calcite/plan/RexImplicationChecker.java | 22 +-
.../main/java/org/apache/calcite/plan/Strong.java | 36 +-
.../apache/calcite/plan/SubstitutionVisitor.java | 59 +-
.../org/apache/calcite/plan/hep/HepPlanner.java | 11 +-
.../calcite/plan/hep/HepRelMetadataProvider.java | 3 +-
.../org/apache/calcite/plan/hep/HepRelVertex.java | 15 +-
.../plan/visualizer/RuleMatchVisualizer.java | 25 +-
.../calcite/plan/volcano/AbstractConverter.java | 2 +-
.../org/apache/calcite/plan/volcano/Dumpers.java | 2 +-
.../calcite/plan/volcano/IterativeRuleDriver.java | 2 +-
.../calcite/plan/volcano/IterativeRuleQueue.java | 2 +-
.../org/apache/calcite/plan/volcano/RelSet.java | 2 +-
.../org/apache/calcite/plan/volcano/RelSubset.java | 10 +-
.../org/apache/calcite/plan/volcano/RuleQueue.java | 2 +
.../calcite/plan/volcano/TopDownRuleDriver.java | 6 +-
.../apache/calcite/plan/volcano/VolcanoCost.java | 2 +-
.../calcite/plan/volcano/VolcanoPlanner.java | 9 +-
.../apache/calcite/plan/volcano/package-info.java | 102 +-
.../apache/calcite/prepare/CalcitePrepareImpl.java | 30 +-
.../calcite/prepare/QueryableRelBuilder.java | 6 +-
.../org/apache/calcite/rel/AbstractRelNode.java | 49 +-
.../apache/calcite/rel/InvalidRelException.java | 6 +-
.../java/org/apache/calcite/rel/PhysicalNode.java | 62 +-
.../org/apache/calcite/rel/RelCollationImpl.java | 5 +-
.../apache/calcite/rel/RelCollationTraitDef.java | 2 +-
.../org/apache/calcite/rel/RelDistribution.java | 2 +-
.../main/java/org/apache/calcite/rel/RelNode.java | 25 +-
.../java/org/apache/calcite/rel/RelWriter.java | 4 +-
.../org/apache/calcite/rel/convert/Converter.java | 4 +-
.../apache/calcite/rel/convert/ConverterRule.java | 2 +-
.../org/apache/calcite/rel/core/Aggregate.java | 48 +-
.../org/apache/calcite/rel/core/AggregateCall.java | 136 +-
.../java/org/apache/calcite/rel/core/Collect.java | 2 +-
.../java/org/apache/calcite/rel/core/Filter.java | 2 +-
.../java/org/apache/calcite/rel/core/Join.java | 2 +-
.../java/org/apache/calcite/rel/core/JoinInfo.java | 2 +-
.../java/org/apache/calcite/rel/core/Project.java | 19 +
.../java/org/apache/calcite/rel/core/Snapshot.java | 4 +-
.../java/org/apache/calcite/rel/core/Sort.java | 2 +-
.../org/apache/calcite/rel/core/SortExchange.java | 2 +-
.../apache/calcite/rel/core/TableFunctionScan.java | 42 +-
.../org/apache/calcite/rel/core/TableScan.java | 2 +-
.../java/org/apache/calcite/rel/core/Window.java | 5 +-
.../calcite/rel/externalize/RelDotWriter.java | 14 +-
.../calcite/rel/externalize/RelEnumTypes.java | 2 +
.../apache/calcite/rel/externalize/RelJson.java | 238 +-
.../calcite/rel/externalize/RelJsonReader.java | 14 +-
.../calcite/rel/hint/CompositeHintPredicate.java | 2 +-
.../apache/calcite/rel/hint/HintPredicates.java | 5 +
.../calcite/rel/hint/NodeTypeHintPredicate.java | 8 +-
.../apache/calcite/rel/logical/LogicalCalc.java | 2 +-
.../calcite/rel/logical/LogicalCorrelate.java | 1 +
.../apache/calcite/rel/logical/LogicalProject.java | 2 +
.../rel/logical/LogicalTableFunctionScan.java | 35 +-
.../calcite/rel/logical/LogicalTableScan.java | 6 +-
.../rel/metadata/ChainedRelMetadataProvider.java | 2 +-
.../org/apache/calcite/rel/metadata/Metadata.java | 2 +-
.../apache/calcite/rel/metadata/MetadataDef.java | 45 +-
.../calcite/rel/metadata/MetadataFactory.java | 4 +-
.../calcite/rel/metadata/MetadataFactoryImpl.java | 2 +-
.../calcite/rel/metadata/MetadataHandler.java | 22 +-
.../rel/metadata/MetadataHandlerProvider.java | 1 +
.../metadata/ProxyingMetadataHandlerProvider.java | 3 +-
.../metadata/ReflectiveRelMetadataProvider.java | 15 +-
.../calcite/rel/metadata/RelColumnOrigin.java | 2 +-
.../calcite/rel/metadata/RelMdAllPredicates.java | 8 +-
.../calcite/rel/metadata/RelMdCollation.java | 3 +-
.../rel/metadata/RelMdExpressionLineage.java | 1 +
.../calcite/rel/metadata/RelMdPredicates.java | 51 +-
.../apache/calcite/rel/metadata/RelMdRowCount.java | 2 +-
.../org/apache/calcite/rel/metadata/RelMdUtil.java | 2 +-
.../calcite/rel/metadata/RelMetadataProvider.java | 23 +-
.../calcite/rel/metadata/RelMetadataQuery.java | 1 +
.../calcite/rel/metadata/RelMetadataQueryBase.java | 1 +
.../rel/metadata/janino/CacheGeneratorUtil.java | 74 +-
.../janino/RelMetadataHandlerGeneratorUtil.java | 42 +-
.../org/apache/calcite/rel/mutable/MutableRel.java | 2 +-
.../apache/calcite/rel/mutable/MutableRels.java | 13 +-
.../calcite/rel/rel2sql/RelToSqlConverter.java | 24 +-
.../apache/calcite/rel/rel2sql/SqlImplementor.java | 57 +-
.../rel/rules/AbstractJoinExtractFilterRule.java | 2 +-
.../rel/rules/AggregateCaseToFilterRule.java | 34 +-
.../AggregateExpandDistinctAggregatesRule.java | 35 +-
.../rel/rules/AggregateFilterTransposeRule.java | 2 +-
.../calcite/rel/rules/AggregateJoinRemoveRule.java | 2 +-
.../calcite/rel/rules/AggregateMergeRule.java | 2 +-
.../rules/AggregateProjectPullUpConstantsRule.java | 2 +-
.../rel/rules/AggregateReduceFunctionsRule.java | 14 +-
.../calcite/rel/rules/AggregateRemoveRule.java | 53 +-
.../calcite/rel/rules/AggregateStarTableRule.java | 26 +-
.../rel/rules/AggregateUnionTransposeRule.java | 2 +-
.../apache/calcite/rel/rules/CalcRemoveRule.java | 1 +
.../org/apache/calcite/rel/rules/CoreRules.java | 4 +-
.../rel/rules/FilterAggregateTransposeRule.java | 9 +
.../FilterFlattenCorrelatedConditionRule.java | 26 +-
.../apache/calcite/rel/rules/FilterJoinRule.java | 2 +-
.../calcite/rel/rules/IntersectToDistinctRule.java | 2 +-
.../calcite/rel/rules/JoinAssociateRule.java | 2 +-
.../apache/calcite/rel/rules/JoinCommuteRule.java | 2 +-
.../rel/rules/JoinDeriveIsNotNullFilterRule.java | 16 +-
.../calcite/rel/rules/JoinPushThroughJoinRule.java | 2 +-
.../calcite/rel/rules/JoinToCorrelateRule.java | 6 +-
.../calcite/rel/rules/JoinToMultiJoinRule.java | 2 +-
.../rel/rules/MultiJoinOptimizeBushyRule.java | 4 +-
.../rel/rules/MultiJoinProjectTransposeRule.java | 7 +-
.../rel/rules/ProjectAggregateMergeRule.java | 4 +-
.../rel/rules/ProjectCorrelateTransposeRule.java | 14 +-
.../rel/rules/ProjectJoinJoinRemoveRule.java | 2 +-
.../calcite/rel/rules/ProjectRemoveRule.java | 4 +-
.../apache/calcite/rel/rules/PruneEmptyRules.java | 175 +-
.../apache/calcite/rel/rules/PushProjector.java | 2 +-
.../calcite/rel/rules/ReduceExpressionsRule.java | 5 +-
.../rel/rules/SemiJoinJoinTransposeRule.java | 9 +-
.../apache/calcite/rel/rules/SortRemoveRule.java | 2 +-
.../calcite/rel/rules/SubQueryRemoveRule.java | 116 +-
.../apache/calcite/rel/rules/SubstitutionRule.java | 2 +-
.../calcite/rel/rules/TransformationRule.java | 2 +-
.../rel/rules/UnionPullUpConstantsRule.java | 2 +-
.../apache/calcite/rel/rules/ValuesReduceRule.java | 10 +-
.../rules/materialize/MaterializedViewRule.java | 14 +-
.../org/apache/calcite/rel/type/RelCrossType.java | 2 +-
.../org/apache/calcite/rel/type/RelDataType.java | 13 +-
.../calcite/rel/type/RelDataTypeFactory.java | 24 +-
.../calcite/rel/type/RelDataTypeFactoryImpl.java | 65 +-
.../apache/calcite/rel/type/RelDataTypeImpl.java | 8 +-
.../rel/type/RelDataTypePrecedenceList.java | 2 +-
.../org/apache/calcite/rel/type/RelRecordType.java | 1 +
.../rel/type/SingleColumnAliasRelDataType.java | 139 ++
.../java/org/apache/calcite/rex/RexBuilder.java | 72 +-
.../main/java/org/apache/calcite/rex/RexCall.java | 2 +-
.../org/apache/calcite/rex/RexCallBinding.java | 1 +
.../java/org/apache/calcite/rex/RexChecker.java | 2 +-
.../org/apache/calcite/rex/RexCorrelVariable.java | 2 +-
.../java/org/apache/calcite/rex/RexInputRef.java | 18 +-
.../java/org/apache/calcite/rex/RexLiteral.java | 9 +-
.../main/java/org/apache/calcite/rex/RexNode.java | 4 +-
.../java/org/apache/calcite/rex/RexNormalize.java | 9 +-
.../java/org/apache/calcite/rex/RexProgram.java | 4 +-
.../org/apache/calcite/rex/RexProgramBuilder.java | 12 +-
.../java/org/apache/calcite/rex/RexRangeRef.java | 6 +-
.../java/org/apache/calcite/rex/RexShuttle.java | 2 +-
.../java/org/apache/calcite/rex/RexSimplify.java | 138 +-
.../java/org/apache/calcite/rex/RexSubQuery.java | 2 +-
.../org/apache/calcite/rex/RexUnaryBiVisitor.java | 2 +-
.../main/java/org/apache/calcite/rex/RexUtil.java | 11 +-
.../org/apache/calcite/rex/RexVisitorImpl.java | 4 +-
.../org/apache/calcite/rex/RexWindowBound.java | 4 +
.../java/org/apache/calcite/rex/package-info.java | 15 +-
.../runtime/{Unit.java => AccumOperation.java} | 24 +-
.../apache/calcite/runtime/AddPointOperation.java | 51 +
...dinateTransformer.java => AddZTransformer.java} | 31 +-
.../org/apache/calcite/runtime/BinarySearch.java | 6 +
.../org/apache/calcite/runtime/BufferStyle.java | 123 +
.../apache/calcite/runtime/CalciteResource.java | 31 +
.../runtime/{Unit.java => CollectOperation.java} | 27 +-
...former.java => FlipCoordinatesTransformer.java} | 16 +-
.../main/java/org/apache/calcite/runtime/Hook.java | 5 +-
.../org/apache/calcite/runtime/JsonFunctions.java | 9 +-
.../java/org/apache/calcite/runtime/MapEntry.java | 84 +
.../java/org/apache/calcite/runtime/Matcher.java | 1 +
.../java/org/apache/calcite/runtime/PairList.java | 347 +++
.../{Unit.java => RemoveHoleTransformer.java} | 28 +-
.../calcite/runtime/RemovePointOperation.java | 47 +
...r.java => RemoveRepeatedPointsTransformer.java} | 47 +-
.../java/org/apache/calcite/runtime/Resources.java | 29 +-
.../calcite/runtime/SpatialTypeFunctions.java | 346 ++-
.../org/apache/calcite/runtime/SplitOperation.java | 172 ++
.../org/apache/calcite/runtime/SqlFunctions.java | 936 +++++++-
.../runtime/{Unit.java => UnionOperation.java} | 25 +-
.../main/java/org/apache/calcite/runtime/Unit.java | 2 +-
.../calcite/schema/CustomColumnResolvingTable.java | 4 +-
.../java/org/apache/calcite/schema/Function.java | 4 +-
.../apache/calcite/schema/FunctionParameter.java | 2 +-
.../calcite/schema/ImplementableFunction.java | 1 +
.../java/org/apache/calcite/schema/Member.java | 10 +-
.../org/apache/calcite/schema/ModifiableTable.java | 2 +-
.../org/apache/calcite/schema/ModifiableView.java | 2 +-
.../calcite/schema/ProjectableFilterableTable.java | 4 +-
.../java/org/apache/calcite/schema/Schema.java | 12 +-
.../org/apache/calcite/schema/SchemaVersion.java | 1 +
.../java/org/apache/calcite/schema/Statistic.java | 2 +-
.../main/java/org/apache/calcite/schema/Table.java | 8 +-
.../org/apache/calcite/schema/TableFactory.java | 8 +-
.../java/org/apache/calcite/schema/TableMacro.java | 2 +-
.../apache/calcite/schema/impl/AbstractSchema.java | 10 +-
.../schema/impl/AbstractTableQueryable.java | 2 +-
.../calcite/schema/impl/ListTransientTable.java | 2 +-
.../calcite/schema/impl/MaterializedViewTable.java | 2 +-
.../schema/impl/ReflectiveFunctionBase.java | 1 +
.../org/apache/calcite/schema/impl/StarTable.java | 4 +-
.../org/apache/calcite/schema/impl/ViewTable.java | 2 +-
.../java/org/apache/calcite/sql/SqlAsOperator.java | 4 +-
.../org/apache/calcite/sql/SqlBasicFunction.java | 52 +-
.../main/java/org/apache/calcite/sql/SqlCall.java | 16 +-
.../org/apache/calcite/sql/SqlCallBinding.java | 14 +-
.../java/org/apache/calcite/sql/SqlCollation.java | 11 +-
.../org/apache/calcite/sql/SqlDataTypeSpec.java | 4 +-
.../apache/calcite/sql/SqlDescriptorOperator.java | 2 +-
.../java/org/apache/calcite/sql/SqlDialect.java | 18 +-
.../org/apache/calcite/sql/SqlDynamicParam.java | 2 +-
.../org/apache/calcite/sql/SqlFilterOperator.java | 2 +-
.../java/org/apache/calcite/sql/SqlFunction.java | 11 +
.../java/org/apache/calcite/sql/SqlIdentifier.java | 4 +-
.../org/apache/calcite/sql/SqlIntervalLiteral.java | 4 +-
.../apache/calcite/sql/SqlIntervalQualifier.java | 2 +-
.../apache/calcite/sql/SqlJdbcFunctionCall.java | 1 +
.../main/java/org/apache/calcite/sql/SqlKind.java | 170 +-
.../java/org/apache/calcite/sql/SqlLiteral.java | 7 +-
.../main/java/org/apache/calcite/sql/SqlNode.java | 2 +-
.../java/org/apache/calcite/sql/SqlOperator.java | 20 +-
.../org/apache/calcite/sql/SqlOperatorBinding.java | 13 +-
.../java/org/apache/calcite/sql/SqlOrderBy.java | 2 +-
.../org/apache/calcite/sql/SqlOverOperator.java | 2 +-
.../java/org/apache/calcite/sql/SqlSampleSpec.java | 4 +-
.../org/apache/calcite/sql/SqlSelectOperator.java | 2 +-
.../calcite/sql/SqlSingletonAggFunction.java | 50 +
.../calcite/sql/SqlSpatialTypeOperatorTable.java | 9 +-
.../calcite/sql/SqlSplittableAggFunction.java | 49 +-
.../apache/calcite/sql/SqlStaticAggFunction.java | 49 +
.../java/org/apache/calcite/sql/SqlTableRef.java | 6 +-
.../sql/{Symbolizable.java => SqlTruncate.java} | 14 +-
.../calcite/sql/SqlTypeConstructorFunction.java | 2 +-
.../apache/calcite/sql/SqlUnresolvedFunction.java | 2 +-
.../main/java/org/apache/calcite/sql/SqlUtil.java | 47 +
.../java/org/apache/calcite/sql/SqlWindow.java | 4 +-
.../apache/calcite/sql/SqlWindowTableFunction.java | 4 +-
.../apache/calcite/sql/SqlWithinGroupOperator.java | 9 +-
.../java/org/apache/calcite/sql/SqlWriter.java | 18 +-
.../org/apache/calcite/sql/SqlWriterConfig.java | 1 +
.../apache/calcite/sql/TableCharacteristic.java | 2 +-
.../org/apache/calcite/sql/advise/SqlAdvisor.java | 1 +
.../apache/calcite/sql/advise/package-info.java | 2 +-
.../org/apache/calcite/sql/ddl/SqlDdlNodes.java | 6 +
.../{SqlDropSchema.java => SqlTruncateTable.java} | 43 +-
.../calcite/sql/dialect/BigQuerySqlDialect.java | 64 +-
.../calcite/sql/dialect/ClickHouseSqlDialect.java | 54 +-
.../apache/calcite/sql/dialect/HiveSqlDialect.java | 16 -
.../calcite/sql/dialect/HsqldbSqlDialect.java | 3 +-
.../calcite/sql/dialect/MssqlSqlDialect.java | 7 +-
.../calcite/sql/dialect/MysqlSqlDialect.java | 10 +-
.../calcite/sql/dialect/OracleSqlDialect.java | 30 +
.../calcite/sql/dialect/PostgresqlSqlDialect.java | 40 +
.../calcite/sql/dialect/SparkSqlDialect.java | 25 +-
.../calcite/sql/fun/SqlAnyValueAggFunction.java | 2 +-
.../calcite/sql/fun/SqlBasicAggFunction.java | 54 +-
.../calcite/sql/fun/SqlBitOpAggFunction.java | 2 +-
.../apache/calcite/sql/fun/SqlCaseOperator.java | 16 +-
.../apache/calcite/sql/fun/SqlCastFunction.java | 139 +-
.../apache/calcite/sql/fun/SqlConvertFunction.java | 135 +-
.../calcite/sql/fun/SqlCountAggFunction.java | 2 +-
.../apache/calcite/sql/fun/SqlFloorFunction.java | 38 +-
.../calcite/sql/fun/SqlGroupingFunction.java | 47 +
.../calcite/sql/fun/SqlInternalOperators.java | 5 +
.../apache/calcite/sql/fun/SqlItemOperator.java | 39 +-
.../calcite/sql/fun/SqlJsonValueFunction.java | 2 +-
.../org/apache/calcite/sql/fun/SqlLibrary.java | 73 +-
.../sql/fun/SqlLibraryOperatorTableFactory.java | 15 +-
.../calcite/sql/fun/SqlLibraryOperators.java | 816 ++++++-
.../calcite/sql/fun/SqlLiteralAggFunction.java | 68 +
.../calcite/sql/fun/SqlMapQueryConstructor.java | 2 +-
.../calcite/sql/fun/SqlMapValueConstructor.java | 2 +-
.../calcite/sql/fun/SqlMinMaxAggFunction.java | 2 +-
.../calcite/sql/fun/SqlMonotonicUnaryFunction.java | 4 +-
.../sql/fun/SqlMultisetValueConstructor.java | 2 +-
.../calcite/sql/fun/SqlPositionFunction.java | 46 +-
.../calcite/sql/fun/SqlQuantifyOperator.java | 53 +
.../calcite/sql/fun/SqlRegexpReplaceFunction.java | 5 +-
.../org/apache/calcite/sql/fun/SqlRowOperator.java | 24 +-
.../calcite/sql/fun/SqlSingleValueAggFunction.java | 2 +-
.../calcite/sql/fun/SqlStdOperatorTable.java | 99 +-
.../calcite/sql/fun/SqlSubstringFunction.java | 29 +-
.../apache/calcite/sql/fun/SqlSumAggFunction.java | 2 +-
.../sql/fun/SqlSumEmptyIsZeroAggFunction.java | 2 +-
.../apache/calcite/sql/fun/SqlThrowOperator.java | 4 +-
.../calcite/sql/fun/SqlTimestampAddFunction.java | 47 +-
.../calcite/sql/fun/SqlTranslateFunction.java | 112 +
.../org/apache/calcite/sql/fun/package-info.java | 2 +-
.../java/org/apache/calcite/sql/package-info.java | 39 +-
.../calcite/sql/parser/SqlParserImplFactory.java | 2 +-
.../apache/calcite/sql/parser/SqlParserPos.java | 2 +-
.../apache/calcite/sql/pretty/SqlPrettyWriter.java | 2 +-
...er.java => ArrayElementOperandTypeChecker.java} | 32 +-
.../sql/type/CompositeOperandTypeChecker.java | 2 +-
.../type/CompositeSingleOperandTypeChecker.java | 2 +-
.../calcite/sql/type/FamilyOperandTypeChecker.java | 42 +-
.../org/apache/calcite/sql/type/InferTypes.java | 2 +-
.../sql/type/IntervalOperandTypeChecker.java | 3 +-
.../apache/calcite/sql/type/MeasureSqlType.java | 4 +
.../apache/calcite/sql/type/OperandHandlers.java | 10 +
.../org/apache/calcite/sql/type/OperandTypes.java | 246 +-
.../org/apache/calcite/sql/type/ReturnTypes.java | 279 ++-
.../sql/type/SqlReturnTypeInferenceChain.java | 2 +-
.../calcite/sql/type/SqlTypeCoercionRule.java | 46 +-
.../calcite/sql/type/SqlTypeFactoryImpl.java | 31 +-
.../apache/calcite/sql/type/SqlTypeTransforms.java | 91 +-
.../org/apache/calcite/sql/type/SqlTypeUtil.java | 64 +-
.../apache/calcite/sql/validate/AggChecker.java | 20 +-
.../sql/validate/AggregatingSelectScope.java | 2 +-
.../calcite/sql/validate/AliasNamespace.java | 5 +-
.../calcite/sql/validate/DelegatingScope.java | 10 +-
.../apache/calcite/sql/validate/EmptyScope.java | 4 +-
.../apache/calcite/sql/validate/GroupByScope.java | 4 +-
.../apache/calcite/sql/validate/JoinNamespace.java | 3 +
.../org/apache/calcite/sql/validate/JoinScope.java | 15 +-
.../org/apache/calcite/sql/validate/ListScope.java | 13 +-
.../apache/calcite/sql/validate/OrderByScope.java | 4 +-
.../org/apache/calcite/sql/validate/OverScope.java | 4 +-
.../apache/calcite/sql/validate/SelectScope.java | 31 +-
.../sql/validate/SqlAbstractConformance.java | 4 +-
.../calcite/sql/validate/SqlConformance.java | 17 +-
.../calcite/sql/validate/SqlConformanceEnum.java | 8 +-
.../sql/validate/SqlDelegatingConformance.java | 71 +-
.../sql/validate/SqlUserDefinedAggFunction.java | 2 +-
.../sql/validate/SqlUserDefinedFunction.java | 3 +-
.../sql/validate/SqlUserDefinedTableFunction.java | 1 +
.../apache/calcite/sql/validate/SqlValidator.java | 45 +-
.../calcite/sql/validate/SqlValidatorImpl.java | 421 ++--
.../sql/validate/SqlValidatorNamespace.java | 14 +-
.../calcite/sql/validate/SqlValidatorScope.java | 27 +-
.../calcite/sql/validate/SqlValidatorUtil.java | 54 +-
.../apache/calcite/sql/validate/TableScope.java | 4 +-
.../org/apache/calcite/sql/validate/WithScope.java | 8 +-
.../validate/implicit/AbstractTypeCoercion.java | 37 +-
.../sql/validate/implicit/TypeCoercion.java | 2 +-
.../sql/validate/implicit/TypeCoercionFactory.java | 1 +
.../sql/validate/implicit/TypeCoercionImpl.java | 21 +-
.../sql/validate/implicit/package-info.java | 2 +-
.../org/apache/calcite/sql2rel/AggConverter.java | 611 +++++
.../calcite/sql2rel/CorrelateProjectExtractor.java | 38 +-
.../apache/calcite/sql2rel/RelDecorrelator.java | 101 +-
.../sql2rel/RelStructuredTypeFlattener.java | 98 +-
.../org/apache/calcite/sql2rel/SqlRexContext.java | 6 +-
.../apache/calcite/sql2rel/SqlToRelConverter.java | 866 ++-----
.../calcite/sql2rel/StandardConvertletTable.java | 184 +-
.../org/apache/calcite/tools/FrameworkConfig.java | 4 +-
.../java/org/apache/calcite/tools/Program.java | 5 +-
.../java/org/apache/calcite/tools/RelBuilder.java | 421 +++-
.../calcite/util/BarfingInvocationHandler.java | 2 +-
.../main/java/org/apache/calcite/util/BitSets.java | 2 +-
.../src/main/java/org/apache/calcite/util/Bug.java | 7 +-
.../org/apache/calcite/util/BuiltInMethod.java | 53 +-
.../java/org/apache/calcite/util/ChunkList.java | 2 +-
.../apache/calcite/util/ControlFlowException.java | 2 +-
.../java/org/apache/calcite/util/DateString.java | 8 +-
.../java/org/apache/calcite/util/Glossary.java | 15 +-
.../main/java/org/apache/calcite/util/Holder.java | 4 +-
.../org/apache/calcite/util/ImmutableBitSet.java | 76 +-
.../org/apache/calcite/util/ImmutableIntList.java | 17 +
.../apache/calcite/util/ImmutableNullableList.java | 6 +-
.../apache/calcite/util/IntegerIntervalSet.java | 2 +-
.../java/org/apache/calcite/util/JsonBuilder.java | 4 +-
.../java/org/apache/calcite/util/NlsString.java | 18 +-
.../main/java/org/apache/calcite/util/Pair.java | 26 +-
.../apache/calcite/util/PartiallyOrderedSet.java | 16 +-
.../java/org/apache/calcite/util/Permutation.java | 10 +-
.../calcite/util/PrecedenceClimbingParser.java | 1 +
.../main/java/org/apache/calcite/util/Puffin.java | 397 ++++
.../java/org/apache/calcite/util/RangeSets.java | 120 +-
.../calcite/util/ReflectiveVisitDispatcher.java | 2 +-
.../main/java/org/apache/calcite/util/Source.java | 2 +
.../main/java/org/apache/calcite/util/Sources.java | 27 +-
.../main/java/org/apache/calcite/util/Static.java | 2 +-
.../java/org/apache/calcite/util/TimeString.java | 6 +-
.../org/apache/calcite/util/TimestampString.java | 51 +-
.../calcite/util/TimestampWithTimeZoneString.java | 4 +-
.../apache/calcite/util/UnmodifiableArrayList.java | 6 +-
.../util/UnsafeX509ExtendedTrustManager.java | 75 +
.../main/java/org/apache/calcite/util/Util.java | 159 +-
.../java/org/apache/calcite/util/XmlOutput.java | 10 +-
.../apache/calcite/util/format/FormatElement.java | 18 +-
.../calcite/util/format/FormatElementEnum.java | 202 +-
.../apache/calcite/util/format/FormatModels.java | 72 +-
.../java/org/apache/calcite/util/graph/Graphs.java | 3 +-
.../org/apache/calcite/util/mapping/IntPair.java | 2 +-
.../apache/calcite/util/mapping/MappingType.java | 2 +-
.../org/apache/calcite/util/mapping/Mappings.java | 16 +-
.../calcite/plan/visualizer/viz-template.html | 12 +-
.../calcite/runtime/CalciteResource.properties | 10 +
.../enumerable/StaticFieldDetectorTest.java | 115 +
.../examples/foodmart/java/JdbcExample.java | 2 +-
.../calcite/jdbc/CalciteRemoteDriverTest.java | 50 +-
.../calcite/materialize/LatticeSuggesterTest.java | 62 +-
.../materialize/NormalizationTrimFieldTest.java | 2 +-
.../org/apache/calcite/plan/RelOptUtilTest.java | 47 +-
.../org/apache/calcite/plan/RelWriterTest.java | 119 +-
.../calcite/plan/volcano/TraitPropagationTest.java | 3 +-
.../calcite/plan/volcano/VolcanoPlannerTest.java | 43 +
.../org/apache/calcite/profile/ProfilerTest.java | 22 +-
.../rel/logical/ToLogicalConverterTest.java | 2 +-
.../calcite/rel/metadata/MetadataHandlerTest.java | 34 +-
.../apache/calcite/rel/metadata/RelMdUtilTest.java | 2 +-
.../rel/rel2sql/RelToSqlConverterStructsTest.java | 3 +-
.../calcite/rel/rel2sql/RelToSqlConverterTest.java | 474 +++-
.../calcite/rel/rules/DateRangeRulesTest.java | 17 +-
.../calcite/rel/rules/EnumerableLimitRuleTest.java | 4 +-
.../org/apache/calcite/rex/RexBuilderTest.java | 241 +-
.../org/apache/calcite/rex/RexExecutorTest.java | 17 +-
.../org/apache/calcite/rex/RexNormalizeTest.java | 6 +-
.../apache/calcite/rex/RexProgramBuilderBase.java | 40 +-
.../org/apache/calcite/rex/RexProgramTest.java | 431 +++-
.../org/apache/calcite/rex/RexProgramTestBase.java | 36 +-
.../org/apache/calcite/runtime/AutomatonTest.java | 25 +-
.../runtime/DeterministicAutomatonTest.java | 20 +-
.../apache/calcite/runtime/EnumerablesTest.java | 313 +--
.../java/org/apache/calcite/sql/SqlNodeTest.java | 4 +-
.../calcite/sql/SqlSetOptionOperatorTest.java | 4 +-
.../apache/calcite/sql/test/DocumentationTest.java | 50 +-
.../apache/calcite/sql/test/SqlAdvisorTest.java | 6 +-
.../calcite/sql/test/SqlPrettyWriterTest.java | 7 +-
.../apache/calcite/sql/type/OperandTypesTest.java | 57 +
.../calcite/sql/type/SqlTypeFactoryTest.java | 26 +-
.../apache/calcite/sql/type/SqlTypeUtilTest.java | 23 +
.../calcite/sql/validate/LexCaseSensitiveTest.java | 6 +-
.../apache/calcite/sql/validate/LexEscapeTest.java | 6 +-
.../calcite/sql/validate/SqlValidatorUtilTest.java | 4 +-
.../sql2rel/CorrelateProjectExtractorTest.java | 22 +-
.../calcite/sql2rel/RelDecorrelatorTest.java | 2 +-
.../calcite/sql2rel/RelFieldTrimmerTest.java | 14 +-
.../apache/calcite/test/CalciteResourceTest.java | 4 +-
.../apache/calcite/test/CollectionTypeTest.java | 22 +-
.../org/apache/calcite/test/HepPlannerTest.java | 22 +
.../calcite/test/InduceGroupingTypeTest.java | 19 +-
.../org/apache/calcite/test/InterpreterTest.java | 2 +-
.../test/JdbcFrontJdbcBackLinqMiddleTest.java | 2 +-
.../apache/calcite/test/JdbcFrontJdbcBackTest.java | 19 +-
.../apache/calcite/test/JdbcFrontLinqBackTest.java | 55 +-
.../java/org/apache/calcite/test/JdbcTest.java | 114 +-
.../java/org/apache/calcite/test/LatticeTest.java | 14 +-
.../java/org/apache/calcite/test/LintTest.java | 360 +++
.../MaterializedViewSubstitutionVisitorTest.java | 10 +-
.../java/org/apache/calcite/test/PuffinTest.java | 174 ++
.../apache/calcite/test/ReflectiveSchemaTest.java | 59 +-
.../org/apache/calcite/test/RelBuilderTest.java | 269 ++-
.../apache/calcite/test/RelMdPredicatesTest.java | 94 +
.../org/apache/calcite/test/RelMetadataTest.java | 217 +-
.../org/apache/calcite/test/RelOptRulesTest.java | 468 +++-
.../calcite/test/RexImplicationCheckerTest.java | 54 +-
.../apache/calcite/test/RexTransformerTest.java | 15 +-
.../apache/calcite/test/ScannableTableTest.java | 38 +-
.../org/apache/calcite/test/SqlFunctionsTest.java | 282 ++-
.../apache/calcite/test/SqlHintsConverterTest.java | 26 +-
.../calcite/test/SqlOperatorBindingTest.java | 2 +-
.../calcite/test/SqlStatisticProviderTest.java | 2 +-
.../apache/calcite/test/SqlToRelConverterTest.java | 92 +-
.../apache/calcite/test/SqlValidatorMatchTest.kt | 16 +
.../org/apache/calcite/test/SqlValidatorTest.java | 367 ++-
.../org/apache/calcite/test/TableFunctionTest.java | 10 +-
.../org/apache/calcite/test/TimeFrameTest.java | 2 +-
.../test/java/org/apache/calcite/test/UdtTest.java | 12 +
.../concurrent/ConcurrentTestCommandGenerator.java | 10 +-
.../concurrent/ConcurrentTestCommandScript.java | 85 +-
.../calcite/test/concurrent/package-info.java | 33 +-
.../test/enumerable/EnumerableCalcTest.java | 50 +-
.../test/enumerable/EnumerableJoinTest.java | 29 +-
.../test/enumerable/EnumerableLimitSortTest.java | 172 ++
.../test/enumerable/EnumerableRepeatUnionTest.java | 7 +-
.../enumerable/EnumerableStringComparisonTest.java | 34 +-
.../org/apache/calcite/tools/FrameworksTest.java | 16 +-
.../java/org/apache/calcite/tools/PlannerTest.java | 8 +-
.../java/org/apache/calcite/util/BitSetsTest.java | 22 +-
.../org/apache/calcite/util/ChunkListTest.java | 18 +-
.../org/apache/calcite/util/FormatModelTest.java | 2 +-
.../apache/calcite/util/ImmutableBitSetTest.java | 241 +-
.../java/org/apache/calcite/util/PairListTest.java | 312 +++
.../calcite/util/PartiallyOrderedSetTest.java | 8 +-
.../apache/calcite/util/PermutationTestCase.java | 2 +-
.../java/org/apache/calcite/util/RangeSetTest.java | 198 +-
.../java/org/apache/calcite/util/SourceTest.java | 14 +-
.../java/org/apache/calcite/util/TestUnsafe.java | 239 ++
.../java/org/apache/calcite/util/UtilTest.java | 458 ++--
.../util/format/FormatElementEnumTest.java} | 19 +-
.../calcite/util/graph/DirectedGraphTest.java | 149 +-
.../apache/calcite/util/mapping/MappingTest.java | 27 +-
.../RelMdPredicatesTestLeftInferredFromJoin.csv | 6 +
.../test/RelMdPredicatesTestPullUpFromJoin.csv | 6 +
.../RelMdPredicatesTestRightInferredFromJoin.csv | 6 +
.../org/apache/calcite/test/RelOptRulesTest.xml | 1414 +++++++----
.../apache/calcite/test/SqlHintsConverterTest.xml | 11 +
.../apache/calcite/test/SqlToRelConverterTest.xml | 151 +-
core/src/test/resources/sql/agg.iq | 137 ++
core/src/test/resources/sql/blank.iq | 7 +-
core/src/test/resources/sql/conditions.iq | 28 +
core/src/test/resources/sql/functions.iq | 735 ++++++
core/src/test/resources/sql/join.iq | 71 +
core/src/test/resources/sql/misc.iq | 139 ++
core/src/test/resources/sql/spatial.iq | 441 +++-
core/src/test/resources/sql/sub-query.iq | 149 +-
core/src/test/resources/sql/winagg.iq | 20 +
.../calcite/adapter/druid/DruidExpressions.java | 5 +-
.../calcite/adapter/druid/DruidJsonFilter.java | 2 +-
.../apache/calcite/adapter/druid/DruidQuery.java | 5 +-
.../adapter/druid/DruidSqlCastConverter.java | 4 +-
.../adapter/druid/DruidSqlOperatorConverter.java | 1 +
.../adapter/druid/SubstringOperatorConversion.java | 4 +-
.../adapter/druid/DruidQueryFilterTest.java | 13 +-
.../org/apache/calcite/test/DruidAdapter2IT.java | 105 +-
.../org/apache/calcite/test/DruidAdapterIT.java | 110 +-
.../java/org/apache/calcite/test/DruidChecker.java | 4 +-
.../calcite/test/DruidDateRangeRulesTest.java | 9 +-
.../elasticsearch/ElasticsearchConstants.java | 1 +
.../adapter/elasticsearch/ElasticsearchJson.java | 3 +
.../adapter/elasticsearch/ElasticsearchRel.java | 5 +
.../adapter/elasticsearch/ElasticsearchRules.java | 1 +
.../adapter/elasticsearch/ElasticsearchSchema.java | 11 +
.../elasticsearch/ElasticsearchSchemaFactory.java | 58 +-
.../elasticsearch/ElasticsearchSearchResult.java | 1 +
.../adapter/elasticsearch/ElasticsearchTable.java | 1 +
.../elasticsearch/ElasticsearchTableScan.java | 2 +-
.../ElasticsearchToEnumerableConverter.java | 2 +
.../elasticsearch/ElasticsearchTransport.java | 1 +
.../adapter/elasticsearch/PredicateAnalyzer.java | 3 +
.../calcite/adapter/elasticsearch/Scrolling.java | 2 +-
.../elasticsearch/ElasticSearchAdapterTest.java | 40 +-
.../elasticsearch/ElasticsearchJsonTest.java | 36 +-
.../elasticsearch/EmbeddedElasticsearchNode.java | 12 +-
.../elasticsearch/EmbeddedElasticsearchPolicy.java | 93 +-
.../calcite/adapter/elasticsearch/MatchTest.java | 1 +
.../adapter/elasticsearch/Projection2Test.java | 2 +
.../adapter/elasticsearch/QueryBuildersTest.java | 1 +
.../adapter/elasticsearch/ScrollingTest.java | 1 +
.../apache/calcite/test/ElasticsearchChecker.java | 2 +
.../calcite/adapter/csv/CsvStreamTableFactory.java | 2 +-
.../apache/calcite/adapter/csv/package-info.java | 2 +-
.../apache/calcite/test/ExampleFunctionTest.java | 4 +-
.../calcite/adapter/file/CsvStreamReader.java | 2 +-
.../apache/calcite/adapter/file/FileReader.java | 3 +-
.../calcite/adapter/file/FileRowConverter.java | 2 +-
.../calcite/adapter/geode/rel/GeodeRules.java | 2 +-
.../adapter/geode/util/JavaTypeFactoryExtImpl.java | 2 +-
.../adapter/geode/rel/GeodeEmbeddedPolicy.java | 1 +
gradle.properties | 20 +-
innodb/build.gradle.kts | 1 -
.../calcite/adapter/innodb/IndexCondition.java | 9 +-
.../adapter/innodb/InnodbFilterTranslator.java | 10 +-
.../calcite/adapter/innodb/InnodbSchema.java | 3 +-
.../calcite/adapter/innodb/InnodbTableScan.java | 6 +-
.../innodb/InnodbToEnumerableConverter.java | 34 +-
.../calcite/adapter/innodb/InnodbAdapterTest.java | 4 +-
.../adapter/kafka/KafkaMessageEnumerator.java | 2 +-
.../calcite/adapter/kafka/KafkaStreamTable.java | 2 +-
.../calcite/adapter/kafka/KafkaTableOptions.java | 2 +-
.../apache/calcite/adapter/kafka/package-info.java | 2 +-
.../apache/calcite/linq4j/AbstractEnumerable.java | 2 +-
.../apache/calcite/linq4j/AbstractEnumerable2.java | 2 +-
.../apache/calcite/linq4j/AbstractQueryable.java | 2 +-
.../apache/calcite/linq4j/DefaultEnumerable.java | 2 +-
.../java/org/apache/calcite/linq4j/Enumerable.java | 4 +-
.../apache/calcite/linq4j/EnumerableDefaults.java | 40 +-
.../apache/calcite/linq4j/ExtendedEnumerable.java | 16 +-
.../calcite/linq4j/ExtendedOrderedEnumerable.java | 2 +-
.../apache/calcite/linq4j/ExtendedQueryable.java | 8 +-
.../java/org/apache/calcite/linq4j/Extensions.java | 2 +-
.../java/org/apache/calcite/linq4j/Linq4j.java | 12 +-
.../org/apache/calcite/linq4j/MemoryFactory.java | 1 +
.../calcite/linq4j/MergeUnionEnumerator.java | 1 +
.../java/org/apache/calcite/linq4j/Nullness.java | 19 +-
.../org/apache/calcite/linq4j/QueryProvider.java | 6 +-
.../apache/calcite/linq4j/QueryProviderImpl.java | 2 +-
.../java/org/apache/calcite/linq4j/Queryable.java | 2 +-
.../apache/calcite/linq4j/QueryableDefaults.java | 10 +-
.../org/apache/calcite/linq4j/RawEnumerable.java | 4 +-
.../org/apache/calcite/linq4j/RawQueryable.java | 1 +
.../apache/calcite/linq4j/function/Functions.java | 6 +-
.../calcite/linq4j/function/NonDeterministic.java | 4 +-
.../apache/calcite/linq4j/tree/BlockBuilder.java | 2 +-
.../org/apache/calcite/linq4j/tree/Blocks.java | 2 +-
.../calcite/linq4j/tree/ConditionalExpression.java | 1 -
.../calcite/linq4j/tree/ConditionalStatement.java | 1 -
.../linq4j/tree/DeterministicCodeOptimizer.java | 1 -
.../org/apache/calcite/linq4j/tree/Expression.java | 4 +-
.../apache/calcite/linq4j/tree/ExpressionType.java | 4 +-
.../apache/calcite/linq4j/tree/Expressions.java | 14 +-
.../apache/calcite/linq4j/tree/NewExpression.java | 2 +-
.../java/org/apache/calcite/linq4j/tree/Node.java | 4 +-
.../calcite/linq4j/tree/OptimizeShuttle.java | 18 +
.../org/apache/calcite/linq4j/tree/Primitive.java | 2 +-
.../org/apache/calcite/linq4j/tree/Statement.java | 2 +-
.../java/org/apache/calcite/linq4j/tree/Types.java | 2 +-
.../apache/calcite/linq4j/tree/package-info.java | 2 +-
.../calcite/linq4j/MemoryEnumerableTest.java | 11 +-
.../calcite/linq4j/test/BlockBuilderTest.java | 1 +
.../apache/calcite/linq4j/test/ExpressionTest.java | 4 +-
.../apache/calcite/linq4j/test/InlinerTest.java | 5 +-
.../calcite/linq4j/test/JoinPreserveOrderTest.java | 1 +
.../apache/calcite/linq4j/test/LimitSortTest.java | 23 +-
.../org/apache/calcite/linq4j/test/Linq4jTest.java | 24 +-
.../apache/calcite/linq4j/test/OptimizerTest.java | 98 +-
.../apache/calcite/linq4j/test/PrimitiveTest.java | 6 +-
.../apache/calcite/adapter/mongodb/MongoRel.java | 9 +-
.../adapter/mongodb/MongoSchemaFactory.java | 2 +-
.../apache/calcite/adapter/mongodb/MongoTable.java | 4 +-
.../calcite/adapter/mongodb/MongoTableScan.java | 2 +-
.../mongodb/MongoToEnumerableConverter.java | 2 +-
.../calcite/adapter/mongodb/MongoAdapterTest.java | 4 +-
.../apache/calcite/adapter/pig/PigAggregate.java | 1 +
.../calcite/adapter/pig/PigTableFactory.java | 2 +-
.../calcite/piglet/DynamicTupleRecordType.java | 1 +
.../org/apache/calcite/piglet/PigRelBuilder.java | 3 +-
.../java/org/apache/calcite/test/PigRelExTest.java | 3 +-
.../calcite/adapter/tpcds/TpcdsSchemaFactory.java | 2 +-
.../calcite/adapter/tpch/TpchSchemaFactory.java | 2 +-
.../apache/calcite/adapter/os/OsAdapterTest.java | 3 +-
.../apache/calcite/adapter/tpcds/TpcdsTest.java | 10 +-
.../org/apache/calcite/adapter/tpch/TpchTest.java | 2 +-
.../materialize/TpcdsLatticeSuggesterTest.java | 20 +-
.../calcite/adapter/redis/RedisCaseBase.java | 8 +-
.../calcite/adapter/redis/RedisDataCaseBase.java | 8 +-
.../calcite/adapter/redis/RedisMiniServer.java | 8 +-
server/build.gradle.kts | 2 +-
server/src/main/codegen/config.fmpp | 8 +
server/src/main/codegen/includes/parserImpls.ftl | 19 +
.../apache/calcite/server/ServerDdlExecutor.java | 38 +
.../org/apache/calcite/test/ServerParserTest.java | 11 +
.../java/org/apache/calcite/test/ServerTest.java | 17 +-
server/src/test/resources/sql/table.iq | 19 +
settings.gradle.kts | 25 +-
site/_docs/algebra.md | 9 +-
site/_docs/model.md | 9 +-
site/_docs/reference.md | 189 +-
site/_posts/2021-06-04-release-1.27.0.md | 2 +-
.../adapter/spark/EnumerableToSparkConverter.java | 2 +-
.../apache/calcite/adapter/spark/HttpServer.java | 2 +-
.../apache/calcite/adapter/spark/SparkRules.java | 9 +-
.../apache/calcite/adapter/spark/SparkRuntime.java | 2 +-
.../adapter/spark/SparkToEnumerableConverter.java | 2 +-
.../org/apache/calcite/test/SparkAdapterTest.java | 154 +-
.../calcite/adapter/splunk/SplunkDriver.java | 2 +-
.../calcite/adapter/splunk/SplunkPushDownRule.java | 17 +-
.../calcite/adapter/splunk/SplunkTableScan.java | 2 +-
.../calcite/adapter/splunk/package-info.java | 2 +-
.../splunk/search/SplunkConnectionImpl.java | 2 +-
.../apache/calcite/sql/parser/SqlParserTest.java | 124 +-
.../apache/calcite/sql/test/AbstractSqlTester.java | 28 +-
.../apache/calcite/sql/test/ResultCheckers.java | 67 +-
.../calcite/sql/test/SqlOperatorFixture.java | 77 +-
.../org/apache/calcite/sql/test/SqlTester.java | 5 +-
.../java/org/apache/calcite/sql/test/SqlTests.java | 14 +-
.../org/apache/calcite/test/CalciteAssert.java | 60 +-
.../org/apache/calcite/test/DiffRepository.java | 32 +-
.../java/org/apache/calcite/test/DiffTestCase.java | 2 +-
.../java/org/apache/calcite/test/Matchers.java | 22 +-
.../apache/calcite/test/MockSqlOperatorTable.java | 2 +-
.../java/org/apache/calcite/test/QuidemTest.java | 53 +-
.../apache/calcite/test/RelMetadataFixture.java | 6 +-
.../org/apache/calcite/test/RelOptFixture.java | 5 +
.../test/RexImplicationCheckerFixtures.java | 2 +-
.../calcite/test/SqlOperatorFixtureImpl.java | 4 +-
.../apache/calcite/test/SqlOperatorFixtures.java | 118 +
.../org/apache/calcite/test/SqlOperatorTest.java | 2486 +++++++++++++++++---
.../org/apache/calcite/test/SqlToRelFixture.java | 2 +-
.../apache/calcite/test/SqlValidatorFixture.java | 5 +-
.../main/java/org/apache/calcite/test/Unsafe.java | 1 +
.../test/catalog/CompoundNameColumnResolver.java | 23 +-
.../org/apache/calcite/test/catalog/Fixture.java | 7 +
.../calcite/test/catalog/MockCatalogReader.java | 17 +-
.../test/catalog/MockCatalogReaderSimple.java | 228 +-
.../main/java/org/apache/calcite/util/Smalls.java | 32 +-
.../java/org/apache/calcite/util/TestUtil.java | 130 +-
.../java/org/apache/calcite/test/FixtureTest.java | 14 +-
.../java/org/apache/calcite/util/TestUtilTest.java | 33 +-
.../calcite/benchmarks/MetadataBenchmark.java | 3 +-
758 files changed, 25653 insertions(+), 7792 deletions(-)
create mode 100644 babel/src/main/codegen/includes/parserPostgresqlImpls.ftl
copy core/src/main/java/org/apache/calcite/runtime/Unit.java =>
babel/src/main/java/org/apache/calcite/sql/babel/postgresql/AndChain.java (60%)
create mode 100644
babel/src/main/java/org/apache/calcite/sql/babel/postgresql/SqlBegin.java
copy core/src/main/java/org/apache/calcite/sql/ddl/SqlCheckConstraint.java =>
babel/src/main/java/org/apache/calcite/sql/babel/postgresql/SqlCommit.java (52%)
copy core/src/main/java/org/apache/calcite/sql/ddl/SqlCheckConstraint.java =>
babel/src/main/java/org/apache/calcite/sql/babel/postgresql/SqlDiscard.java
(54%)
copy core/src/main/java/org/apache/calcite/sql/ddl/SqlCheckConstraint.java =>
babel/src/main/java/org/apache/calcite/sql/babel/postgresql/SqlRollback.java
(52%)
copy core/src/main/java/org/apache/calcite/sql/ddl/SqlCheckConstraint.java =>
babel/src/main/java/org/apache/calcite/sql/babel/postgresql/SqlShow.java (54%)
copy {core/src/main/java/org/apache/calcite/adapter/clone =>
babel/src/main/java/org/apache/calcite/sql/babel/postgresql}/package-info.java
(87%)
create mode 100644
core/src/main/java/org/apache/calcite/rel/type/SingleColumnAliasRelDataType.java
copy core/src/main/java/org/apache/calcite/runtime/{Unit.java =>
AccumOperation.java} (65%)
create mode 100644
core/src/main/java/org/apache/calcite/runtime/AddPointOperation.java
copy core/src/main/java/org/apache/calcite/runtime/{CoordinateTransformer.java
=> AddZTransformer.java} (62%)
create mode 100644
core/src/main/java/org/apache/calcite/runtime/BufferStyle.java
copy core/src/main/java/org/apache/calcite/runtime/{Unit.java =>
CollectOperation.java} (57%)
copy core/src/main/java/org/apache/calcite/runtime/{CoordinateTransformer.java
=> FlipCoordinatesTransformer.java} (76%)
create mode 100644 core/src/main/java/org/apache/calcite/runtime/MapEntry.java
create mode 100644 core/src/main/java/org/apache/calcite/runtime/PairList.java
copy core/src/main/java/org/apache/calcite/runtime/{Unit.java =>
RemoveHoleTransformer.java} (56%)
create mode 100644
core/src/main/java/org/apache/calcite/runtime/RemovePointOperation.java
copy core/src/main/java/org/apache/calcite/runtime/{CoordinateTransformer.java
=> RemoveRepeatedPointsTransformer.java} (51%)
create mode 100644
core/src/main/java/org/apache/calcite/runtime/SplitOperation.java
copy core/src/main/java/org/apache/calcite/runtime/{Unit.java =>
UnionOperation.java} (61%)
create mode 100644
core/src/main/java/org/apache/calcite/sql/SqlSingletonAggFunction.java
create mode 100644
core/src/main/java/org/apache/calcite/sql/SqlStaticAggFunction.java
copy core/src/main/java/org/apache/calcite/sql/{Symbolizable.java =>
SqlTruncate.java} (71%)
copy core/src/main/java/org/apache/calcite/sql/ddl/{SqlDropSchema.java =>
SqlTruncateTable.java} (67%)
create mode 100644
core/src/main/java/org/apache/calcite/sql/fun/SqlLiteralAggFunction.java
create mode 100644
core/src/main/java/org/apache/calcite/sql/fun/SqlTranslateFunction.java
copy
core/src/main/java/org/apache/calcite/sql/type/{MultisetOperandTypeChecker.java
=> ArrayElementOperandTypeChecker.java} (68%)
create mode 100644
core/src/main/java/org/apache/calcite/sql2rel/AggConverter.java
create mode 100644 core/src/main/java/org/apache/calcite/util/Puffin.java
create mode 100644
core/src/main/java/org/apache/calcite/util/UnsafeX509ExtendedTrustManager.java
create mode 100644
core/src/test/java/org/apache/calcite/adapter/enumerable/StaticFieldDetectorTest.java
create mode 100644
core/src/test/java/org/apache/calcite/sql/type/OperandTypesTest.java
create mode 100644 core/src/test/java/org/apache/calcite/test/LintTest.java
create mode 100644 core/src/test/java/org/apache/calcite/test/PuffinTest.java
create mode 100644
core/src/test/java/org/apache/calcite/test/RelMdPredicatesTest.java
create mode 100644
core/src/test/java/org/apache/calcite/test/enumerable/EnumerableLimitSortTest.java
create mode 100644 core/src/test/java/org/apache/calcite/util/PairListTest.java
create mode 100644 core/src/test/java/org/apache/calcite/util/TestUnsafe.java
copy core/src/{main/java/org/apache/calcite/util/format/package-info.java =>
test/java/org/apache/calcite/util/format/FormatElementEnumTest.java} (64%)
create mode 100644
core/src/test/resources/org/apache/calcite/test/RelMdPredicatesTestLeftInferredFromJoin.csv
create mode 100644
core/src/test/resources/org/apache/calcite/test/RelMdPredicatesTestPullUpFromJoin.csv
create mode 100644
core/src/test/resources/org/apache/calcite/test/RelMdPredicatesTestRightInferredFromJoin.csv
create mode 100644
testkit/src/main/java/org/apache/calcite/test/SqlOperatorFixtures.java