This is an automated email from the ASF dual-hosted git repository.
jhyde pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/calcite.git
from e981e217d1 Site: Add Tanner Clary as committer
new 6324646db7 In ImmutableBitSet, specialize forEach, and add forEachInt,
anyMatch, allMatch
new b42c181a60 Refactor: RelBuilder.variable(Holder) becomes
variable(Supplier)
new 7fc3e1b007 Refactor: Add RelNode.stripped
new b2f59d7b90 [CALCITE-5697] RelBuilder.convert does not match
nullability if top of stack is a Project
new ddb4200f8f Refactor: Add fields AggregateCall.rexList and
RelBuilder.AggCall.preOperands
new de4631f62c [CALCITE-4334] LITERAL_AGG, an internal aggregate function
that returns a constant value
new 379f41d3be [CALCITE-5717] RelBuilder.project of literals on a
single-row Aggregate should create a Values
The 7 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../adapter/enumerable/AggResultContext.java | 5 +
.../enumerable/EnumerableSortedAggregate.java | 3 +-
.../calcite/adapter/enumerable/PhysType.java | 4 +
.../calcite/adapter/enumerable/PhysTypeImpl.java | 4 +
.../calcite/adapter/enumerable/RexImpTable.java | 25 ++
.../enumerable/impl/AggResultContextImpl.java | 8 +
.../java/org/apache/calcite/plan/RelOptUtil.java | 4 +-
.../apache/calcite/plan/SubstitutionVisitor.java | 5 +-
.../org/apache/calcite/plan/hep/HepPlanner.java | 3 +
.../calcite/plan/hep/HepRelMetadataProvider.java | 3 +-
.../org/apache/calcite/plan/hep/HepRelVertex.java | 15 +-
.../plan/visualizer/RuleMatchVisualizer.java | 14 +-
.../org/apache/calcite/plan/volcano/RelSubset.java | 6 +
.../main/java/org/apache/calcite/rel/RelNode.java | 5 +
.../org/apache/calcite/rel/core/Aggregate.java | 48 ++-
.../org/apache/calcite/rel/core/AggregateCall.java | 136 +++++---
.../java/org/apache/calcite/rel/core/Project.java | 19 ++
.../java/org/apache/calcite/rel/core/Window.java | 3 +-
.../calcite/rel/externalize/RelDotWriter.java | 13 +-
.../calcite/rel/externalize/RelJsonReader.java | 3 +-
.../calcite/rel/metadata/RelMdAllPredicates.java | 8 +-
.../calcite/rel/metadata/RelMdCollation.java | 2 +-
.../calcite/rel/metadata/RelMdPredicates.java | 48 ++-
.../apache/calcite/rel/metadata/RelMdRowCount.java | 2 +-
.../apache/calcite/rel/mutable/MutableRels.java | 13 +-
.../calcite/rel/rel2sql/RelToSqlConverter.java | 17 +-
.../apache/calcite/rel/rel2sql/SqlImplementor.java | 49 ++-
.../rel/rules/AggregateCaseToFilterRule.java | 34 +-
.../AggregateExpandDistinctAggregatesRule.java | 24 +-
.../rel/rules/AggregateFilterTransposeRule.java | 2 +-
.../calcite/rel/rules/AggregateMergeRule.java | 2 +-
.../rel/rules/AggregateReduceFunctionsRule.java | 14 +-
.../calcite/rel/rules/AggregateRemoveRule.java | 51 ++-
.../calcite/rel/rules/AggregateStarTableRule.java | 26 +-
.../rel/rules/AggregateUnionTransposeRule.java | 2 +-
.../rel/rules/ProjectAggregateMergeRule.java | 4 +-
.../rel/rules/ProjectCorrelateTransposeRule.java | 14 +-
.../apache/calcite/rel/rules/PruneEmptyRules.java | 2 +-
.../calcite/rel/rules/SubQueryRemoveRule.java | 5 +-
.../main/java/org/apache/calcite/rex/RexUtil.java | 2 +-
.../main/java/org/apache/calcite/sql/SqlKind.java | 8 +
.../org/apache/calcite/sql/SqlOperatorBinding.java | 9 +-
.../calcite/sql/SqlSingletonAggFunction.java | 50 +++
.../calcite/sql/SqlSplittableAggFunction.java | 47 +--
.../apache/calcite/sql/SqlStaticAggFunction.java | 49 +++
.../main/java/org/apache/calcite/sql/SqlUtil.java | 46 +++
.../calcite/sql/fun/SqlAnyValueAggFunction.java | 2 +-
.../calcite/sql/fun/SqlBasicAggFunction.java | 45 ++-
.../calcite/sql/fun/SqlBitOpAggFunction.java | 2 +-
.../calcite/sql/fun/SqlCountAggFunction.java | 2 +-
.../calcite/sql/fun/SqlGroupingFunction.java | 47 +++
.../calcite/sql/fun/SqlInternalOperators.java | 5 +
.../calcite/sql/fun/SqlLiteralAggFunction.java | 68 ++++
.../calcite/sql/fun/SqlMinMaxAggFunction.java | 2 +-
.../calcite/sql/fun/SqlSingleValueAggFunction.java | 2 +-
.../apache/calcite/sql/fun/SqlSumAggFunction.java | 2 +-
.../sql/fun/SqlSumEmptyIsZeroAggFunction.java | 2 +-
.../apache/calcite/sql2rel/RelDecorrelator.java | 30 +-
.../apache/calcite/sql2rel/SqlToRelConverter.java | 37 +-
.../java/org/apache/calcite/tools/RelBuilder.java | 376 +++++++++++++++------
.../org/apache/calcite/util/ImmutableBitSet.java | 74 +++-
.../org/apache/calcite/util/ImmutableIntList.java | 17 +
.../apache/calcite/util/mapping/MappingType.java | 2 +-
.../materialize/NormalizationTrimFieldTest.java | 2 +-
.../org/apache/calcite/plan/RelWriterTest.java | 8 +-
.../calcite/plan/volcano/TraitPropagationTest.java | 3 +-
.../rel/logical/ToLogicalConverterTest.java | 2 +-
.../calcite/rel/rel2sql/RelToSqlConverterTest.java | 60 +++-
.../sql2rel/CorrelateProjectExtractorTest.java | 22 +-
.../calcite/sql2rel/RelDecorrelatorTest.java | 2 +-
.../org/apache/calcite/test/RelBuilderTest.java | 101 ++++--
.../org/apache/calcite/test/RelMetadataTest.java | 47 ++-
.../org/apache/calcite/test/RelOptRulesTest.java | 12 +-
.../apache/calcite/test/SqlToRelConverterTest.java | 9 +
.../apache/calcite/util/ImmutableBitSetTest.java | 136 +++++++-
.../java/org/apache/calcite/util/UtilTest.java | 31 ++
.../org/apache/calcite/test/RelOptRulesTest.xml | 37 +-
.../apache/calcite/test/SqlToRelConverterTest.xml | 10 +
core/src/test/resources/sql/agg.iq | 115 +++++++
core/src/test/resources/sql/blank.iq | 7 +-
core/src/test/resources/sql/sub-query.iq | 4 +-
site/_docs/algebra.md | 5 +-
82 files changed, 1635 insertions(+), 549 deletions(-)
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
create mode 100644
core/src/main/java/org/apache/calcite/sql/fun/SqlLiteralAggFunction.java