Release notes Change versions from 1.7 to 1.8.
Tell apache-rat to ignore a Druid JSON file, because JSON files cannot have headers. Project: http://git-wip-us.apache.org/repos/asf/calcite/repo Commit: http://git-wip-us.apache.org/repos/asf/calcite/commit/4987d540 Tree: http://git-wip-us.apache.org/repos/asf/calcite/tree/4987d540 Diff: http://git-wip-us.apache.org/repos/asf/calcite/diff/4987d540 Branch: refs/heads/master Commit: 4987d54061783ee5c707a60140b3e367baccdd49 Parents: d18da01 Author: Julian Hyde <[email protected]> Authored: Tue May 17 15:24:27 2016 -0700 Committer: Julian Hyde <[email protected]> Committed: Wed Jun 8 17:36:58 2016 -0700 ---------------------------------------------------------------------- README | 2 +- pom.xml | 3 +- site/_docs/adapter.md | 2 +- site/_docs/history.md | 169 +++++++++++++++++++++++++++++++++++++++++++ site/_docs/howto.md | 6 +- site/community/index.md | 13 ++-- 6 files changed, 182 insertions(+), 13 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/calcite/blob/4987d540/README ---------------------------------------------------------------------- diff --git a/README b/README index f07e842..b21e547 100644 --- a/README +++ b/README @@ -1,4 +1,4 @@ -Apache Calcite release 1.7.0 +Apache Calcite release 1.8.0 This is a source or binary distribution of Apache Calcite. http://git-wip-us.apache.org/repos/asf/calcite/blob/4987d540/pom.xml ---------------------------------------------------------------------- diff --git a/pom.xml b/pom.xml index 0bcd67c..ff10873 100644 --- a/pom.xml +++ b/pom.xml @@ -49,7 +49,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>7</version.minor> + <version.minor>8</version.minor> <!-- This list is in alphabetical order. --> <airlift-tpch.version>0.1</airlift-tpch.version> @@ -438,6 +438,7 @@ limitations under the License. <exclude>src/main/resources/META-INF/services/java.sql.Driver</exclude> <exclude>**/src/test/resources/**/*.csv</exclude> <exclude>**/src/test/resources/bug/archers.json</exclude> + <exclude>**/src/test/resources/foodmart-schema.spec</exclude> <!-- Exclude all of avatica, RAT is run in Avatica --> <exclude>avatica/**</exclude> http://git-wip-us.apache.org/repos/asf/calcite/blob/4987d540/site/_docs/adapter.md ---------------------------------------------------------------------- diff --git a/site/_docs/adapter.md b/site/_docs/adapter.md index 10cb8f8..987538f 100644 --- a/site/_docs/adapter.md +++ b/site/_docs/adapter.md @@ -64,7 +64,7 @@ where `property`, `property2` are properties as described below. as implemented by Avatica's <a href="{{ site.apiRoot }}/org/apache/calcite/avatica/ConnectStringParser.html">ConnectStringParser</a>.) -JDBC connect string parameters +## JDBC connect string parameters | Property | Description | |:-------- |:------------| http://git-wip-us.apache.org/repos/asf/calcite/blob/4987d540/site/_docs/history.md ---------------------------------------------------------------------- diff --git a/site/_docs/history.md b/site/_docs/history.md index fcd20c2..7aada37 100644 --- a/site/_docs/history.md +++ b/site/_docs/history.md @@ -28,6 +28,175 @@ 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.8.0">1.8.0</a> / 2016-06-13 +{: #v1-8-0} + +This release adds adapters for +<a href="https://issues.apache.org/jira/browse/CALCITE-1253">Elasticsearch</a> and +<a href="https://issues.apache.org/jira/browse/CALCITE-1121">Druid</a>. +It is also now easier to +<a href="https://issues.apache.org/jira/browse/CALCITE-1259">make a JDBC connection based upon a single adapter</a>. + +There are several new SQL features: `UNNEST` with +<a href="https://issues.apache.org/jira/browse/CALCITE-855">multiple arguments</a>, +<a href="https://issues.apache.org/jira/browse/CALCITE-1250">MAP arguments</a> +and <a href="https://issues.apache.org/jira/browse/CALCITE-1225">with a JOIN</a>; +a <a href="https://issues.apache.org/jira/browse/CALCITE-1168">DESCRIBE</a> statement; +and a <a href="https://issues.apache.org/jira/browse/CALCITE-1115">TRANSLATE</a> +function like the one in Oracle and PostgreSQL. +We also added support for +<a href="https://issues.apache.org/jira/browse/CALCITE-1120">SELECT without FROM</a> +(equivalent to the `VALUES` clause, and widely used in MySQL and PostgreSQL), +and added a +[conformance]({{ site.baseurl }}/docs/adapter.html#jdbc-connect-string-parameters) +parameter to allow you to selectively enable this and other SQL features. + +And a couple of dozen bug-fixes and enhancements to planner rules and APIs. + +Compatibility: This release is tested +on Linux, Mac OS X, Microsoft Windows; +using Oracle JDK 1.7, 1.8; +Guava versions 12.0.1 to 19.0; +other software versions as specified in `pom.xml`. + +New features + +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1177">CALCITE-1177</a>] + Extend list of supported time units in `EXTRACT`, `CEIL` and `FLOOR` functions + (Venki Korukanti) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1259">CALCITE-1259</a>] + Allow connecting to a single schema without writing a model +* [<a href="https://issues.apache.org/jira/browse/CALCITE-750">CALCITE-750</a>] + Support aggregates within windowed aggregates (Gautam Parai) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1250">CALCITE-1250</a>] + `UNNEST` applied to `MAP` data type (Johannes Schulte) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1253">CALCITE-1253</a>] + Elasticsearch adapter (Subhobrata Dey) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1228">CALCITE-1228</a>] + Bind parameters in `INSERT` +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1120">CALCITE-1120</a>] + `SELECT` without `FROM` (Jimmy Xiang) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-855">CALCITE-855</a>] + `UNNEST` with multiple arguments +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1225">CALCITE-1225</a>] + `UNNEST` with `JOIN` +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1115">CALCITE-1115</a>] + Add `TRANSLATE` function with 3 parameters, like the one in Oracle (Javanshir + Yelchiyev) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1168">CALCITE-1168</a>] + Add `DESCRIBE` statement (Arina Ielchiieva) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1121">CALCITE-1121</a>] + Druid adapter + * [<a href="https://issues.apache.org/jira/browse/CALCITE-1276">CALCITE-1276</a>] + In Druid adapter, deduce tables and columns if not specified +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1207">CALCITE-1207</a>] + Allow numeric connection properties, and 'K', 'M', 'G' suffixes + +Planner rules + +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1235">CALCITE-1235</a>] + Fully push down `LIMIT` + `OFFSET` in Cassandra +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1216">CALCITE-1216</a>] + Rule to convert `Filter`-on-`Scan` to materialized view (Amogh Margoor) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1200">CALCITE-1200</a>] + Extend `RelOptUtil.splitJoinCondition` to handle `IS NOT DISTINCT FROM` + (Venki Korukanti) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1211">CALCITE-1211</a>] + Allow free use of `CassandraSort` for `LIMIT` +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1210">CALCITE-1210</a>] + Allow UUID filtering in Cassandra +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1182">CALCITE-1182</a>] + Add `ProjectRemoveRule` to pre-processing program of materialization + substitution + +Bug fixes, API changes and minor enhancements + +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1281">CALCITE-1281</a>] + Druid adapter wrongly returns all numeric values as `int` or `float` +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1279">CALCITE-1279</a>] + Druid "select" query gives `ClassCastException` +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1277">CALCITE-1277</a>] + Rat fails on source distribution due to `git.properties` +* Update KEYS +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1252">CALCITE-1252</a>] + Handle `ANY` type in `RexBuilder.ensureType` and `TypeFactory.leastRestrictive` + (Mehand Baid, Minji Kim) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1151">CALCITE-1151</a>] + Fix `SqlSetOption` to correctly handle `SqlOperator.createCall` + (Sudheesh Katkam, Minji Kim) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1106">CALCITE-1106</a>] + Expose constructor for `ProjectJoinTransposeRule` (Minji Kim) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1107">CALCITE-1107</a>] + Make `SqlSumEmptyIsZeroAggFunction` constructor public (Minji Kim) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1269">CALCITE-1269</a>] + Replace `IntList` with Guava `Ints` class +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1239">CALCITE-1239</a>] + Upgrade to avatica-1.8.0 +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1266">CALCITE-1266</a>] + `RelBuilder.field` gets offsets wrong +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1264">CALCITE-1264</a>] + `Litmus` argument interpolation (Chris Baynes) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1245">CALCITE-1245</a>] + Allow `RelBuilder.scan` to take qualified table name (Chris Baynes) +* Move code from `Enumerables` to `EnumerableDefaults` +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1246">CALCITE-1246</a>] + Cleanup duplicate variables in `JoinPushThroughJoinRule` (Yi Xinglu) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1241">CALCITE-1241</a>] + Add a Freemarker variable for adding non reserved keyword list to `Parser.jj` + template (Venki Korukanti) + * Create a table in `SqlParserTest` of reserved keywords from various versions + of the SQL standard +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1150">CALCITE-1150</a>] + Add dynamic record type and dynamic star for schema-on-read table +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1238">CALCITE-1238</a>] + Unparsing a query with `LIMIT` but no `ORDER BY` gives invalid SQL (Emmanuel + Bastien) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1230">CALCITE-1230</a>] + Add SQLSTATE reference data as `enum SqlState` in Avatica, and + deprecate `SqlStateCodes` in Calcite +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1199">CALCITE-1199</a>] + Incorrect trimming of `CHAR` when performing cast to `VARCHAR` +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1219">CALCITE-1219</a>] + Add method `SqlOperatorBinding.isOperandLiteral()` (Hsuan-Yi Chu) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1222">CALCITE-1222</a>] + `DatabaseMetaData.getColumnLabel` returns null when query has `ORDER BY` +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1215">CALCITE-1215</a>] + Fix missing override in `CassandraTable` +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1212">CALCITE-1212</a>] + Fix NPE on some Cassandra projects +* Remove trailing spaces from all source files +* Move HTTP utilities from Splunk adapter to core +* Test case for + [<a href="https://issues.apache.org/jira/browse/PHOENIX-2767">PHOENIX-2767</a>], + non-constant in `IN` +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1166">CALCITE-1166</a>] + Disallow sub-classes of `RelOptRuleOperand` +* Remove all calls to deprecated methods +* Add class `ConsList` +* More of [<a href="https://issues.apache.org/jira/browse/CALCITE-999">CALCITE-999</a>] + Clean up maven POM files +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1204">CALCITE-1204</a>] + Fix invalid Javadoc and suppress checkstyle "errors" +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1170">CALCITE-1170</a>] + Allow `SqlSetOperator` to be overridden, as a regular `SqlOperator` can + (Hsuan-Yi Chu) +* [<a href="https://issues.apache.org/jira/browse/CALCITE-746">CALCITE-746</a>] + Allow apache-rat to be run outside of release process + +Web site and documentation + +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1273">CALCITE-1273</a>] + Following + [<a href="https://issues.apache.org/jira/browse/CALCITE-306">CALCITE-306</a>], + update references to `EnumerableTableAccessRel` to `EnumerableTableScan` +* Fix typo in SQL (Yi Xinglu) +* Site: add committer, and post slides/video from Polyalgebra talk +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1203">CALCITE-1203</a>] + Update to github-pages-67 +* [<a href="https://issues.apache.org/jira/browse/CALCITE-1202">CALCITE-1202</a>] + Lock version of Jekyll for bundler +* Site: add upcoming talks, and fix link to Apache phonebook + ## <a href="https://github.com/apache/calcite/releases/tag/calcite-1.7.0">1.7.0</a> / 2016-03-22 {: #v1-7-0} http://git-wip-us.apache.org/repos/asf/calcite/blob/4987d540/site/_docs/howto.md ---------------------------------------------------------------------- diff --git a/site/_docs/howto.md b/site/_docs/howto.md index 723b39c..b31d985 100644 --- a/site/_docs/howto.md +++ b/site/_docs/howto.md @@ -39,8 +39,8 @@ Unpack the source distribution `.tar.gz` or `.zip` file, then build using maven: {% highlight bash %} -$ tar xvfz calcite-1.7.0-source.tar.gz -$ cd calcite-1.7.0 +$ tar xvfz calcite-1.8.0-source.tar.gz +$ cd calcite-1.8.0 $ mvn install {% endhighlight %} @@ -113,7 +113,7 @@ environment, as follows. ## Running integration tests For testing Calcite's external adapters, a test virtual machine should be used. -The VM includes H2, HSQLDB, MySQL, MongoDB, and PostgreSQL. +The VM includes Cassandra, Druid, H2, HSQLDB, MySQL, MongoDB, and PostgreSQL. Test VM requires 5GiB of disk space and it takes 30 minutes to build. http://git-wip-us.apache.org/repos/asf/calcite/blob/4987d540/site/community/index.md ---------------------------------------------------------------------- diff --git a/site/community/index.md b/site/community/index.md index 7e8bec0..bfbbd96 100644 --- a/site/community/index.md +++ b/site/community/index.md @@ -26,8 +26,6 @@ limitations under the License. # Upcoming talks -* 2016/05/10 <a href="http://events.linuxfoundation.org/events/apache-big-data-north-america/program/schedule">ApacheCon Big Data North America</a>, Vancouver -* 2016/05/24 <a href="http://www-conf.slac.stanford.edu/xldb2016/Program.asp">XLDB</a>, Palo Alto * 2016/06/29 <a href="http://hadoopsummit.org/san-jose/agenda/">Hadoop Summit</a>, San Jose # Project Members @@ -39,7 +37,7 @@ Name (Apache ID) | Github | Org | Role # Mailing Lists -There are several development mailing lists for Calcite: +There are several mailing lists for Calcite: * [[email protected]](mailto:[email protected]) - Development discussions [[archive](https://mail-archives.apache.org/mod_mbox/calcite-dev/)] @@ -49,8 +47,8 @@ There are several development mailing lists for Calcite: [[archive](https://mail-archives.apache.org/mod_mbox/calcite-commits/)] You can subscribe to the lists by sending email to -*list*[email protected] and unsubscribe by sending email to -*list*[email protected]. +*{list}*[email protected] and unsubscribe by sending email to +*{list}*[email protected] (where *{list}* is either "dev", "issues", or "commits"). # Help @@ -66,9 +64,9 @@ Need help with Calcite? Try these resources: * **Bug Reports**. Please file any issues you encounter or fixes you'd like on the [Calcite Jira](https://issues.apache.org/jira/browse/CALCITE). We welcome - patches! + patches and pull-requests! * **StackOverflow**. - [StackOverflow](http://stackoverflow.com) is a wonderful resource for + [StackOverflow](http://stackoverflow.com/questions/tagged/calcite) is a wonderful resource for any developer. Take a look over there to see if someone has answered your question. * **Browse the code**. @@ -122,6 +120,7 @@ As Hadoop Summit, Dublin, 2016 ## More talks +* <a href="https://github.com/julianhyde/share/blob/master/slides/calcite-streaming-sql-xldb-2016.pdf?raw=true">Streaming SQL</a> (XLDB, Menlo Park, 2016) * <a href="https://github.com/julianhyde/share/blob/master/slides/hive-cbo-seattle-2014.pdf?raw=true">Cost-based optimization in Hive 0.14</a> (Seattle, 2014) * <a href="https://github.com/julianhyde/share/blob/master/slides/dmmq-summit-2014.pdf?raw=true">Discardable, in-memory materialized query for Hadoop</a> (<a href="https://www.youtube.com/watch?v=CziGOa8GXqI">video</a>) (Hadoop Summit, 2014) * <a href="https://github.com/julianhyde/share/blob/master/slides/hive-cbo-summit-2014.pdf?raw=true">Cost-based optimization in Hive</a> (<a href="https://www.youtube.com/watch?v=vpG5noIbEFs">video</a>) (Hadoop Summit, 2014)
