You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@calcite.apache.org by da...@apache.org on 2020/02/26 05:14:00 UTC

[calcite] tag calcite-1.22.0 created (now e397e47)

This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a change to tag calcite-1.22.0
in repository https://gitbox.apache.org/repos/asf/calcite.git.


      at e397e47  (commit)
This tag includes the following new commits:

     new ec13d0f  [CALCITE-3822] Source distribution must not contain fonts under SIL OFL 1.1 license (category B)
     new e397e47  [CALCITE-3808] Release Calcite 1.22.0

The 2 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.



[calcite] 01/02: [CALCITE-3822] Source distribution must not contain fonts under SIL OFL 1.1 license (category B)

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a commit to tag calcite-1.22.0
in repository https://gitbox.apache.org/repos/asf/calcite.git

commit ec13d0f291919e7d2104758065823fa685f6a037
Author: yuzhao.cyz <yu...@gmail.com>
AuthorDate: Wed Feb 26 13:08:12 2020 +0800

    [CALCITE-3822] Source distribution must not contain fonts under SIL OFL 1.1 license (category B)
---
 release/build.gradle.kts | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/release/build.gradle.kts b/release/build.gradle.kts
index ef0d935..39a70f4 100644
--- a/release/build.gradle.kts
+++ b/release/build.gradle.kts
@@ -115,7 +115,6 @@ val getLicenses by tasks.registering(GatherLicenseTask::class) {
     // Parts of the web site generated by Jekyll (http://jekyllrb.com/)
     addDependency(":jekyll:", SpdxLicense.MIT)
     addDependency("font-awesome:font-awesome-code:4.2.0", SpdxLicense.MIT)
-    addDependency("font-awesome:font-awesome-font:4.2.0", SpdxLicense.OFL_1_1)
     // git.io/normalize
     addDependency(":normalize:3.0.2", SpdxLicense.MIT)
     // Gridism: A simple, responsive, and handy CSS grid by @cobyism
@@ -143,6 +142,20 @@ fun CopySpec.excludeLicenseFromSourceRelease() {
     exclude("LICENSE")
 }
 
+fun CopySpec.excludeCategoryBLicensedWorksFromSourceRelease() {
+    // The source distribution contains "font-awesome:fonts" which is licensed as
+    // http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License).
+    //
+    // OFL 1.1 is "category B" (see LEGAL-112).
+    //
+    // According to
+    // https://www.apache.org/legal/resolved.html#binary-only-inclusion-condition,
+    // the source code can not include Category B licensed works.
+
+    // We need to remove "web and desktop font files".
+    exclude("site/fonts/**")
+}
+
 fun CrLfSpec.sourceLayout() = copySpec {
     duplicatesStrategy = DuplicatesStrategy.EXCLUDE
     gitattributes(gitProps)
@@ -154,6 +167,7 @@ fun CrLfSpec.sourceLayout() = copySpec {
         from(rootDir) {
             gitignore(gitProps)
             excludeLicenseFromSourceRelease()
+            excludeCategoryBLicensedWorksFromSourceRelease()
         }
     }
 }


[calcite] 02/02: [CALCITE-3808] Release Calcite 1.22.0

Posted by da...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

danny0405 pushed a commit to tag calcite-1.22.0
in repository https://gitbox.apache.org/repos/asf/calcite.git

commit e397e47b0752c0647590097584903a9561a646eb
Author: yuzhao.cyz <yu...@gmail.com>
AuthorDate: Wed Feb 26 13:08:32 2020 +0800

    [CALCITE-3808] Release Calcite 1.22.0
    
    * Update docs to 1.22.0
    * Add release notes for 1.22.0
    * Update the NOTICE for copyright year
---
 NOTICE                |   2 +-
 README                |   2 +-
 site/_docs/history.md | 347 +++++++++++++++++++++++++++++++++++++++++++++++++-
 site/_docs/howto.md   |   6 +-
 4 files changed, 347 insertions(+), 10 deletions(-)

diff --git a/NOTICE b/NOTICE
index 4abdfa9..dfb3198 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,5 +1,5 @@
 Apache Calcite
-Copyright 2012-2019 The Apache Software Foundation
+Copyright 2012-2020 The Apache Software Foundation
 
 This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
diff --git a/README b/README
index 6a522a7..7eeca3a 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-Apache Calcite release 1.21.0
+Apache Calcite release 1.22.0
 
 This is a source or binary distribution of Apache Calcite.
 
diff --git a/site/_docs/history.md b/site/_docs/history.md
index cc842df..4b212a1 100644
--- a/site/_docs/history.md
+++ b/site/_docs/history.md
@@ -28,14 +28,351 @@ For a full list of releases, see
 Downloads are available on the
 [downloads page]({{ site.baseurl }}/downloads/).
 
-## 1.22.0 (un-released)
+## <a href="https://github.com/apache/calcite/releases/tag/calcite-1.22.0">1.22.0</a> / 2020-02-24
+{: #v1-22-0}
+
+This release comes five months after 1.21.0. It includes more than 250 resolved issues, comprising a large number of new features as well as general improvements and bug-fixes. Among others, it is worth highlighting the following.
+
+* Supports SQL hints for different kind of relational expressions (<a href="https://issues.apache.org/jira/browse/CALCITE-482">CALCITE-482</a>)
+* The project has migrated from Maven to Gradle and introduces many nice features, i.e. auto check style fix (<a href="https://issues.apache.org/jira/browse/CALCITE-2905">CALCITE-2905</a>)
+* A new Redis adaptor (<a href="https://issues.apache.org/jira/browse/CALCITE-3510">CALCITE-3510</a>)
+* More Oracle and MySQL functions are supported, i.e. Oracle XML function (<a href="https://issues.apache.org/jira/browse/CALCITE-3579">CALCITE-3579</a>, <a href="https://issues.apache.org/jira/browse/CALCITE-3580">CALCITE-3580</a>), MySQL math functions (<a href="https://issues.apache.org/jira/browse/CALCITE-3684">CALCITE-3684</a>, <a href="https://issues.apache.org/jira/browse/CALCITE-3695">CALCITE-3695</a>, <a href="https://issues.apache.org/jira/browse/CALCITE-3707">CALCITE-3707</a>)
+
+We have also fixed some important bugs:
+* The metadata cache is fixed for rare cases that RelSets are merging (<a href="https://issues.apache.org/jira/browse/CALCITE-2018">CALCITE-2018</a>)
+* The GROUP_ID now returns correct results (<a href="https://issues.apache.org/jira/browse/CALCITE-1824">CALCITE-1824</a>)
+* Correlate row count estimate has been fixed, it is always 1 before (<a href="https://issues.apache.org/jira/browse/CALCITE-3711">CALCITE-3711</a>)
+* The modulus precision inference of DECIMALs has been fixed (<a href="https://issues.apache.org/jira/browse/CALCITE-3435">CALCITE-3435</a>)
+
+Compatibility: This release is tested on Linux, macOS, Microsoft Windows;
+using Oracle JDK 8, 9, 10, 11, 12, 13 and OpenJDK 8, 9, 10, 11, 12, 13;
+Guava versions 19.0 to 27.1-jre; Apache Druid version 0.14.0-incubating;
+other software versions as specified in gradle.properties.
 
 #### Breaking Changes
 
-* Constructors for `Project`, `TableScan`, `Calc`, `Aggregate` and `Join` introduce new parameter named "hints";
-* Logical `RelNode`'s `create` method need to pass in hints explicitly;
-* `Project` names will not represent in `RelNode` digest anymore;
-* `RexCall`s are default to be normalized in the `RelNode` digest. 
+* Constructors for `Project`, `TableScan`, `Calc`, `Aggregate` and `Join` introduce new parameter named "hints" (<a href="https://issues.apache.org/jira/browse/CALCITE-482">CALCITE-482</a>)
+* Logical `RelNode`'s `create` method need to pass in hints explicitly (<a href="https://issues.apache.org/jira/browse/CALCITE-3723">CALCITE-3723</a>)
+* `Project` names will not represent in `RelNode` digest anymore (<a href="https://issues.apache.org/jira/browse/CALCITE-3713">CALCITE-3713</a>)
+* `RexCall`s are default to be normalized in the `RelNode` digest (<a href="https://issues.apache.org/jira/browse/CALCITE-2450">CALCITE-2450</a>)
+* RelBuilder.aggregate now would prune the unused fields from the input, thus the plan may change (<a href="https://issues.apache.org/jira/browse/CALCITE-3763">CALCITE-3763</a>)
+* RelBuilder.scan and sql-to-rel conversion always invoke RelOptTable.toRel now, so there may be some plan changes for the TableScan node if your RelOptTable.toRel returns a physical rel before
+
+#### New features
+
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3707">CALCITE-3707</a>] Implement COSH function
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3695">CALCITE-3695</a>] Implement TANH function
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3640">CALCITE-3640</a>] Oracle EXISTSNODE Function Support (ritesh-kapoor)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3382">CALCITE-3382</a>] Support TUMBLE as Table Value Function (Rui Wang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3510">CALCITE-3510</a>] Implement Redis adapter
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3684">CALCITE-3684</a>] Implement CBRT function (Qianjin Xu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3580">CALCITE-3580</a>] Oracle EXTRACT(XML) Function Support (ritesh-kapoor)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3579">CALCITE-3579</a>] Oracle XMLTRANSFORM Function Support (ritesh-kapoor)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3591">CALCITE-3591</a>] Add bit_xor aggregate operator (wangxlong)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3552">CALCITE-3552</a>] Support MySQL ExtractValue function
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3542">CALCITE-3542</a>] Implement RepeatUnion All=false
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2905">CALCITE-2905</a>] Migrate build scripts to Gradle
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-482">CALCITE-482</a>] Implement sql and planner hints
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3405">CALCITE-3405</a>] Prune columns for ProjectableFilterableTable when Project is not simple mapping (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3349">CALCITE-3349</a>] Add CREATE FUNCTION and DROP FUNCTION ddl (Zhenqiu Huang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3323">CALCITE-3323</a>] Add mode to SqlValidator that treats statements as valid if they contain unknown functions (Ryan Fu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3302">CALCITE-3302</a>] Implement CLASSIFIER and LAST functions for MATCH_RECOGNIZE
+
+#### Adaptors
+
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3771">CALCITE-3771</a>] TRIM Support for HIVE/SPARK Dialect (Dhirenda Gautam)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3465">CALCITE-3465</a>] Add support for missing Cassandra 3.x data types (Alessandro Solimando)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3751">CALCITE-3751</a>] JDBC adapter generates SQL with wrong aliases in GROUP BY ... ORDER BY query
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3593">CALCITE-3593</a>] JDBC adapter generates incorrect HAVING clause for BigQuery (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3466">CALCITE-3466</a>] JDBC adapter incorrectly drops GROUP BY clause of sub-query (Wang Weidong)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3663">CALCITE-3663</a>] Support for TRIM function in BigQuery Dialect
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3154">CALCITE-3154</a>] RelToSqlConverter generates NULLS LAST and NULLS FIRST wrongly when using MysqlSqlDialect to convert RexOver to sql (Wenhui Tang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2672">CALCITE-2672</a>] Qualifying the common column should not be allowed in Oracle dialect and SQL standard
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3568">CALCITE-3568</a>] BigQuery, Hive, Spark SQL dialects do not support nested aggregates (Divyanshu Srivastava)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3381">CALCITE-3381</a>] Unparse to correct BigQuery ingterval syngax: INTERVAL int64 time_unit. Range time unit is not supported yet by BigQuery (amaliujia)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3496">CALCITE-3496</a>] Hive dialect and MS SQL dialect support with cube and with rollup (dz)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3112">CALCITE-3112</a>] Support Window in RelToSqlConverter (Wenhui Tang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3486">CALCITE-3486</a>] In JDBC adapter, when generating ROW value expression, generates the ROW keyword only if the dialect allows it (quxiucheng)
+* Use proper ClassLoader in SparkHandlerImpl
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3437">CALCITE-3437</a>] ElasticSearch adapter. Support MatchQuery in elasticsearch (Shlok Srivastava)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3381">CALCITE-3381</a>] When using BigQuery dialect, Rel2SQL converter converts SQL types to BigQuery types (part2) (Rui Wang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3475">CALCITE-3475</a>] JDBC adapter generates invalid SQL for UNION ALL on BigQuery (Steven Talbot)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3434">CALCITE-3434</a>] ElasticSearch schema with pathPrefix (Jeffery Zhang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3442">CALCITE-3442</a>] In ElasticSearch adapter, set `stored_fields = _none_` to prohibit FetchPhase get involved (Yunfeng,Wu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3370">CALCITE-3370</a>] In JDBC adapter for Microsoft SQL Server, emulate NULLS FIRST using CASE expression (Justin Swett)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3247">CALCITE-3247</a>] In JDBC adapter, when generating SQL for Hive, transform SUBSTRING function to correct format (Jacky Woo)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3282">CALCITE-3282</a>] In JDBC adapter, when generating SQL for Hive, generate INTEGER type as INT (huangfeng)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3335">CALCITE-3335</a>] ElasticSearch adapter. Introduce configuration parameter "hosts" which deprecates previous "coordinates". (Shikha Somani)
+
+#### Bug fixes, API changes and minor enhancements
+
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3807">CALCITE-3807</a>] checkForSatisfiedConverters() is unnecessary
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3803">CALCITE-3803</a>] Enhance RexSimplify to simplify 'a>1 or (a<3 and b)' to 'a>1 or b' if column a is not nullable
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2707">CALCITE-2707</a>] Information about distinct aggregation is lost in MATCH_RECOGNIZE
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3801">CALCITE-3801</a>] Deprecate SqlToRelConverter.Config#isConvertTableAccess
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3791">CALCITE-3791</a>] HepPlanner does not clear metadata cache for the ancestors of discarded node when a transformation happens
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3794">CALCITE-3794</a>] RexSimplify should return early if there is no pulled up predicate when simplifying using predicates
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3798">CALCITE-3798</a>] Make RelBuilder view expander pluggable
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3769">CALCITE-3769</a>] Deprecate TableScanRule
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3774">CALCITE-3774</a>] In RelBuilder and ProjectMergeRule, prevent merges when it would increase expression complexity
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3763">CALCITE-3763</a>] RelBuilder.aggregate should prune unused fields from the input, if the input is a Project
+* Add RelBuilder.transform, which allows you to clone a RelBuilder with slightly different Config
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3785">CALCITE-3785</a>] HepPlanner.belongToDag() doesn't have to use mapDigestToVertex (Xiening Dai)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3783">CALCITE-3783</a>] PruneEmptyRules#JOIN_RIGHT_INSTANCE wrong behavior for JoinRelType.ANTI
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3781">CALCITE-3781</a>] HintStrategy can specify excluded rules for planner
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3773">CALCITE-3773</a>] Wrong parameter in EnumerableMergeJoin::create method
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3768">CALCITE-3768</a>] VolcanoPlanner.changeTraitsUsingConverters() has parameter that's never used
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3766">CALCITE-3766</a>] Add a Builder to RelHint
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3765">CALCITE-3765</a>] Returns early when there is an existing operand when assigning operands solve order
+* Switch RelBuilder.Config to an interface, and deprecate RelBuilder.ConfigBuilder
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3764">CALCITE-3764</a>] AggregateCaseToFilterRule handles NULL values incorrectly
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1824">CALCITE-1824</a>] GROUP_ID returns wrong result (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3756">CALCITE-3756</a>] RelSubset should not match operand(RelNode.class)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3738">CALCITE-3738</a>] Missing order by logical plan for INSERT statement
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3676">CALCITE-3676</a>] VolcanoPlanner.dumpGraphviz should handle exception gracefully (Qianjin Xu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3653">CALCITE-3653</a>] Support TableModify in ToLogicalConverter (dz)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3668">CALCITE-3668</a>] VolcanoPlanner does not match all the RelSubSet in matchRecursive
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3744">CALCITE-3744</a>] Duplicate rule matches when RelSet gets merged
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3747">CALCITE-3747</a>] Constructing BETWEEN with RelBuilder throws class cast exception
+* Add hsqldb data sets (scott, foodmart and chinook) to SQLLine's path
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3735">CALCITE-3735</a>] In ImmutableBeans, allow interfaces to have default methods
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3736">CALCITE-3736</a>] Add an interface in RelOptRuleCall to customize the propagation of hints before registering into planner rule
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3721">CALCITE-3721</a>] Filter of distinct aggregate call is lost after applying AggregateExpandDistinctAggregatesRule (Shuo Cheng)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3730">CALCITE-3730</a>] Add hints to RelBuilder
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3644">CALCITE-3644</a>] Add ProjectSetOpTransposeRule to normalize materialized view (xy2953396112)
+* Add method Pair.forEach(Iterable, Iterable, BiConsumer)
+* Really deprecate RelBuilder.groupKey(ImmutableBitSet, ImmutableList<ImmutableBitSet>)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3729">CALCITE-3729</a>] Filters failed to be pushed down when it's identical to join condition (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3725">CALCITE-3725</a>] RelMetadataTest fails with NPE due to unsafe RelMetadataQuery.instance call (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3675">CALCITE-3675</a>] SQL to Rel conversion is broken for coalesce on nullable field (DonnyZone)
+* Refine rules so they produce less no-op matches
+* Refine logging dependencies: keep slf4j bridges in runtime classpath only
+* Refine RuleQueue#addMatch: skip the match if it is not required for the phase
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3364">CALCITE-3364</a>] ClassCastException if group by is used on the result of scalar valued table function (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3722">CALCITE-3722</a>] Add Hook#PLAN_BEFORE_IMPLEMENTATION to capture the plan after optimization
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3713">CALCITE-3713</a>] Remove column names from Project#digest
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2450">CALCITE-2450</a>] Reorder RexCall predicates to a canonical form
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3719">CALCITE-3719</a>] Add hint option checker to customize the option
+validation
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3677">CALCITE-3677</a>] Add assertion to EnumerableTableScan constructor to validate if the table is suitable for enumerable scan
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3715">CALCITE-3715</a>] Add an interface to pass the table hints to RelOptTable
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3714">CALCITE-3714</a>] BitString.createFromBytes reverses order of the bits in each byte
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3712">CALCITE-3712</a>] Optimize lossless casts in RexSimplify: CAST(CAST(intExpr as BIGINT) as INT) => intExpr
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3587">CALCITE-3587</a>] RexBuilder may lose decimal fraction for creating literal with DECIMAL type (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3658">CALCITE-3658</a>] TableModify of Update contains correlated variable by mistake (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3711">CALCITE-3711</a>] Correlate should override estimateRowCount
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3606">CALCITE-3606</a>] Derive target table column list by mistake when convert TableModify to Sql string (JinXing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3526">CALCITE-3526</a>] SqlPrettyWriter should have options to fold/chop long lines, print leading commas
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3328">CALCITE-3328</a>] Immutable beans, powered by reflection
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3672">CALCITE-3672</a>] Support implicit type coercion for insert and updat
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3651">CALCITE-3651</a>] NPE when convert relational algebra that correlates TableFunctionScan (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3666">CALCITE-3666</a>] Refine RelMdColumnUniqueness and RelMdUniqueKeys for Calc
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3655">CALCITE-3655</a>] SortJoinTransposeRule must not push sort into Project that contains OVER expressions
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3649">CALCITE-3649</a>] Hints should be propagated correctly in planner rules if original node is transformed to different kind
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3563">CALCITE-3563</a>] When resolving method call in calcite runtime, add type check and match mechanism for input arguments (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3621">CALCITE-3621</a>] Push down sort to DB, SQL of Sort rel contains explicit field name instead of * (Lei Jiang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3652">CALCITE-3652</a>] Add org.apiguardian:apiguardian-api to specify API status
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3632">CALCITE-3632</a>] Add IntersectToIntersectUnify Rule in SubstitutionVisitor (xy2953396112)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3643">CALCITE-3643</a>] Prevent matching JoinCommuteRule when both inputs are the same
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3630">CALCITE-3630</a>] Improve ReduceExpressionsRule
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3607">CALCITE-3607</a>] Support LogicalTableModify in RelShuttle (xy2953396112)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3618">CALCITE-3618</a>] ProjectToWindowRule - correct isDependent checking (lxian2shell)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3631">CALCITE-3631</a>] Support SQL hints for Calc
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3635">CALCITE-3635</a>] Supports hint option as string or numeric literal
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3525">CALCITE-3525</a>] RexSimplify: eliminate redundant rex calls in OR
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3620">CALCITE-3620</a>] Remove implicit lateral operator for temporal table join
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3387">CALCITE-3387</a>] Query with GROUP BY and JOIN ... USING wrongly fails with "Column DEPTNO is ambiguous" error
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3604">CALCITE-3604</a>] Fixing SqlXmlFunctionsTest locale (ritesh-kapoor)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3608">CALCITE-3608</a>] Promote RelOptUtil.createCastRel to not create new projection if the input rel is already a project
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3603">CALCITE-3603</a>] SqlLateralOperator's unparse add additional keyword 'LATERAL' when the inner operator is SqlSnapshot
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3590">CALCITE-3590</a>] Support SQL hints for Aggregate (Shuo Cheng)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3599">CALCITE-3599</a>] Override toString() of RexRangeRef to avoid null string
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3598">CALCITE-3598</a>] EnumerableTableScan: wrong JavaRowFormat for elementType String
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3575">CALCITE-3575</a>] IndexOutOfBoundsException when converting sql to rel
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3462">CALCITE-3462</a>] Add projectExcept method in RelBuilder for projecting out expressions
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3535">CALCITE-3535</a>] EnumerableJoinRule: remove unnecessary Filter on top of INNER Join
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3520">CALCITE-3520</a>] Type cast from primitive to box is not correct (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3584">CALCITE-3584</a>] Propagate hints when decorrelating a query
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3481">CALCITE-3481</a>] Support convert TableFunctionScan to SqlNode (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3565">CALCITE-3565</a>] Explicitly cast assignable operand types to decimal for udf (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3547">CALCITE-3547</a>] SqlValidatorException because Planner cannot find UDFs added to schema (Chenxiao Mao)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3246">CALCITE-3246</a>] NullPointerException while deserializing udf operator (Wang Yanlin).
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3429">CALCITE-3429</a>] AssertionError for user-defined table function with map argument (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3560">CALCITE-3560</a>] Additional calcite.util.Source implementation for generic text source (eg. CharSource)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3550">CALCITE-3550</a>] Make SqlTypeAssignmentRules conversion mapping pluggable
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3546">CALCITE-3546</a>] Improve EnumerableDefaults nested loop join
+Provide a new implementation of nested loop join that, unlike the existing one, does not
+require to build the complete result as a list before returning it. Instead, it iterates
+through the outer and inner enumerables and returns the results step by step.
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3281">CALCITE-3281</a>] Support mixed Primitive types for BinaryExpression evaluate method (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3561">CALCITE-3561</a>] Support using unnest in Interpreter (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3566">CALCITE-3566</a>] EnumerableIntersect and EnumerableMinus convert to Logical (xzh_dz)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3567">CALCITE-3567</a>] Unnest support Map wrapped with RecordType (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3569">CALCITE-3569</a>] IndexOutOfBoundsException when pushing simplified filter to view
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3285">CALCITE-3285</a>] EnumerableMergeJoin should support non-equi join condions (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3536">CALCITE-3536</a>] NPE when executing plan with Coalesce due to wrong NullAs strategy (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3355">CALCITE-3355</a>] Deduce whether CASE and COALESCE may produce NULL values
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3473">CALCITE-3473</a>] Getting unique result for table scan should contain key column(s) (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3544">CALCITE-3544</a>] RexSimplify does not exploit all known predicates
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3353">CALCITE-3353</a>] ProjectJoinTransposeRule caused AssertionError when creating a new Join (Wenhui Tang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3539">CALCITE-3539</a>] EnumerableDefaults#nestedLoopJoin returns duplicates for JoinType.SEMI
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3521">CALCITE-3521</a>] CalciteSystemProperty failed to load config file
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3512">CALCITE-3512</a>] Query fails when comparing Time/TimeStamp types (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3534">CALCITE-3534</a>] Support parse(unparse) alien system non-standard data type
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3454">CALCITE-3454</a>] Support Exchange, SetOp and TableModify for builtin
+metadata query (xy2953396112)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3527">CALCITE-3527</a>] Enrich tests for SQL hints in SqlHintsConverterTest (Shuo Cheng)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3245">CALCITE-3245</a>] CompileException in Janino when a query contains a division between a Double and a BigDecimal (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3492">CALCITE-3492</a>] RexUtil.simplifyOrs() throws exception if terms has 1 RexNode
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3519">CALCITE-3519</a>] Use List instead of BitSet to keep inheritPath in RelHint (Shuo Cheng)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3491">CALCITE-3491</a>] Remove unused method VolcanoPlanner.completeConversion() (Xiening Dai)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3498">CALCITE-3498</a>] Unnest operation's ordinality should be deterministic (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3494">CALCITE-3494</a>] Support decimal type aggregate in Interpreter (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3503">CALCITE-3503</a>] NPE at VolcanoPlanner#isValid when DEBUG is enabled (Xiening Dai)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3448">CALCITE-3448</a>] AggregateOnCalcToAggUnifyRule may ignore Project incorrectly (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3476">CALCITE-3476</a>] ParameterScope should override resolveColumn interface (Jark Wu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3474">CALCITE-3474</a>] NullPointerException in SqlSimpleParser toke.s.equals() (Xiucheng Qu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3469">CALCITE-3469</a>] Wrong rel used in SubstitutionVisitor#rowTypesAreEquivalent (Min Dai)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3487">CALCITE-3487</a>] Should not hard code RelMetadataQuery class in VolcanoPlanner.isValid() (Xiening Dai)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3482">CALCITE-3482</a>] Equality of nested ROWs returns false for identical literal value
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3479">CALCITE-3479</a>] Stack overflow error thrown when running join queryi (Xiening Dai)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3435">CALCITE-3435</a>] Enable decimal modulus operation to allow numeric with non-zero scale (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3456">CALCITE-3456</a>] AssertionError throws for aggregation with same digest IN subqueries in same scope
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3408">CALCITE-3408</a>] Add support for enumerable intersect/minus all (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3423">CALCITE-3423</a>] Support using CAST operation and BOOLEAN type value in table macro (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3458">CALCITE-3458</a>] Remove desc in AbstractRelNode
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3400">CALCITE-3400</a>] Implement left/right/semi/anti/full join in interpreter (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3254">CALCITE-3254</a>] Exception while deserializing with interval type or with empty partition/order key for RexOver (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3457">CALCITE-3457</a>] RexSimplify incorrectly simplifies IS NOT NULL operator with ITEM call
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3433">CALCITE-3433</a>] EQUALS operator between date/timestamp types returns false if the type is nullable (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3449">CALCITE-3449</a>] Sync the table name logic from TableScan into the TableModify (dy.Zhuang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3376">CALCITE-3376</a>] VolcanoPlanner CannotPlanException: best rel is null even though there is an option with non-infinite cost Problem solved via <a href="https://issues.apache.org/jira/browse/CALCITE-2018">CALCITE-2018</a>, just add a unit test for this specific scenario
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3454">CALCITE-3454</a>] Support Exchange in RelMdMaxRowCount,RelMdMinRowCount,RelMdRowCount (xy2953396112)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2018">CALCITE-2018</a>] Queries failed with AssertionError: rel has lower cost than best cost of subset
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3446">CALCITE-3446</a>] Make RelMetadataQuery extensible
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3390">CALCITE-3390</a>] Add ITEM expression to SqlKind and include it in the policy map for Strong (Aman Sinha)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3334">CALCITE-3334</a>] Refinement for Substitution-Based MV Matching (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3439">CALCITE-3439</a>] Support Intersect and Minus in RelMdPredicates (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3451">CALCITE-3451</a>] Support TableModify in RelMdNodeTypes (xy2953396113)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3444">CALCITE-3444</a>] Upgrade SQLLine to 1.9.0, and solve "Class path contains multiple SLF4J bindings" problem
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3436">CALCITE-3436</a>] In CalciteConnectionConfigImpl, add isSet and unset methods (Ryan Fu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3440">CALCITE-3440</a>] RelToSqlConverter does not properly alias ambiguous ORDER BY
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3441">CALCITE-3441</a>] Remove SqlTypeExplicitPrecedenceList.COMPACT_NUMERIC_TYPES because the NULL delimiters are useless
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3428">CALCITE-3428</a>] Refine RelMdColumnUniqueness for Filter by considering constant columns (Jin Xing)
+* Add RelBuilder.fields(ImmutableBitSet)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3424">CALCITE-3424</a>] AssertionError thrown for user-defined table function with array argument (Igor Guzenko)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3300">CALCITE-3300</a>] In JDBC adapter, when generating SQL for count star, generates the star argument of the call (Wang Weidong)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3414">CALCITE-3414</a>] In calcite-core, use RexToLixTranslator.convert for type conversion code generation uniformly (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3416">CALCITE-3416</a>] SQL Dialects DEFAULTs should be more extensible
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3393">CALCITE-3393</a>] RelStructuredTypeFlattener: improve support for functions with struct input (Igor Guzenko)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3318">CALCITE-3318</a>] Preserving CAST of STRING operand in binary comparison for BigQuery (soma-mondal)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2792">CALCITE-2792</a>] Stackoverflow while evaluating filter with large number of OR conditions
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3407">CALCITE-3407</a>] Implement MINUS and INTERSECT in interpreter (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3420">CALCITE-3420</a>] NullPointerException throws for implicit type coercion of nested SET operations
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3403">CALCITE-3403</a>] RelMetadataQuery reuse (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3411">CALCITE-3411</a>] Incorrect code generated for BigDecimal ConstantExpression (DonnyZone)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3410">CALCITE-3410</a>] Simplify RelOptRulesTest and HepPlannerTest by making test methods fluent
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3404">CALCITE-3404</a>] In AggregateExpandDistinctAggregatesRule, treat all the agg expressions as distinct if they have the same arguments and the non-distinct expressions distinct constraints can be ignored
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3382">CALCITE-3382</a>] Hard-wire the TUMBLE grouping function into SQL parser (Rui Wang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3396">CALCITE-3396</a>] Materialized view matches unexpectedly for UNION with different 'all' property (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3379">CALCITE-3379</a>] Support expand STRING column expression of table during sql-to-rel conversion
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3397">CALCITE-3397</a>] AssertionError for interpretering multiset value (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3383">CALCITE-3383</a>] Plural time units
+* Re-format and re-organize config.fmpp files that customize the SQL parser
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3392">CALCITE-3392</a>] Column expression in DDL should be validated before converting to RexNode
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3330">CALCITE-3330</a>] Use breadth first approach for propagating cost improvements
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3386">CALCITE-3386</a>] CyclicMetadataException singleton instance causes confusion when debugging (Zuozhi Wang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3389">CALCITE-3389</a>] Test may fail if HashSet iterates in different order (contextshuffling)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3361">CALCITE-3361</a>] Add 'lenientOperatorLookup' connection property
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3347">CALCITE-3347</a>] IndexOutOfBoundsException in FixNullabilityShuttle when using FilterIntoJoinRule (Wang Yanlin, Shuming Li)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3381">CALCITE-3381</a>] When using BigQuery dialect, Rel2SQL converter converts SQL types to BigQuery types (Rui Wang)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3374">CALCITE-3374</a>] Error format check result for explain plan as json (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3363">CALCITE-3363</a>] JoinUnionTransposeRule.RIGHT_UNION should not match SEMI/ANTI Join (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3369">CALCITE-3369</a>] In LatticeSuggester, recommend lattices based on UNION queries
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3365">CALCITE-3365</a>] Don't require use of JdbcSchema in QuerySqlStatisticProvider (Lindsey Meyer)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3239">CALCITE-3239</a>] Calc#accept(RexShuttle shuttle) does not update rowType. (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3327">CALCITE-3327</a>] Simplify SqlValidatorTest and SqlParserTest by making test methods fluent
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3288">CALCITE-3288</a>] In ConstantExpression support SET literals (xy2953396112)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1178">CALCITE-1178</a>] Allow SqlBetweenOperator to compare DATE and TIMESTAMP
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3348">CALCITE-3348</a>] AssertionError while determining distribution of Calc (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3287">CALCITE-3287</a>] Union in RelMdRowCount.java doesn't take into account 'union all' (Hong Shen)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3357">CALCITE-3357</a>] Trivial null checking in RelSet#addAbstractConverters (Jin Xing)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3286">CALCITE-3286</a>] In LatticeSuggester, allow join conditions that use expressions
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3344">CALCITE-3344</a>] In JDBC adapter, generate "SELECT TOP(n)" for MSSQL 2008 and earlier, and for Sybase ASE
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3360">CALCITE-3360</a>] SqlValidator throws NPE for unregistered function without implicit type coercion
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3316">CALCITE-3316</a>] Exception while deserializing LogicalCorrelate from json string (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3317">CALCITE-3317</a>] Add a public constructor for LogicalCalc with RelInput type parameter (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3319">CALCITE-3319</a>] AssertionError when reducing decimals (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3331">CALCITE-3331</a>] Support implicit type cast for operators that use single operand family checker
+
+#### Build and test
+
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2442">CALCITE-2442</a>] Remove .toDelete cassandra temp folder on Windows after tests
+* Update Gradle test output formatting
+* Color test results in Gradle output
+* In JDBC adapter tests that check generated SQL, extract SQL from string literals in generated Java
+* Refactor MaterializationTest to use a fluent API
+* Allow "CREATE TABLE ... AS SELECT ..." in Quidem tests
+* Increase test coverage for regular CI jobs: move @Tag(slow) annotations to test methods
+* Use concurrent test execution by default
+* Add gradle task 'aggregateJavadocIncludingTests' that builds javadoc for both main and test
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3654">CALCITE-3654</a>] Use single Elasticsearch instance for all elasticsearch tests
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3637">CALCITE-3637</a>] Update linq4j tests upgrade from junit4 to junit5 (Qianjin Xu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3623">CALCITE-3623</a>] Replace Spotless with Autostyle
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3622">CALCITE-3622</a>] Update geode tests upgrade from junit4 to junit5 (Qianjin Xu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3601">CALCITE-3601</a>] Update elasticsearch tests upgrade from junit4 to junit5 (Qianjin Xu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3625">CALCITE-3625</a>] Update mongo tests upgrade from junit4 to junit5 (Qianjin Xu)
+* Move PGP signing to com.github.vlsi.stage-vote-release Gradle plugin
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3595">CALCITE-3595</a>] Test infrastructure overwrites reference log with wrong results (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3559">CALCITE-3559</a>] Drop HydromaticFileSetCheck, upgrade Checkstyle 7.8.2 -> 8.27
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3540">CALCITE-3540</a>] FoodmartTest produces many warnings due to incorrect use of CalciteAssert.pooled()
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3548">CALCITE-3548</a>] unlock ./gradlew :ubenchmark:jmh to run benchmarks
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2457">CALCITE-2457</a>] JUnit 4 -> 5: trivial renames
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2457">CALCITE-2457</a>] Configure build to automatically replace common JUnit4 classes with JUnit5
+* Build script: instantiate sqllineClasspath only when buildSqllineClasspath is used
+* GitHub Actions: actions/checkout@master -> v1.1.0 to avoid unexpected failures
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3141">CALCITE-3141</a>] Slow tests are not run in continuous integration
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3140">CALCITE-3140</a>] Multiple failures when executing slow tests
+* Reduce FoodmartQuery heap consumption by ignoring rows/columns as they are never used in tests
+* Add './gradlew style' task to apply code format and report violations
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2905">CALCITE-2905</a>] Migrate build scripts to Gradle
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2905">CALCITE-2905</a>] Add hydromatic-resource as plain source file
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3457">CALCITE-3457</a>] Ignore fuzzer tests due to known unsolved issue
+* Improve folder detection logic in DocumentationTest
+* Ignore TpcdsLatticeSuggesterTest because it does not work
+* Use Class#getResource in FileReaderTest instead of hard-coding file name
+* Simplify reproducerFor3457 test
+* Add shrinker for RexProgramFuzzy so the results are simpler to reason about
+* Refactor SqlPrettyWriterTest, using a fluent API for invoking tests
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3362">CALCITE-3362</a>] Add some tests for empty Lattice (Wang Yanlin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3421">CALCITE-3421</a>] Reuse RelMetadataQuery in test suites
+
+#### Dependency version upgrade
+
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3818">CALCITE-3818</a>] Upgrade Avatica version to 1.16.0
+* Update Gradle: 6.1 -> 6.1.1
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3742">CALCITE-3742</a>] Update Gradle: 6.0.1 -> 6.1
+* Bump spark-core_2.10 from 2.2.0 to 2.2.2
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3516">CALCITE-3516</a>] Bump net.java.dev.jna:jna to 5.5.0
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2457">CALCITE-2457</a>] Druid: JUnit4 -> JUnit5
+* Bump geode-core from 1.9.2 to 1.10.0
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3502">CALCITE-3502</a>] Upgrade Geode dependency 1.6.0 -> 1.9.2
+* Bump jackson-databind from 2.9.9.3 to 2.9.10.1
+
+#### Web site and documentation
+
+* Site: Update IntelliJ instructions with suggested and problematic versions
+* Site: Switch PMC Chair to Stamatis Zampetakis
+* Site: Add two links with useful information about Gradle (Rui Wang)
+* Site: Update homepage of Stamatis Zampetakis
+* Site: Move "Fast federated SQL with Apache Calcite" in talks section and add video link
+* Site: Add Haisheng Yuan as PMC
+* Site: Append '(FirstName LastName)' to commit message example in contributing section
+* Site: Add Danny Chan as PMC
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3445">CALCITE-3445</a>] In web site, automatically redirect http to https
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-3391">CALCITE-3391</a>] Insecure pages warning on Chrome
+* Site: Update upcoming talks section for ApacheCon Europe 2019
+* Site: Change GitHub avatar links to https
 
 ## <a href="https://github.com/apache/calcite/releases/tag/calcite-1.21.0">1.21.0</a> / 2019-09-11
 {: #v1-21-0}
diff --git a/site/_docs/howto.md b/site/_docs/howto.md
index e33e43f..9f9ebe5 100644
--- a/site/_docs/howto.md
+++ b/site/_docs/howto.md
@@ -38,8 +38,8 @@ Unpack the source distribution `.tar.gz` file,
 then build using the included maven wrapper:
 
 {% highlight bash %}
-$ tar xvfz calcite-1.21.0-source.tar.gz
-$ cd calcite-1.21.0
+$ tar xvfz calcite-1.22.0-source.tar.gz
+$ cd calcite-1.22.0
 $ ./gradlew build
 {% endhighlight %}
 
@@ -506,7 +506,7 @@ must:
  * resolve the issue (do not close it as this will be done by the release
 manager);
  * select "Fixed" as resolution cause;
- * mark the appropriate version (e.g., 1.21.0) in the "Fix version" field;
+ * mark the appropriate version (e.g., 1.22.0) in the "Fix version" field;
  * add a comment (e.g., "Fixed in ...") with a hyperlink pointing to the commit
 which resolves the issue (in GitHub or GitBox), and also thank the contributor
 for their contribution.