This is an automated email from the ASF dual-hosted git repository.
jhyde pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/calcite.git.
omit 7b043bf [CALCITE-4399] Ignore testReduceNullableToNotNull2 since it
does not work
omit 68266a3 Add workaround for CALCITE-4398 RexSimplify introduces
cast(nullable as nonnull)
omit c2a1053 Add workaround for CALCITE-4397
StandardConvertletTable#convertDatetimeMinus is inconsistent with MINUS_DATE
return type inference
omit 5d2959d Add workaround for CALCITE-4388: verify expression safety in
RexCall#isAlwaysTrue/isAlwaysFalse
omit 103004c Re-enable RexProgramFuzzyTest
omit 3a32919 Remove usage of SEARCH in Innodb adapter
omit 2e7754f Revert "[CALCITE-4173] Add internal SEARCH operator and Sarg
literal that represents a set of values or ranges"
omit d665927 Revert "[CALCITE-4279] SEARCH operator cannot be pushed into
Druid"
omit 56d2cf7 Revert "[CALCITE-4271] RelBuilder.in should allow duplicate
values"
omit 02f88da Revert "[CALCITE-4259] Support JDK 15 and Guava version
29.0-jre"
omit 448d8b4 Revert "[CALCITE-4237] Following [CALCITE-4173], fix
assertion error when RexSimplify generates Sarg with single null only"
omit 3da4293 Revert "[CALCITE-4325] RexSimplify incorrectly simplifies
complex expressions that contain Sarg and IS NULL"
omit d716104 Revert "[CALCITE-4352] RexSimplify incorrectly drops IS NULL
and IS NOT NULL from SEARCH expressions"
omit e6f4ba1 Revert "[CALCITE-4364] `a IN (1, 2) AND a = 1` should be
simplified to `a = 1`"
omit 4282c53 Revert "[CALCITE-4389] Calls to ROW and anonymous row
operators sometimes print too many spaces"
omit 81ea94b Revert "[CALCITE-4383] In RelBuilder, optimize 'VALUES ...
UNION ALL ... VALUES' to a single 'VALUES' with multiple rows"
omit 44623f3 Revert "Following 4364, fix the plann diff of TpcdsTest"
omit c8b5622 Following 4364, fix the plann diff of TpcdsTest
This update removed existing revisions from the reference, leaving the
reference pointing at a previous point in the repository history.
* -- * -- N refs/heads/master (ff4c16d)
\
O -- O -- O (7b043bf)
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:
.../adapter/enumerable/RexToLixTranslator.java | 5 +
.../org/apache/calcite/jdbc/CalciteMetaImpl.java | 4 +
.../apache/calcite/plan/SubstitutionVisitor.java | 4 +
.../calcite/rel/rel2sql/RelToSqlConverter.java | 24 +-
.../apache/calcite/rel/rel2sql/SqlImplementor.java | 217 ++++++++--
.../calcite/rel/rules/SubQueryRemoveRule.java | 6 +-
.../java/org/apache/calcite/rex/RexBuilder.java | 155 ++++++-
.../main/java/org/apache/calcite/rex/RexCall.java | 28 +-
.../java/org/apache/calcite/rex/RexLiteral.java | 302 ++++++++------
.../java/org/apache/calcite/rex/RexSimplify.java | 434 +++++++++++++++++---
.../main/java/org/apache/calcite/rex/RexUtil.java | 198 +++++++++
.../java/org/apache/calcite/sql/SqlDialect.java | 28 +-
.../main/java/org/apache/calcite/sql/SqlKind.java | 24 ++
.../java/org/apache/calcite/sql/SqlNodeList.java | 2 +
.../apache/calcite/sql/fun/SqlBetweenOperator.java | 7 +-
.../org/apache/calcite/sql/fun/SqlInOperator.java | 3 +-
.../calcite/sql/fun/SqlInternalOperators.java | 96 +++++
.../org/apache/calcite/sql/fun/SqlRowOperator.java | 1 -
.../apache/calcite/sql/fun/SqlSearchOperator.java | 57 +++
.../calcite/sql/fun/SqlStdOperatorTable.java | 5 +
.../org/apache/calcite/sql/type/SqlTypeName.java | 5 +-
.../apache/calcite/sql2rel/SqlToRelConverter.java | 21 +-
.../java/org/apache/calcite/tools/RelBuilder.java | 96 ++++-
.../src/main/java/org/apache/calcite/util/Bug.java | 5 -
.../java/org/apache/calcite/util/RangeSets.java | 398 ++++++++++++++++++
.../main/java/org/apache/calcite/util/Sarg.java | 209 ++++++++++
.../calcite/jdbc/CalciteRemoteDriverTest.java | 5 +-
.../rel/rel2sql/RelToSqlConverterStructsTest.java | 3 +-
.../calcite/rel/rel2sql/RelToSqlConverterTest.java | 201 ++++++----
.../calcite/rel/rules/DateRangeRulesTest.java | 10 +-
.../apache/calcite/rex/RexProgramBuilderBase.java | 7 +-
.../org/apache/calcite/rex/RexProgramTest.java | 391 +++++++++++++++---
.../org/apache/calcite/rex/RexProgramTestBase.java | 59 ++-
.../org/apache/calcite/test/JdbcAdapterTest.java | 49 +--
.../java/org/apache/calcite/test/JdbcTest.java | 17 +-
.../java/org/apache/calcite/test/Matchers.java | 30 ++
.../test/MaterializedViewRelOptRulesTest.java | 46 +--
.../org/apache/calcite/test/RelBuilderTest.java | 228 ++++++++++-
.../org/apache/calcite/test/RelMetadataTest.java | 2 +-
.../org/apache/calcite/test/RelOptRulesTest.java | 6 +-
.../apache/calcite/test/SqlToRelConverterTest.java | 3 +-
.../calcite/test/fuzzer/RexProgramFuzzyTest.java | 93 +----
.../apache/calcite/test/fuzzer/RexShrinker.java | 30 +-
.../java/org/apache/calcite/util/RangeSetTest.java | 445 +++++++++++++++++++++
.../java/org/apache/calcite/util/UtilTest.java | 80 ++--
.../org/apache/calcite/test/RelOptRulesTest.xml | 54 ++-
.../apache/calcite/test/SqlToRelConverterTest.xml | 112 +++---
.../calcite/test/TypeCoercionConverterTest.xml | 167 ++++----
core/src/test/resources/sql/agg.iq | 85 +---
core/src/test/resources/sql/conditions.iq | 27 ++
core/src/test/resources/sql/join.iq | 40 +-
core/src/test/resources/sql/misc.iq | 33 +-
core/src/test/resources/sql/outer.iq | 20 +-
core/src/test/resources/sql/sort.iq | 2 +-
core/src/test/resources/sql/sub-query.iq | 35 +-
core/src/test/resources/sql/winagg.iq | 20 +-
.../calcite/adapter/druid/DruidDateTimeUtils.java | 37 +-
.../calcite/adapter/druid/DruidJsonFilter.java | 32 +-
.../apache/calcite/adapter/druid/DruidQuery.java | 27 +-
.../apache/calcite/adapter/druid/DruidRules.java | 12 +-
.../adapter/druid/DruidQueryFilterTest.java | 15 +-
.../org/apache/calcite/test/DruidAdapter2IT.java | 40 +-
.../org/apache/calcite/test/DruidAdapterIT.java | 47 +--
.../calcite/adapter/geode/rel/GeodeFilter.java | 9 +-
.../calcite/adapter/geode/rel/GeodeRules.java | 3 +-
.../adapter/geode/rel/GeodeBookstoreTest.java | 2 +-
.../calcite/adapter/geode/rel/GeodeZipsTest.java | 4 +-
.../adapter/innodb/InnodbFilterTranslator.java | 9 +-
.../calcite/adapter/mongodb/MongoFilter.java | 14 +-
.../apache/calcite/adapter/mongodb/MongoRel.java | 7 +-
.../mongodb/MongoToEnumerableConverter.java | 3 +-
.../java/org/apache/calcite/test/PigRelOpTest.java | 6 +-
.../apache/calcite/adapter/tpcds/TpcdsTest.java | 36 +-
site/_docs/history.md | 2 +-
.../org/apache/calcite/test/SparkAdapterTest.java | 6 +-
.../enumerable/CodeGenerationBenchmark.java | 8 +-
76 files changed, 3755 insertions(+), 1198 deletions(-)
create mode 100644
core/src/main/java/org/apache/calcite/sql/fun/SqlInternalOperators.java
create mode 100644
core/src/main/java/org/apache/calcite/sql/fun/SqlSearchOperator.java
create mode 100644 core/src/main/java/org/apache/calcite/util/Sarg.java
create mode 100644 core/src/test/java/org/apache/calcite/util/RangeSetTest.java