You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@calcite.apache.org by jh...@apache.org on 2017/11/29 04:15:24 UTC
calcite git commit: [CALCITE-2049] Calcite release 1.15.0 [Forced
Update!]
Repository: calcite
Updated Branches:
refs/heads/branch-1.15 2ffe5d581 -> 9bda17abd (forced update)
[CALCITE-2049] Calcite release 1.15.0
Release notes.
Wrap example code in index.md (Alexey Roytman)
Close apache/calcite#560
Project: http://git-wip-us.apache.org/repos/asf/calcite/repo
Commit: http://git-wip-us.apache.org/repos/asf/calcite/commit/9bda17ab
Tree: http://git-wip-us.apache.org/repos/asf/calcite/tree/9bda17ab
Diff: http://git-wip-us.apache.org/repos/asf/calcite/diff/9bda17ab
Branch: refs/heads/branch-1.15
Commit: 9bda17abd5e6ee49ba3a9b20ff3a8a0221b7509e
Parents: 9bb5400
Author: Julian Hyde <jh...@apache.org>
Authored: Sat Nov 25 12:07:18 2017 -0800
Committer: Julian Hyde <jh...@apache.org>
Committed: Tue Nov 28 20:15:03 2017 -0800
----------------------------------------------------------------------
README | 2 +-
pom.xml | 6 +-
site/_docs/history.md | 167 ++++++++++++++++++++++++++++++++++++++++++++-
site/_docs/howto.md | 14 ++--
site/_docs/index.md | 3 +-
site/develop/index.md | 4 +-
6 files changed, 180 insertions(+), 16 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/calcite/blob/9bda17ab/README
----------------------------------------------------------------------
diff --git a/README b/README
index b2cd7e3..6b77b78 100644
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-Apache Calcite release 1.14.0
+Apache Calcite release 1.15.0
This is a source or binary distribution of Apache Calcite.
http://git-wip-us.apache.org/repos/asf/calcite/blob/9bda17ab/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 9ea9ecc..03b1d33 100644
--- a/pom.xml
+++ b/pom.xml
@@ -51,7 +51,7 @@ limitations under the License.
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<top.dir>${project.basedir}</top.dir>
<version.major>1</version.major>
- <version.minor>14</version.minor>
+ <version.minor>15</version.minor>
<!-- Don't fail the build for vulnerabilities below this threshold. -->
<failBuildOnCVSS>8</failBuildOnCVSS>
@@ -77,8 +77,8 @@ limitations under the License.
<git-commit-id-plugin.version>2.1.9</git-commit-id-plugin.version>
<!-- We support (and test against) Guava versions between
- 14.0.1 (Hive) and 21.0 (most recent; supports only JDK8 and up).
- Override with your preferred version and it should work. -->
+ 14.0.1 (Hive) and 23.0. Default is 19.0 due to Cassandra adapter.
+ Some versions of Guava do not support JDK 7. -->
<guava.version>19.0</guava.version>
<joda.version>2.8.1</joda.version>
<h2.version>1.4.185</h2.version>
http://git-wip-us.apache.org/repos/asf/calcite/blob/9bda17ab/site/_docs/history.md
----------------------------------------------------------------------
diff --git a/site/_docs/history.md b/site/_docs/history.md
index dad23c3..2bc646c 100644
--- a/site/_docs/history.md
+++ b/site/_docs/history.md
@@ -28,16 +28,179 @@ For a full list of releases, see
Downloads are available on the
[downloads page]({{ site.baseurl }}/downloads/).
-## <a href="https://github.com/apache/calcite/releases/tag/calcite-1.15.0">1.15.0</a> / under development
+## <a href="https://github.com/apache/calcite/releases/tag/calcite-1.15.0">1.15.0</a> / 2017-12-04
{: #v1-15-0}
Compatibility: This release is tested
on Linux, macOS, Microsoft Windows;
using Oracle JDK 7, 8, 9, 10;
-Guava versions 14.0 to 21.0;
+Guava versions 14.0 to 23.0;
Druid version 0.10.0;
other software versions as specified in `pom.xml`.
+This release comes three months after 1.14.0. It includes than 44 resolved
+issues, mostly modest improvements and bug-fixes, but here are some
+features of note:
+
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-707">CALCITE-707</a>]
+ adds *DDL commands* to Calcite for the first time, including *CREATE and DROP
+ commands for schemas, tables, foreign tables, views, and materialized views*.
+ We know that DDL syntax is a matter of taste, so we added the extensions to a
+ *new "server" module*, leaving the "core" parser unchanged;
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2061">CALCITE-2061</a>]
+ allows *dynamic parameters* in the `LIMIT` and `OFFSET` and clauses;
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1913">CALCITE-1913</a>]
+ refactors the JDBC adapter to make it easier to *plug in a new SQL dialect*;
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1616">CALCITE-1616</a>]
+ adds a *data profiler*, an algorithm that efficiently analyzes large data sets
+ with many columns, estimating the number of distinct values in columns and
+ groups of columns, and finding functional dependencies. The improved
+ statistics are used by the algorithm that designs summary tables for a
+ lattice.
+
+Calcite now supports JDK 10 and Guava 23.0. (It continues to run on
+JDK 7, 8 and 9, and on versions of Guava as early as 14.0.1. The default
+version of Guava remains 19.0, the latest version compatible with JDK 7
+and the Cassandra adapter's dependencies.)
+
+This is the <a href="https://issues.apache.org/jira/browse/CALCITE-2027">last
+release that will support JDK 1.7</a>.
+
+#### New features
+
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1616">CALCITE-1616</a>]
+ Data profiler
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2061">CALCITE-2061</a>]
+ Dynamic parameters in `OFFSET`, `FETCH` and `LIMIT` clauses (Enrico Olivelli)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-707">CALCITE-707</a>]
+ Add "server" module, with built-in support for simple DDL statements
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2041">CALCITE-2041</a>]
+ When `ReduceExpressionRule` simplifies a nullable expression, allow the result
+ to change type to `NOT NULL`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2058">CALCITE-2058</a>]
+ Support JDK 10
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2016">CALCITE-2016</a>]
+ Make item + dot operators work for array (e.g. `SELECT orders[5].color FROM t`
+ (Shuyi Chen)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2035">CALCITE-2035</a>]
+ Allow approximate aggregate functions, and add `APPROX_COUNT_DISTINCT`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1990">CALCITE-1990</a>]
+ Make `RelDistribution` extend `RelMultipleTrait` (LeoWangLZ)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1867">CALCITE-1867</a>]
+ Allow user-defined grouped window functions (Timo Walther)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2031">CALCITE-2031</a>]
+ `ST_X` and `ST_Y` GIS functions
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1913">CALCITE-1913</a>]
+ Pluggable SQL dialects for JDBC adapter: Replace usages of `DatabaseProduct`
+ with dialect methods, and introduce a configurable `SqlDialectFactory`
+ (Christian Beikov)
+
+#### Bug-fixes, API changes and minor enhancements
+
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2005">CALCITE-2005</a>]
+ Test failures on Windows
+* Add `ImmutableBitSet.set(int, boolean)`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2054">CALCITE-2054</a>]
+ Error while validating `UPDATE` with dynamic parameter in `SET` clause (Enrico
+ Olivelli)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2055">CALCITE-2055</a>]
+ Check year, month, day, hour, minute and second ranges for date and time
+ literals (Volodymyr Vysotskyi)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2051">CALCITE-2051</a>]
+ Rules using `Aggregate` might check for simple grouping sets incorrectly
+* Add parameter to `SqlCallBinding.getOperandLiteralValue(int)` to specify
+ desired value type
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2039">CALCITE-2039</a>]
+ `AssertionError` when pushing project to `ProjectableFilterableTable`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2050">CALCITE-2050</a>]
+ Exception when pushing post-aggregates into Druid
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2043">CALCITE-2043</a>]
+ Use custom `RelBuilder` implementation in some rules (Volodymyr Vysotskyi)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2044">CALCITE-2044</a>]
+ Tweak cost of `BindableTableScan` to make sure `Project` is pushed through
+ `Aggregate` (Luis Fernando Kauer)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2012">CALCITE-2012</a>]
+ Replace `LocalInterval` by `Interval` in Druid adapter
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1984">CALCITE-1984</a>]
+ Incorrect rewriting with materialized views using `DISTINCT` in aggregate
+ functions
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1876">CALCITE-1876</a>]
+ In CSV example, tweak cost to ensure that `Project` is pushed through
+ `Aggregate` (Luis Fernando Kauer)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2037">CALCITE-2037</a>]
+ Modify parser template to allow sub-projects to override `SqlStmt` syntax
+ (Roman Kulyk)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2019">CALCITE-2019</a>]
+ Druid's time column is NOT NULL, so push `COUNT(druid_time_column)` as if it
+ were `COUNT(*)`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2034">CALCITE-2034</a>]
+ `FileReaderTest` fails with path containing spaces (Marc Prud'hommeaux)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2028">CALCITE-2028</a>]
+ `SubQueryRemoveRule` should create `Join`, not `Correlate`, for un-correlated
+ sub-queries (Liao Xintao)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2029">CALCITE-2029</a>]
+ Query with `IS DISTINCT FROM` condition in `WHERE` or `JOIN` clause fails with
+ `AssertionError`, "Cast for just nullability not allowed" (Volodymyr Vysotskyi)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1998">CALCITE-1998</a>]
+ Hive `ORDER BY` null values (Abbas Gadhia)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2014">CALCITE-2014</a>]
+ Look for `saffron.properties` file in classpath rather than in working
+ directory (Arina Ielchiieva)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1910">CALCITE-1910</a>]
+ `NullPointerException` on filtered aggregators using `IN`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1762">CALCITE-1762</a>]
+ Upgrade to Spark 2.X
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2008">CALCITE-2008</a>]
+ Fix braces in `TRIM` signature
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2007">CALCITE-2007</a>]
+ Fix `RexSimplify` behavior when literals come first
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2006">CALCITE-2006</a>]
+ Push `IS NULL` and `IS NOT NULL` predicates to Druid
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1996">CALCITE-1996</a>]
+ In JDBC adapter, generate correct `VALUES` syntax
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2001">CALCITE-2001</a>]
+ JDBC driver should return "SYSTEM TABLE" rather than "SYSTEM_TABLE"
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1995">CALCITE-1995</a>]
+ Remove terms from `Filter` if predicates indicate they are always true or
+ false
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1983">CALCITE-1983</a>]
+ Push `=`and `<>` operations with numeric cast on dimensions to Druid
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1960">CALCITE-1960</a>]
+ `RelMdPredicates.getPredicates` is slow if there are many equivalent columns
+ (Rheet Wong)
+* Make Travis CI builds work (Christian Beikov)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1987">CALCITE-1987</a>]
+ Implement `EXTRACT` for JDBC (Pavel Gubin)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1988">CALCITE-1988</a>]
+ Various code quality issues
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1986">CALCITE-1986</a>]
+ Add `RelBuilder.match` and methods for building patterns (Dian Fu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1980">CALCITE-1980</a>]
+ `RelBuilder.aggregate` should rename underlying fields if `groupKey` contains
+ an alias
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1946">CALCITE-1946</a>]
+ JDBC adapter should generate sub-`SELECT` if dialect does not support nested
+ aggregate functions (Pawel Ruchaj)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1976">CALCITE-1976</a>]
+ linq4j: support List and Map literals
+
+#### Web site and documentation
+
+* Update PMC Chair
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2052">CALCITE-2052</a>]
+ Remove SQL code style from materialized views documentation
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2036">CALCITE-2036</a>]
+ Fix "next" link in [powered_by.html](powered_by.html)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2038">CALCITE-2038</a>]
+ Fix incomplete sentence in tutorial
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-2021">CALCITE-2021</a>]
+ Document the interfaces that you can use to extend Calcite
+* Javadoc fixes (Alexey Roytman)
+* Add two talks, and committer Christian Beikov
+* Fix URL in `FileSchemaFactory` javadoc (Marc Prud'hommeaux)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1989">CALCITE-1989</a>]
+ Check dependencies for vulnerabilities each release
+
## <a href="https://github.com/apache/calcite/releases/tag/calcite-1.14.0">1.14.0</a> / 2017-09-06
{: #v1-14-0}
http://git-wip-us.apache.org/repos/asf/calcite/blob/9bda17ab/site/_docs/howto.md
----------------------------------------------------------------------
diff --git a/site/_docs/howto.md b/site/_docs/howto.md
index 26744dd..dce866d 100644
--- a/site/_docs/howto.md
+++ b/site/_docs/howto.md
@@ -31,16 +31,16 @@ adapters.
## Building from a source distribution
-Prerequisites are maven (3.2.1 or later)
-and Java (JDK 7, 8 or 9) on your path.
+Prerequisites are maven (3.5.2 or later)
+and Java (JDK 7, 8, 9 or 10) on your path.
Unpack the source distribution `.tar.gz` or `.zip` file,
`cd` to the root directory of the unpacked source,
then build using maven:
{% highlight bash %}
-$ tar xvfz calcite-1.14.0-source.tar.gz
-$ cd calcite-1.14.0
+$ tar xvfz calcite-1.15.0-source.tar.gz
+$ cd calcite-1.15.0
$ mvn install
{% endhighlight %}
@@ -49,8 +49,8 @@ tests.
## Building from git
-Prerequisites are git, maven (3.2.1 or later)
-and Java (JDK 7 or later, 8 preferred) on your path.
+Prerequisites are git, maven (3.5.2 or later)
+and Java (JDK 7 or later, 9 preferred) on your path.
Create a local copy of the github repository,
`cd` to its root directory,
@@ -408,7 +408,7 @@ ball because that would be
Before you start:
* Set up signing keys as described above.
-* Make sure you are using JDK 8 (not 7 or 9).
+* Make sure you are using JDK 9 (not 7, 8 or 10).
* Make sure build and tests succeed with `-Dcalcite.test.db=hsqldb` (the default)
{% highlight bash %}
http://git-wip-us.apache.org/repos/asf/calcite/blob/9bda17ab/site/_docs/index.md
----------------------------------------------------------------------
diff --git a/site/_docs/index.md b/site/_docs/index.md
index c1a5d71..a26ea60 100644
--- a/site/_docs/index.md
+++ b/site/_docs/index.md
@@ -45,7 +45,8 @@ public static class HrSchema {
Class.forName("org.apache.calcite.jdbc.Driver");
Properties info = new Properties();
info.setProperty("lex", "JAVA");
-Connection connection = DriverManager.getConnection("jdbc:calcite:", info);
+Connection connection =
+ DriverManager.getConnection("jdbc:calcite:", info);
CalciteConnection calciteConnection =
connection.unwrap(CalciteConnection.class);
SchemaPlus rootSchema = calciteConnection.getRootSchema();
http://git-wip-us.apache.org/repos/asf/calcite/blob/9bda17ab/site/develop/index.md
----------------------------------------------------------------------
diff --git a/site/develop/index.md b/site/develop/index.md
index 4153e82..4f8582d 100644
--- a/site/develop/index.md
+++ b/site/develop/index.md
@@ -40,8 +40,8 @@ user-friendly.
## Download source, build, and run tests
-Prerequisites are git, maven (3.2.1 or later) and Java (JDK 7 or
-later, 8 preferred) on your path.
+Prerequisites are git, maven (3.5.2 or later)
+and Java (JDK 7 or later, 9 preferred) on your path.
Create a local copy of the git repository, `cd` to its root directory,
then build using maven: