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 e3a60d41b5 Site: Add Runkang He as committer
discard 714908b1f8 Site: Add Hongyu Guo as committer
discard a8a7fee20e Site: Add Lei Shen as committer
discard 2a589127b5 Site: Add Ran Tao as committer
discard c78b690b97 [CALCITE-6075] Site: Cloning source code from GitHub using
git protocol fails
discard a0181e81f8 [MINOR] Add Mihai Budiu to contributors list
discard 35104e0c1c [CALCITE-6075] Site: Cloning source code from GitHub using
git protocol fails
discard d0156c2050 Site: Add Apache Wayang (incubating) to powered-by page
discard e3e71d77ce [CALCITE-6033] Correct broken links on adapter page
discard d34d844eea [CALCITE-6017] Update the GitHub link of released versions
discard b377a54598 [CALCITE-5933] Add SAFE_DIVIDE function (enabled in
BigQuery library)
discard 1d75f534d9 [CALCITE-5797] Modify the release author
discard 3a88b4c613 [CALCITE-5797] Add news item and update date for 1.35.0
release
add 696b0e37cf [CALCITE-5797] Add news item and update date for 1.35.0
release
add 1908108ca3 Prepare for next development iteration
add 11126c582f Following [CALCITE-5688] Eliminate warnings in server parser
add e3310c2e82 [CALCITE-5841] Improve singleton implementation for
`ChinookAvaticaServer` in calcite-plus
add 5b9e768d72 [CALCITE-5877] AssertionError during MOD operation if
result scale is greater than maximum numeric scale
add 132cc3df5c [CALCITE-5851] Add LEVENSHTEIN function (enabled in Hive
and Spark library)
add df73ebd3d3 Minor: the parameter names of
SqlTypeMappingRules.Builder#add are misleading
add 11546ce518 [CALCITE-5837] RexUtil#pullFactors output's order should be
deterministic even when the RexNode kind is OR
add 70986773b8 [CALCITE-5859] Compile-time evaluation of LEFT(NULL, n)
should not throw RuntimeException
add 68d8d70e86 [CALCITE-5820] Add PARSE_URL function (enabled in Hive and
Spark library)
add 1b8dc60b76 [CALCITE-5735] Add SAFE_MULTIPLY function (enabled for
BigQuery)
add 5b66bd3cfa [CALCITE-5875] Remove unnecessary NULL checks in Redis
adapter
add ffd58e3b6d [CALCITE-5879] AssertionError during constant reduction of
SPLIT expression that returns NULL
add 76ba489c13 [CALCITE-5831] Add SOUNDEX function (enabled in Spark
library)
add 98f3048fb1 [CALCITE-5882] Compile-time evaluation of SPLIT function
returns incorrect result
add 0cea91b842 [CALCITE-5903] RelMdCollation does not define collations
for EnumerableLimit
add 25f326cf0a [CALCITE-5827] Add IS_INF and IS_NAN functions (enabled in
BigQuery library)
add 95c4acc3cc [CALCITE-5869] LEAST_RESTRICTIVE does not use inner type of
MEASURE for comparisons
add fde98e3504 [MINOR] Refactor RelDataTypeSystemTest to use test fixture
add 697412624e [CALCITE-5885] SqlNode#toSqlString() does not honor
dialect's supportsCharSet() flag on nested types
add bde9110ca6 [CALCITE-5843] Constant expression with nested casts causes
a compiler crash
add 6b750b8e9b [CALCITE-5908] Refactor: Remove unnecessary null checks in
CalciteSchema
add 161e220384 [CALCITE-5184] Support "LIMIT start, ALL" in MySQL
conformance, equivalent to "OFFSET start"
add ed42c35bd1 [CALCITE-5813] Type inference for sql functions REPEAT,
SPACE, XML_TRANSFORM, and XML_EXTRACT is incorrect
add b3353015ad [CALCITE-5895] TABLESAMPLE (0) should return no rows
add 50c3edfc3d [CALCITE-5916] In RelBuilder, add sample() method
(equivalent to SQL TABLESAMPLE clause)
add 51da34bdf9 [CALCITE-5906] JDBC adapter should generate TABLESAMPLE
add 9404c8c99a [CALCITE-5873] Add REGEXP_CONTAINS function (enabled in
BigQuery library)
add 955fd9c1cf [CALCITE-5830] Add ARRAY_INSERT function(enabled in Spark
library)
add a651ea6347 [CALCITE-5640] Add SAFE_ADD function (enabled in BigQuery
library)
add f901d7d44a [CALCITE-5870] Allow literals like DECIMAL '12.3'
(consistent with Postgres)
add dc3f11bf9b [CALCITE-985] Validate MERGE
add 357f06bb85 In Puffin, allow an action to test whether it is looking at
the last line of a source
add 0d3456705a [CALCITE-5941] Support LITERAL_AGG in Interpreter
add fea0e12590 [MINOR] Remove the unused imports in SqlAbstractParserImpl
add bcf6bd8577 [CALCITE-5644] Add CONTAINS_SUBSTR function (enabled in
BigQuery library)
add 6fa07f62bb [CALCITE-5946] TimeString should allow fractional seconds
ending in zero
add 95a59d66c0 [CALCITE-5848] Add BIT_GET and GETBIT functions (enabled in
Spark library)
add 21440299d2 [CALCITE-5920] Reset PERCENTILE_CONT/PERCENTILE_DISC to
reserved keywords
add a7e3f7e760 [CALCITE-5909]
SqlParserTest.testNoUnintendedNewReservedKeywords fails in IDE while passes in
command line
add b8acbea163 [CALCITE-5770] Add SAFE_SUBTRACT function (enabled in
BigQuery library)
add eff56f938c Update broken link in RelMetadataProvider Javadoc
add 996692e36a [CALCITE-5615] Run SQL Logic Test suite using Calcite's
HSQLDB JDBC adapter
add d802314e69 Remove mentions of binary distribution from README
add 730361b664 [CALCITE-5922] The SQL generated for the POSITION
function(with 3 input arguments) by the SparkSqlDialect is not recognized by
Spark SQL
add a0a78f3fe1 Refactor: In RexImpTable, ensure that every method is in
BuiltInMethod
add 4f69d9b3a4 Refactor: In ReflectUtil, add methods isStatic and isPublic
add 2a96512c35 [CALCITE-5914] Cache compiled regular expressions in SQL
function runtime
add 2bf1e7b2e8 [CALCITE-5966] Upgrade commons-dbcp2 to 2.9.0
add 01467a1797 [CALCITE-5766] Add SAFE_NEGATE function (enabled for
BigQuery library)
add 1eb547c93e [CALCITE-5910] Add REGEXP_EXTRACT and REGEXP_SUBSTR
functions (enabled in BigQuery library)
add 267d633165 [CALCITE-5965] Avoid unnecessary String concatenations in
the RexFieldAccess constructor to improve the performance
add ada4fe2715 [CALCITE-5911] Add REGEXP_EXTRACT_ALL function (enabled in
BigQuery library)
add cbf857e319 [CALCITE-5861] ReduceExpressionsRule rules should
constant-fold expressions in window bounds
add 05787a6793 [CALCITE-5953] AggregateCaseToFilterRule may make
inaccurate SUM transformations
add aa5397bed4 [CALCITE-5821] Add FORMAT_NUMBER function (enabled in Hive
and Spark library)
add b19f373b41 [CALCITE-5933] Add SAFE_DIVIDE function (enabled in
BigQuery library)
add b57f2d2cb0 [CALCITE-5905] Documentation for CREATE TYPE is incorrect
add d667123585 [CALCITE-5952] SemiJoinJoinTransposeRule should check if
JoinType supports pushing predicates into its inputs
add 164ff0a27e [CALCITE-5967] UnsupportedOperationException while
implementing a call that requires a special collator
add 4e6c403842 [CALCITE-5935] Add CODE_POINTS_TO_BYTES function (enabled
in BigQuery library)
add 64268b9dd7 [CALCITE-5944] Add metadata for Sample
add 3aee0b86aa [CALCITE-5732] EnumerableHashJoin and EnumerableMergeJoin
on composite key return rows matching condition 'null = null'
add 7176860882 [CALCITE-5980] QuidemTests are not effectively executed on
Windows
add d4046d0274 [CALCITE-5931] Allow round decimals like 1.00 in window
ranges
add 2cb8167d5f [CALCITE-5862] Incorrect semantics of ARRAY function (Spark
library) when elements have Numeric and Character types
add 9c758942ab [CALCITE-5889] Add the RelRule that converts Minus into
UNION ALL..GROUP BY...WHERE
add a1d469e691 [MINOR] Incorrect test fixture used by
SqlOperatorTest.testLeastFunc
add d8ef0447ff [CALCITE-6004] Replace deprecated mongo-java-driver
dependency
add 04fdef03ed [CALCITE-5996] TRANSLATE operator is incorrectly unparsed
add f3f5e7eeac [CALCITE-5836] Implement Rel2Sql for MERGE
add 9e3ea96504 [CALCITE-5978] Add REGEXP_INSTR function (enabled in
BigQuery library)
add f136c13b2f [CALCITE-5938] Update HSQLDB to Version 2.7.2 (using JDK8
JAR, default supports JDK11+)
add d9dd3ac8a9 [CALCITE-5988] SqlImplementor.toSql cannot emit VARBINARY
literals
add 008c553aef [CALCITE-5999] DECIMAL literals as sometimes unparsed
looking as DOUBLE literals
add abb3e5be43 [CALCITE-5961] Type inference of ARRAY_COMPACT is incorrect
add 9ce7077bc8 [CALCITE-5997] OFFSET operator is incorrectly unparsed
add 1775baf218 [CALCITE-5994] Add optimization rule to remove Sort when
its input's row number is less or equal to one
add 3775307e0b [CALCITE-5960] CAST throws NullPointerException if
SqlTypeFamily of targetType is null
add 1cc1eb3a47 [CALCITE-5995] JSON_VALUE, JSON_EXISTS, JSON_QUERY
functions should cache generated objects between calls
add e1991e08a2 [CALCITE-5974] Elasticsearch adapter throws
ClassCastException when index mapping sets `dynamic_templates` without
`properties`
add cc73aba9b4 [CALCITE-6005] POLYGON string representation is different
on Apple silicon
add 683e4ae242 [CALCITE-6026] MongoDB: Column is not quoted in "order by"
clause and throws JsonParseException
add a921eb26a2 [CALCITE-5971] Add SampleToFilterRule to rewrite bernoulli
Sample to Filter
add 509e8c1712 [CALCITE-6003] JSON_ARRAY() with no arguments does not
unparse correctly
add 56f7b82483 [CALCITE-6017] Update the GitHub link of released versions
add aef9bdb5c0 [CALCITE-5940] Add the Rule to merge Limit
add 1245db6201 [CALCITE-6007] Sub-query that contains WITH and has no
alias generates invalid SQL after expansion
add 436ae7d296 [CALCITE-5982] Allow implementations of CalciteMeta to
return extra columns in their responses to DatabaseMetaData.getTables and
getColumns requests
add be2146679e [CALCITE-5962] Support parse Spark-style syntax LEFT ANTI
JOIN in Babel parser
add 3bb7117446 [CALCITE-5989] Type inference for RPAD and LPAD functions
(BIGQUERY) is incorrect
add 6f79436c17 [CALCITE-5570] Support nested map type for SqlDataTypeSpec
add 87cdfd97f0 [CALCITE-6009] Add optimization to remove redundant LIMIT
that is more than input row count
add ab3f5b0e80 [CALCITE-4189] Simplify 'p OR (p IS NOT TRUE)' to 'TRUE'
add 0291e1eeb4 [CALCITE-6033] Correct broken links on adapter page
add 597b53dbb0 Site: Add Apache Wayang (incubating) to powered-by page
add 342cf606ac [CALCITE-5948] Use explicit casting if element type in
ARRAY/MAP does not equal derived component type
add 454899a451 [CALCITE-6031] Add the planner rule that pushes Filter past
Sample
add 77b3689e90 [CALCITE-5993] Add CODE_POINTS_TO_STRING, TO_CODE_POINTS
function (enabled in BigQuery library)
add db60219198 [CALCITE-6021] Add CURRENT_DATETIME function (enabled in
BigQuery library)
add 485a5d0ae3 [CALCITE-6006] RelToSqlConverter loses charset information
add e8af93f322 [CALCITE-5950] DEFAULT expression is ignored during INSERT
add ce88348960 Code style: lint
add 54e3faf061 Add various lint checks
add 95408cc71f [CALCITE-6050] Add interface ImmutablePairList
add 5d614ed9c8 Following [CALCITE-5570] Support nested map type for
SqlDataTypeSpec
add 5151168e9a [CALCITE-6014] Create a SqlOperatorFixture that parses,
unparses, and then parses again before executing
add c6031ca155 [CALCITE-5763] Increase minimum Guava version to 21.0,
maximum version to 32.1.3-jre, and stop building on Guava 19.0
add f996bc9993 [CALCITE-5923] SqlOperatorTest using safeParameters are not
using overridable fixture
add 23b7931c3e [CALCITE-6022] Support "CREATE TABLE ... LIKE" DDL in
server module
add e3b5028223 [CALCITE-6030] DATE_PART is not handled by the
RexToLixTranslator
add c83ac69111 [CALCITE-6040] The operand type inference of
SqlMapValueConstructor is incorrect
add e8b64802c6 [MINOR] Add example for MAP type in reference docs
add 425a94d420 [CALCITE-6013] RelBuilder should simplify plan by pruning
unused measures
add 0bec957071 [CALCITE-5921] SqlOperatorFixture.checkFails and
checkAggFails don't check runtime failure
add 345961a9d2 [CALCITE-5921] SqlOperatorFixture.checkFails and
checkAggFails don't check runtime failure (follow-up)
add 79f2f61dcc [CALCITE-6038] Remove 'ORDER BY ... LIMIT n' when input has
at most one row, n >= 1, and there is no 'OFFSET' clause
add 8821eaf94b [CALCITE-6075] Site: Cloning source code from GitHub using
git protocol fails
add 0f824ed004 [MINOR] Add Mihai Budiu to contributors list
add 417a1b53ec [CALCITE-5949] RexExecutable should return unchanged
original expressions when it fails
add ef82a6cc6b [CALCITE-6075] Site: Cloning source code from GitHub using
git protocol fails
add bdafeec27c [CALCITE-6011] Add FilterWindowTransposeRule to push a
Filter past a Window
add ad2e843c5d [CALCITE-5825] Add URL_ENCODE and URL_DECODE function
(enabled in Spark library)
add b11f179cba [CALCITE-5918] Add MAP function (enabled in Spark library)
add 7b9660f150 [CALCITE-6024] A more efficient implementation of
SqlOperatorTable, backed by an immutable multi-map keyed by upper-case operator
name
add 6595b071b1 Site: Add Ran Tao as committer
add edec1c3891 [CALCITE-6037] The function category of
ARRAY/EXTRACT_VALUE/XML_TRANSFORM/EXTRACT_XML/EXISTSNODE is incorrect
add 7eace909c5 [CALCITE-6077] Add FACTORIAL function (enabled in Hive and
Spark libraries)
add c6b3876ff4 [CALCITE-5979] Enable REGEXP_REPLACE function in BigQuery
library
add c5f3b8dcf1 [CALCITE-6041] MAP sub-query gives NullPointerException
add 0b12f60207 [CALCITE-129] Support recursive WITH queries
add 782d327d24 [CALCITE-6052] SqlImplementor writes REAL, FLOAT, or DOUBLE
literals as DECIMAL literals
add 620058f94b [CALCITE-5990] Explicit cast to numeric type doesn't check
overflow
add 8af1f11b95 [CALCITE-5984] Allow disabling field trimming in `Prepare`
via `SqlToRelConverter.Config#isTrimUnusedFields`
add 2ddc6053b5 [CALCITE-5826] Add FIND_IN_SET function (enabled in Hive
and Spark libraries)
add 919f50d213 [CALCITE-5863] Calcite rejects valid query with multiple
ORDER BY columns and constant RANGE bounds in window functions
add dd9a9ed5d2 Site: Add Lei Shen as committer
add b7acae599a Site: Add Hongyu Guo as committer
add 590ec85f0f Site: Add Runkang He as committer
add 94dc1673da [CALCITE-6088] SqlItemOperator fails in RelToSqlConverter
add 4c9011c388 [CALCITE-5884] ARRAY_TO_STRING function should return NULL
if its 'nullValue' argument is NULL
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 (e3a60d41b5)
\
N -- N -- N refs/heads/site (4c9011c388)
You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.
Any revisions marked "omit" are not gone; other references still
refer to them. Any revisions marked "discard" are gone forever.
No new revisions were added by this update.
Summary of changes:
.github/workflows/main.yml | 22 +-
README | 7 +-
babel/build.gradle.kts | 2 +-
babel/src/main/codegen/config.fmpp | 4 +
babel/src/main/codegen/includes/parserImpls.ftl | 7 +
.../org/apache/calcite/test/BabelParserTest.java | 34 +
.../java/org/apache/calcite/test/BabelTest.java | 22 +
babel/src/test/resources/sql/big-query.iq | 879 +++++++++-
babel/src/test/resources/sql/select.iq | 22 +
bom/build.gradle.kts | 4 +-
build.gradle.kts | 8 +-
.../apache/calcite/test/CassandraExtension.java | 6 +-
core/build.gradle.kts | 3 +-
core/src/main/codegen/default_config.fmpp | 3 +-
core/src/main/codegen/templates/Parser.jj | 157 +-
.../apache/calcite/adapter/clone/ArrayTable.java | 3 +-
.../calcite/adapter/enumerable/EnumUtils.java | 4 +-
.../adapter/enumerable/EnumerableCollect.java | 77 +-
.../adapter/enumerable/EnumerableHashJoin.java | 8 +-
.../adapter/enumerable/EnumerableLimitSort.java | 22 +-
.../adapter/enumerable/EnumerableMergeJoin.java | 7 +-
.../calcite/adapter/enumerable/PhysType.java | 26 +-
.../calcite/adapter/enumerable/PhysTypeImpl.java | 168 +-
.../ReflectiveCallNotNullImplementor.java | 5 +-
.../calcite/adapter/enumerable/RexImpTable.java | 595 ++++---
.../adapter/enumerable/RexToLixTranslator.java | 59 +-
.../calcite/adapter/jdbc/JdbcCatalogSchema.java | 4 +-
.../org/apache/calcite/adapter/jdbc/JdbcTable.java | 2 +-
.../calcite/config/CalciteConnectionConfig.java | 12 +
.../config/CalciteConnectionConfigImpl.java | 17 +-
.../calcite/config/CalciteConnectionProperty.java | 6 +
.../calcite/config/CalciteSystemProperty.java | 64 +-
.../apache/calcite/interpreter/AggregateNode.java | 174 +-
.../org/apache/calcite/interpreter/JoinNode.java | 6 +-
.../apache/calcite/interpreter/TableScanNode.java | 5 +-
.../apache/calcite/interpreter/UncollectNode.java | 2 +-
.../calcite/jdbc/CalciteMetaColumnFactory.java | 48 +
.../calcite/jdbc/CalciteMetaColumnFactoryImpl.java | 65 +-
.../org/apache/calcite/jdbc/CalciteMetaImpl.java | 256 ++-
.../calcite/jdbc/CalciteMetaTableFactory.java | 35 +-
.../calcite/jdbc/CalciteMetaTableFactoryImpl.java | 36 +-
.../org/apache/calcite/jdbc/CalciteSchema.java | 41 +-
.../main/java/org/apache/calcite/jdbc/Driver.java | 12 +-
.../apache/calcite/jdbc/JavaTypeFactoryImpl.java | 8 +-
.../apache/calcite/jdbc/SimpleCalciteSchema.java | 2 +-
.../ProfilerLatticeStatisticProvider.java | 2 +-
.../calcite/plan/RelOptMaterializations.java | 2 +-
.../java/org/apache/calcite/plan/RelOptRules.java | 8 +-
.../calcite/plan/RelOptSamplingParameters.java | 38 +-
.../java/org/apache/calcite/plan/RelOptUtil.java | 30 +
.../apache/calcite/plan/SubstitutionVisitor.java | 6 +-
.../plan/visualizer/RuleMatchVisualizer.java | 5 +-
.../calcite/plan/volcano/VolcanoPlanner.java | 5 +-
.../calcite/prepare/CalciteCatalogReader.java | 8 +-
.../apache/calcite/prepare/CalcitePrepareImpl.java | 4 +-
.../apache/calcite/prepare/LixToRelTranslator.java | 2 +-
.../java/org/apache/calcite/prepare/Prepare.java | 8 +-
.../org/apache/calcite/rel/AbstractRelNode.java | 2 +-
.../main/java/org/apache/calcite/rel/RelInput.java | 13 +-
.../main/java/org/apache/calcite/rel/RelRoot.java | 36 +-
.../apache/calcite/rel/convert/ConverterRule.java | 5 +-
.../java/org/apache/calcite/rel/core/Collect.java | 1 +
.../org/apache/calcite/rel/core/RelFactories.java | 30 +
.../java/org/apache/calcite/rel/core/Sample.java | 22 +-
.../apache/calcite/rel/core/TableFunctionScan.java | 4 +-
.../calcite/rel/externalize/RelDotWriter.java | 7 +-
.../apache/calcite/rel/externalize/RelJson.java | 6 +-
.../calcite/rel/externalize/RelJsonReader.java | 6 +
.../calcite/rel/hint/CompositeHintPredicate.java | 4 +-
.../apache/calcite/rel/metadata/MetadataDef.java | 3 +-
.../calcite/rel/metadata/MetadataHandler.java | 5 +-
.../metadata/ReflectiveRelMetadataProvider.java | 13 +-
.../calcite/rel/metadata/RelMdAllPredicates.java | 9 +
.../calcite/rel/metadata/RelMdCollation.java | 6 +
.../calcite/rel/metadata/RelMdColumnOrigins.java | 8 +-
.../rel/metadata/RelMdColumnUniqueness.java | 2 +-
.../rel/metadata/RelMdExpressionLineage.java | 9 +
.../calcite/rel/metadata/RelMdMaxRowCount.java | 5 +
.../calcite/rel/metadata/RelMdMinRowCount.java | 5 +
.../calcite/rel/metadata/RelMdPredicates.java | 10 +-
.../apache/calcite/rel/metadata/RelMdRowCount.java | 7 +
.../calcite/rel/metadata/RelMetadataProvider.java | 2 +-
.../calcite/rel/metadata/RelMetadataQuery.java | 2 +-
.../apache/calcite/rel/mutable/MutableSample.java | 2 +-
.../calcite/rel/rel2sql/RelToSqlConverter.java | 89 +-
.../apache/calcite/rel/rel2sql/SqlImplementor.java | 51 +-
.../rel/rules/AggregateCaseToFilterRule.java | 18 +-
.../AggregateExpandDistinctAggregatesRule.java | 4 +-
.../rules/AggregateExpandWithinDistinctRule.java | 4 +-
.../rel/rules/AggregateExtractProjectRule.java | 7 +-
.../calcite/rel/rules/AggregateJoinRemoveRule.java | 5 +-
.../AggregateProjectConstantToDummyJoinRule.java | 2 +-
.../org/apache/calcite/rel/rules/CoreRules.java | 30 +
.../rel/rules/FilterSampleTransposeRule.java | 69 +
.../rel/rules/FilterWindowTransposeRule.java | 131 ++
.../rel/rules/MaterializedViewFilterScanRule.java | 2 +-
.../calcite/rel/rules/MinusToDistinctRule.java | 182 +++
.../rel/rules/ProjectJoinJoinRemoveRule.java | 2 +-
.../calcite/rel/rules/ProjectJoinRemoveRule.java | 2 +-
.../calcite/rel/rules/ProjectToWindowRule.java | 2 +-
.../calcite/rel/rules/ReduceExpressionsRule.java | 20 +-
.../calcite/rel/rules/SampleToFilterRule.java | 97 ++
.../rel/rules/SemiJoinJoinTransposeRule.java | 12 +
.../apache/calcite/rel/rules/SortMergeRule.java | 141 ++
.../calcite/rel/rules/SortRemoveRedundantRule.java | 164 ++
.../calcite/rel/type/RelDataTypeFactoryImpl.java | 9 +-
.../apache/calcite/rel/type/RelDataTypeSystem.java | 4 +-
.../java/org/apache/calcite/rex/RexAnalyzer.java | 8 +-
.../java/org/apache/calcite/rex/RexBuilder.java | 8 +-
.../java/org/apache/calcite/rex/RexExecutable.java | 6 +-
.../org/apache/calcite/rex/RexFieldAccess.java | 2 +-
.../org/apache/calcite/rex/RexInterpreter.java | 19 +-
.../java/org/apache/calcite/rex/RexProgram.java | 2 +-
.../java/org/apache/calcite/rex/RexSimplify.java | 20 +
.../main/java/org/apache/calcite/rex/RexUtil.java | 10 +-
.../apache/calcite/runtime/AutomatonBuilder.java | 5 +-
.../apache/calcite/runtime/CalciteResource.java | 36 +-
.../main/java/org/apache/calcite/runtime/Hook.java | 15 +-
.../apache/calcite/runtime/ImmutablePairList.java | 114 ++
.../org/apache/calcite/runtime/JsonFunctions.java | 399 ++---
.../main/java/org/apache/calcite/runtime/Like.java | 12 +-
.../java/org/apache/calcite/runtime/PairList.java | 259 +--
.../java/org/apache/calcite/runtime/PairLists.java | 724 +++++++++
.../java/org/apache/calcite/runtime/Resources.java | 6 +-
.../org/apache/calcite/runtime/SqlFunctions.java | 1300 +++++++++++++--
.../org/apache/calcite/runtime/UrlFunctions.java | 59 +
.../java/org/apache/calcite/runtime/Utilities.java | 11 +
.../java/org/apache/calcite/schema/Schemas.java | 34 +-
.../calcite/schema/impl/AggregateFunctionImpl.java | 11 +-
.../schema/impl/ReflectiveFunctionBase.java | 8 +-
.../calcite/schema/impl/ScalarFunctionImpl.java | 10 +-
.../calcite/schema/impl/TableFunctionImpl.java | 6 +-
.../apache/calcite/schema/impl/TableMacroImpl.java | 6 +-
.../main/java/org/apache/calcite/sql/JoinType.java | 7 +
.../org/apache/calcite/sql/SqlBasicFunction.java | 10 +
.../apache/calcite/sql/SqlBasicTypeNameSpec.java | 2 +-
.../org/apache/calcite/sql/SqlDataTypeSpec.java | 5 +-
.../java/org/apache/calcite/sql/SqlDialect.java | 2 +-
.../java/org/apache/calcite/sql/SqlFunction.java | 4 +-
.../main/java/org/apache/calcite/sql/SqlHint.java | 5 +-
.../java/org/apache/calcite/sql/SqlIdentifier.java | 14 +-
.../main/java/org/apache/calcite/sql/SqlJoin.java | 4 +
.../main/java/org/apache/calcite/sql/SqlKind.java | 18 +-
.../org/apache/calcite/sql/SqlMapTypeNameSpec.java | 94 ++
.../org/apache/calcite/sql/SqlNumericLiteral.java | 6 +-
.../java/org/apache/calcite/sql/SqlOperator.java | 6 +
.../java/org/apache/calcite/sql/SqlSampleSpec.java | 77 +-
.../java/org/apache/calcite/sql/SqlSyntax.java | 2 +-
.../main/java/org/apache/calcite/sql/SqlUtil.java | 11 +
.../java/org/apache/calcite/sql/SqlWindow.java | 18 +-
.../main/java/org/apache/calcite/sql/SqlWith.java | 4 +
.../java/org/apache/calcite/sql/SqlWithItem.java | 13 +-
.../apache/calcite/sql/ddl/SqlCreateTableLike.java | 121 ++
.../org/apache/calcite/sql/ddl/SqlDdlNodes.java | 8 +
.../calcite/sql/dialect/SparkSqlDialect.java | 3 +
.../calcite/sql/fun/OracleSqlOperatorTable.java | 23 +-
.../calcite/sql/fun/SqlArrayValueConstructor.java | 5 +
.../apache/calcite/sql/fun/SqlItemOperator.java | 8 +-
.../calcite/sql/fun/SqlJsonArrayFunction.java | 23 +-
.../calcite/sql/fun/SqlLibraryOperators.java | 350 +++-
.../calcite/sql/fun/SqlMapQueryConstructor.java | 2 +-
.../calcite/sql/fun/SqlMapValueConstructor.java | 9 +-
.../sql/fun/SqlMultisetValueConstructor.java | 9 +-
.../calcite/sql/fun/SqlStdOperatorTable.java | 30 +-
.../calcite/sql/fun/SqlTranslateFunction.java | 11 +
.../calcite/sql/parser/SqlAbstractParserImpl.java | 3 -
.../apache/calcite/sql/parser/SqlParserUtil.java | 12 +
...ker.java => ArrayInsertOperandTypeChecker.java} | 61 +-
.../org/apache/calcite/sql/type/OperandTypes.java | 113 ++
.../org/apache/calcite/sql/type/ReturnTypes.java | 35 +-
.../calcite/sql/type/SqlTypeMappingRules.java | 4 +-
.../apache/calcite/sql/type/SqlTypeTransforms.java | 21 +-
.../org/apache/calcite/sql/type/SqlTypeUtil.java | 21 +-
.../calcite/sql/util/ListSqlOperatorTable.java | 53 +-
.../sql/util/ReflectiveSqlOperatorTable.java | 122 +-
.../apache/calcite/sql/util/SqlOperatorTables.java | 62 +-
.../calcite/sql/validate/DelegatingScope.java | 4 +-
.../calcite/sql/validate/IdentifierNamespace.java | 5 +-
.../apache/calcite/sql/validate/JoinNamespace.java | 3 +-
.../org/apache/calcite/sql/validate/JoinScope.java | 6 +-
.../sql/validate/SqlAbstractConformance.java | 4 +
.../calcite/sql/validate/SqlConformance.java | 16 +
.../calcite/sql/validate/SqlConformanceEnum.java | 9 +
.../sql/validate/SqlDelegatingConformance.java | 4 +
.../apache/calcite/sql/validate/SqlValidator.java | 12 -
.../calcite/sql/validate/SqlValidatorImpl.java | 79 +-
.../calcite/sql/validate/SqlValidatorUtil.java | 89 ++
.../calcite/sql/validate/SqlWithItemTableRef.java | 62 +
.../calcite/sql/validate/WithItemNamespace.java | 10 +-
.../sql/validate/WithItemRecursiveNamespace.java | 59 +
.../{WithScope.java => WithRecursiveScope.java} | 23 +-
.../org/apache/calcite/sql/validate/WithScope.java | 6 +-
.../calcite/sql2rel/ReflectiveConvertletTable.java | 7 +-
.../apache/calcite/sql2rel/RelDecorrelator.java | 12 +-
.../sql2rel/RelStructuredTypeFlattener.java | 10 +
.../apache/calcite/sql2rel/SqlToRelConverter.java | 177 ++-
.../calcite/sql2rel/StandardConvertletTable.java | 1 +
.../java/org/apache/calcite/tools/Frameworks.java | 2 +-
.../java/org/apache/calcite/tools/Programs.java | 15 +-
.../java/org/apache/calcite/tools/RelBuilder.java | 243 +--
.../src/main/java/org/apache/calcite/util/Bug.java | 8 -
.../org/apache/calcite/util/BuiltInMethod.java | 164 +-
.../java/org/apache/calcite/util/Compatible.java | 12 -
.../main/java/org/apache/calcite/util/Pair.java | 51 +
.../main/java/org/apache/calcite/util/Puffin.java | 55 +-
.../java/org/apache/calcite/util/ReflectUtil.java | 13 +-
.../java/org/apache/calcite/util/TimeString.java | 60 +-
.../org/apache/calcite/util/TimestampString.java | 7 +-
.../main/java/org/apache/calcite/util/Util.java | 51 +-
.../apache/calcite/util/format/FormatModel.java | 3 +
.../apache/calcite/util/format/FormatModels.java | 4 +-
.../calcite/util/graph/DefaultDirectedGraph.java | 2 +-
.../calcite/runtime/CalciteResource.properties | 12 +-
.../calcite/jdbc/CalciteRemoteDriverTest.java | 145 +-
.../calcite/materialize/LatticeSuggesterTest.java | 4 +-
.../org/apache/calcite/plan/RelWriterTest.java | 6 +-
.../org/apache/calcite/profile/ProfilerTest.java | 5 +-
.../calcite/rel/rel2sql/RelToSqlConverterTest.java | 295 +++-
.../org/apache/calcite/rex/RexBuilderTest.java | 57 +
.../org/apache/calcite/rex/RexExecutorTest.java | 24 +
.../org/apache/calcite/rex/RexProgramTest.java | 85 +-
.../apache/calcite/runtime/EnumerablesTest.java | 28 +-
.../calcite/runtime/RelOptRulesRuntimeTest.java | 97 ++
.../java/org/apache/calcite/sql/SqlNodeTest.java | 2 +-
.../calcite/sql/parser/CoreSqlParserTest.java | 50 +
.../apache/calcite/sql/test/SqlAdvisorTest.java | 3 +
.../calcite/sql/type/RelDataTypeSystemTest.java | 74 +-
.../org/apache/calcite/test/CoreQuidemTest.java | 21 +
.../org/apache/calcite/test/InterpreterTest.java | 27 +-
.../org/apache/calcite/test/JdbcAdapterTest.java | 41 +
.../apache/calcite/test/JdbcFrontJdbcBackTest.java | 71 +
.../apache/calcite/test/JdbcFrontLinqBackTest.java | 4 +-
.../java/org/apache/calcite/test/JdbcTest.java | 135 +-
.../java/org/apache/calcite/test/LintTest.java | 72 +-
.../calcite/test/MaterializedViewTester.java | 6 +-
.../org/apache/calcite/test/MutableRelTest.java | 2 +-
.../java/org/apache/calcite/test/PuffinTest.java | 13 +-
.../org/apache/calcite/test/RelBuilderTest.java | 65 +
.../org/apache/calcite/test/RelMetadataTest.java | 96 +-
.../org/apache/calcite/test/RelOptRulesTest.java | 677 +++++++-
.../apache/calcite/test/ScannableTableTest.java | 128 +-
.../org/apache/calcite/test/SqlFunctionsTest.java | 364 ++++-
.../apache/calcite/test/SqlJsonFunctionsTest.java | 121 +-
.../calcite/test/SqlOperatorUnparseTest.java | 116 ++
.../java/org/apache/calcite/test/SqlTestGen.java | 8 +-
.../apache/calcite/test/SqlToRelConverterTest.java | 60 +-
.../org/apache/calcite/test/SqlValidatorTest.java | 259 ++-
.../test/enumerable/EnumerableHashJoinTest.java | 136 +-
.../test/enumerable/EnumerableJoinTest.java | 101 +-
.../test/enumerable/EnumerableRepeatUnionTest.java | 67 +-
.../enumerable/EnumerableStringComparisonTest.java | 23 +
.../java/org/apache/calcite/util/PairListTest.java | 161 +-
.../java/org/apache/calcite/util/RangeSetTest.java | 18 +-
.../java/org/apache/calcite/util/SourceTest.java | 2 +-
.../java/org/apache/calcite/util/TestUnsafe.java | 20 +-
.../java/org/apache/calcite/util/UtilTest.java | 6 +-
.../GeneratedMetadata_AllPredicatesHandler.java | 2 +
.../janino/GeneratedMetadata_CollationHandler.java | 2 +
.../GeneratedMetadata_ColumnOriginHandler.java | 2 +
...GeneratedMetadata_ExpressionLineageHandler.java | 2 +
.../GeneratedMetadata_MaxRowCountHandler.java | 2 +
.../GeneratedMetadata_MinRowCountHandler.java | 2 +
.../GeneratedMetadata_PredicatesHandler.java | 2 +
.../janino/GeneratedMetadata_RowCountHandler.java | 2 +
.../org/apache/calcite/test/RelOptRulesTest.xml | 989 +++++++++++-
.../apache/calcite/test/SqlToRelConverterTest.xml | 88 +
core/src/test/resources/sql/agg.iq | 55 +
core/src/test/resources/sql/cast-with-format.iq | 1 +
core/src/test/resources/sql/misc.iq | 128 +-
core/src/test/resources/sql/recursive_queries.iq | 507 ++++++
core/src/test/resources/sql/sort.iq | 165 ++
core/src/test/resources/sql/sub-query.iq | 36 +
.../src/test/resources/sql/tablesample.iq | 30 +-
core/src/test/resources/sql/winagg.iq | 62 +
.../apache/calcite/adapter/druid/DruidTable.java | 11 +-
.../adapter/elasticsearch/ElasticsearchJson.java | 6 +-
.../adapter/elasticsearch/ElasticsearchMethod.java | 2 +-
.../elasticsearch/ElasticsearchProject.java | 4 +-
.../adapter/elasticsearch/ElasticsearchTable.java | 8 +-
.../elasticsearch/ElasticsearchTableScan.java | 2 +-
.../adapter/elasticsearch/QueryBuilders.java | 6 +-
.../adapter/elasticsearch/AggregationTest.java | 2 +-
.../elasticsearch/ElasticsearchJsonTest.java | 21 +
.../elasticsearch/EmbeddedElasticsearchNode.java | 2 +-
.../elasticsearch/EmbeddedElasticsearchPolicy.java | 4 +-
.../adapter/elasticsearch/ScrollingTest.java | 2 +-
.../apache/calcite/test/ElasticsearchChecker.java | 4 +-
.../apache/calcite/adapter/file/CsvEnumerator.java | 5 +-
.../apache/calcite/adapter/file/FileSchema.java | 5 +-
.../calcite/adapter/geode/rel/GeodeFilter.java | 3 +
.../calcite/adapter/geode/rel/GeodeRules.java | 6 +-
.../adapter/geode/util/JavaTypeFactoryExtImpl.java | 5 +-
.../adapter/geode/rel/GeodeAllDataTypesTest.java | 10 +
gradle.properties | 17 +-
.../calcite/adapter/innodb/IndexCondition.java | 9 +-
innodb/src/test/resources/README.md | 12 +-
.../apache/calcite/linq4j/EnumerableDefaults.java | 107 +-
.../main/java/org/apache/calcite/linq4j/Ord.java | 19 +-
.../apache/calcite/linq4j/tree/Expressions.java | 10 +-
.../org/apache/calcite/linq4j/tree/Primitive.java | 71 +
.../apache/calcite/linq4j/tree/TryStatement.java | 2 +-
mongodb/build.gradle.kts | 2 +-
.../calcite/adapter/mongodb/MongoSchema.java | 20 +-
.../adapter/mongodb/MongoSchemaFactory.java | 15 +-
.../apache/calcite/adapter/mongodb/MongoSort.java | 2 +-
.../calcite/adapter/mongodb/MongoTableScan.java | 5 +-
.../calcite/adapter/mongodb/MongoAdapterTest.java | 14 +-
.../adapter/mongodb/MongoDatabasePolicy.java | 18 +-
piglet/build.gradle.kts | 2 +-
.../org/apache/calcite/piglet/PigUdfFinder.java | 5 +-
.../java/org/apache/calcite/test/PigRelOpTest.java | 2 +-
plus/build.gradle.kts | 3 +-
.../calcite/chinook/ChinookAvaticaServer.java | 33 +-
.../java/org/apache/calcite/slt/SqlLogicTests.java | 314 ++++
.../calcite/slt/executors/CalciteExecutor.java | 94 ++
.../calcite/slt/executors}/package-info.java | 4 +-
.../java/org/apache/calcite/slt/package-info.java | 105 ++
plus/src/test/resources/slttestfailures.txt | 615 +++++++
.../apache/calcite/adapter/redis/RedisTable.java | 5 +-
.../calcite/adapter/redis/RedisCaseBase.java | 2 +-
server/build.gradle.kts | 2 +-
server/src/main/codegen/config.fmpp | 1 +
server/src/main/codegen/includes/parserImpls.ftl | 67 +-
.../apache/calcite/server/ServerDdlExecutor.java | 104 +-
.../org/apache/calcite/test/ServerParserTest.java | 37 +
.../java/org/apache/calcite/test/ServerTest.java | 212 +++
server/src/test/resources/sql/table.iq | 185 +++
site/_docs/algebra.md | 5 +-
site/_docs/history.md | 4 +-
site/_docs/innodb_adapter.md | 6 +-
site/_docs/reference.md | 102 +-
testkit/build.gradle.kts | 2 +-
.../apache/calcite/sql/parser/SqlParserTest.java | 313 +++-
.../calcite/sql/test/SqlOperatorFixture.java | 39 +-
.../apache/calcite/sql/test/SqlTestFactory.java | 4 +-
.../java/org/apache/calcite/sql/test/SqlTests.java | 16 +-
.../org/apache/calcite/test/CalciteAssert.java | 32 +-
.../java/org/apache/calcite/test/Matchers.java | 4 +-
.../org/apache/calcite/test/MockDdlExecutor.java | 5 +-
.../java/org/apache/calcite/test/QuidemTest.java | 6 +-
.../org/apache/calcite/test/RelOptFixture.java | 20 +-
.../calcite/test/SqlOperatorFixtureImpl.java | 4 +-
.../org/apache/calcite/test/SqlOperatorTest.java | 1678 ++++++++++++++++++--
.../org/apache/calcite/test/SqlRuntimeTester.java | 4 +-
.../org/apache/calcite/test/catalog/Fixture.java | 6 +
.../calcite/test/catalog/MockCatalogReader.java | 10 +-
.../test/catalog/MockCatalogReaderExtended.java | 9 +-
.../apache/calcite/test/schemata/hr/HrSchema.java | 4 +-
.../java/org/apache/calcite/util/TestUtil.java | 4 +-
ubenchmark/build.gradle.kts | 2 +-
350 files changed, 17475 insertions(+), 2938 deletions(-)
create mode 100644
core/src/main/java/org/apache/calcite/jdbc/CalciteMetaColumnFactory.java
copy src/main/config/checkerframework/avatica/MetaImpl.astub =>
core/src/main/java/org/apache/calcite/jdbc/CalciteMetaColumnFactoryImpl.java
(50%)
copy
testkit/src/main/java/org/apache/calcite/test/schemata/orderstream/InfiniteOrdersStreamTableFactory.java
=> core/src/main/java/org/apache/calcite/jdbc/CalciteMetaTableFactory.java
(52%)
copy
testkit/src/main/java/org/apache/calcite/test/schemata/orderstream/InfiniteOrdersStreamTableFactory.java
=> core/src/main/java/org/apache/calcite/jdbc/CalciteMetaTableFactoryImpl.java
(50%)
create mode 100644
core/src/main/java/org/apache/calcite/rel/rules/FilterSampleTransposeRule.java
create mode 100644
core/src/main/java/org/apache/calcite/rel/rules/FilterWindowTransposeRule.java
create mode 100644
core/src/main/java/org/apache/calcite/rel/rules/MinusToDistinctRule.java
create mode 100644
core/src/main/java/org/apache/calcite/rel/rules/SampleToFilterRule.java
create mode 100644
core/src/main/java/org/apache/calcite/rel/rules/SortMergeRule.java
create mode 100644
core/src/main/java/org/apache/calcite/rel/rules/SortRemoveRedundantRule.java
create mode 100644
core/src/main/java/org/apache/calcite/runtime/ImmutablePairList.java
create mode 100644 core/src/main/java/org/apache/calcite/runtime/PairLists.java
create mode 100644
core/src/main/java/org/apache/calcite/runtime/UrlFunctions.java
create mode 100644
core/src/main/java/org/apache/calcite/sql/SqlMapTypeNameSpec.java
create mode 100644
core/src/main/java/org/apache/calcite/sql/ddl/SqlCreateTableLike.java
copy
core/src/main/java/org/apache/calcite/sql/type/{ArrayElementOperandTypeChecker.java
=> ArrayInsertOperandTypeChecker.java} (54%)
create mode 100644
core/src/main/java/org/apache/calcite/sql/validate/SqlWithItemTableRef.java
create mode 100644
core/src/main/java/org/apache/calcite/sql/validate/WithItemRecursiveNamespace.java
copy core/src/main/java/org/apache/calcite/sql/validate/{WithScope.java =>
WithRecursiveScope.java} (71%)
create mode 100644
core/src/test/java/org/apache/calcite/runtime/RelOptRulesRuntimeTest.java
create mode 100644
core/src/test/java/org/apache/calcite/test/SqlOperatorUnparseTest.java
create mode 100644 core/src/test/resources/sql/recursive_queries.iq
copy babel/src/test/resources/sql/dummy.iq =>
core/src/test/resources/sql/tablesample.iq (66%)
mode change 100755 => 100644
create mode 100644 plus/src/test/java/org/apache/calcite/slt/SqlLogicTests.java
create mode 100644
plus/src/test/java/org/apache/calcite/slt/executors/CalciteExecutor.java
copy {core/src/main/java/org/apache/calcite/rel/type =>
plus/src/test/java/org/apache/calcite/slt/executors}/package-info.java (89%)
create mode 100644 plus/src/test/java/org/apache/calcite/slt/package-info.java
create mode 100644 plus/src/test/resources/slttestfailures.txt