Author: jcamacho
Date: Mon Mar 19 15:59:20 2018
New Revision: 1827211
URL: http://svn.apache.org/viewvc?rev=1827211&view=rev
Log:
news release 1.16.0
Added:
calcite/site/docs/geode_adapter.html
calcite/site/news/2018/
calcite/site/news/2018/03/
calcite/site/news/2018/03/19/
calcite/site/news/2018/03/19/release-1.16.0/
calcite/site/news/2018/03/19/release-1.16.0/index.html
Modified:
calcite/site/develop/index.html
calcite/site/docs/adapter.html
calcite/site/docs/cassandra_adapter.html
calcite/site/docs/file_adapter.html
calcite/site/docs/history.html
calcite/site/docs/howto.html
calcite/site/docs/index.html
calcite/site/docs/lattice.html
calcite/site/docs/pig_adapter.html
calcite/site/docs/powered_by.html
calcite/site/docs/reference.html
calcite/site/docs/spatial.html
calcite/site/docs/stream.html
calcite/site/docs/tutorial.html
calcite/site/downloads/index.html
calcite/site/news/2014/06/27/release-0.8.0-incubating/index.html
calcite/site/news/2014/08/19/release-0.9.0-incubating/index.html
calcite/site/news/2014/10/02/release-0.9.1-incubating/index.html
calcite/site/news/2014/11/05/release-0.9.2-incubating/index.html
calcite/site/news/2015/01/31/release-1.0.0-incubating/index.html
calcite/site/news/2015/03/13/release-1.1.0-incubating/index.html
calcite/site/news/2015/04/07/release-1.2.0-incubating/index.html
calcite/site/news/2015/04/24/new-committers/index.html
calcite/site/news/2015/05/30/release-1.3.0-incubating/index.html
calcite/site/news/2015/06/05/algebra-builder/index.html
calcite/site/news/2015/07/31/xldb-best-lightning-talk/index.html
calcite/site/news/2015/09/02/release-1.4.0-incubating/index.html
calcite/site/news/2015/10/22/calcite-graduates/index.html
calcite/site/news/2015/11/08/new-committers/index.html
calcite/site/news/2015/11/10/release-1.5.0/index.html
calcite/site/news/2016/01/22/release-1.6.0/index.html
calcite/site/news/2016/02/17/elser-pmc/index.html
calcite/site/news/2016/02/17/streaming-sql-talk/index.html
calcite/site/news/2016/03/22/cassandra-adapter/index.html
calcite/site/news/2016/03/22/release-1.7.0/index.html
calcite/site/news/2016/06/13/release-1.8.0/index.html
calcite/site/news/2016/09/22/release-1.9.0/index.html
calcite/site/news/2016/10/12/release-1.10.0/index.html
calcite/site/news/2017/01/09/release-1.11.0/index.html
calcite/site/news/2017/03/24/release-1.12.0/index.html
calcite/site/news/2017/03/31/new-avatica-repository/index.html
calcite/site/news/2017/06/26/release-1.13.0/index.html
calcite/site/news/2017/10/02/release-1.14.0/index.html
calcite/site/news/2017/12/11/release-1.15.0/index.html
calcite/site/news/index.html
calcite/site/news/releases/index.html
Modified: calcite/site/develop/index.html
URL:
http://svn.apache.org/viewvc/calcite/site/develop/index.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/develop/index.html (original)
+++ calcite/site/develop/index.html Mon Mar 19 15:59:20 2018
@@ -111,7 +111,7 @@ user-friendly.</p>
<h2 id="download-source-build-and-run-tests">Download source, build, and run
tests</h2>
<p>Prerequisites are git, maven (3.5.2 or later)
-and Java (JDK 7 or later, 9 preferred) on your path.</p>
+and Java (JDK 8 or later, 9 preferred) on your path.</p>
<p>Create a local copy of the git repository, <code
class="highlighter-rouge">cd</code> to its root directory,
then build using maven:</p>
Modified: calcite/site/docs/adapter.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/adapter.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/docs/adapter.html (original)
+++ calcite/site/docs/adapter.html Mon Mar 19 15:59:20 2018
@@ -118,6 +118,7 @@ presenting the data as tables within a s
and
<a
href="/apidocs/org/apache/calcite/adapter/elasticsearch5/package-summary.html">calcite-elasticsearch5</a>)</li>
<li><a href="file_adapter.html">File adapter</a> (<a
href="/apidocs/org/apache/calcite/adapter/file/package-summary.html">calcite-file</a>)</li>
+ <li><a href="geode_adapter.html">Geode adapter</a> (<a
href="/apidocs/org/apache/calcite/adapter/geode/package-summary.html">calcite-geode</a>)</li>
<li>JDBC adapter (part of <a
href="/apidocs/org/apache/calcite/adapter/jdbc/package-summary.html">calcite-core</a>)</li>
<li>MongoDB adapter (<a
href="/apidocs/org/apache/calcite/adapter/mongodb/package-summary.html">calcite-mongodb</a>)</li>
<li><a href="os_adapter.html">OS adapter</a> (<a
href="/apidocs/org/apache/calcite/adapter/os/package-summary.html">calcite-os</a>)</li>
@@ -522,7 +523,7 @@ compatible with future changes to the gr
quite frequently.</p>
<p>Fortunately, <code class="highlighter-rouge">Parser.jj</code> is actually an
-<a href="http://freemarker.apache.org/">Apache FreeMarker</a>
+<a href="https://freemarker.apache.org/">Apache FreeMarker</a>
template that contains variables that can be substituted.
The parser in <code class="highlighter-rouge">calcite-core</code> instantiates
the template with default values of
the variables, typically empty, but you can override.
Modified: calcite/site/docs/cassandra_adapter.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/cassandra_adapter.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/docs/cassandra_adapter.html (original)
+++ calcite/site/docs/cassandra_adapter.html Mon Mar 19 15:59:20 2018
@@ -115,7 +115,7 @@ of the Cassandra adapter. Note that whil
definitions of
<a href="/docs/model.html#materialization">materializations</a>,
the adapter will attempt to automatically populate any materialized views
-<a
href="http://www.datastax.com/dev/blog/new-in-cassandra-3-0-materialized-views">defined
in Cassandra</a>.</p>
+<a
href="https://www.datastax.com/dev/blog/new-in-cassandra-3-0-materialized-views">defined
in Cassandra</a>.</p>
<p>A basic example of a model file is given below:</p>
Modified: calcite/site/docs/file_adapter.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/file_adapter.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/docs/file_adapter.html (original)
+++ calcite/site/docs/file_adapter.html Mon Mar 19 15:59:20 2018
@@ -112,8 +112,8 @@ and can also read files over various pro
<p>For example if you define:</p>
<ul>
- <li>States -
http://en.wikipedia.org/wiki/List_of_states_and_territories_of_the_United_States</li>
- <li>Cities -
http://en.wikipedia.org/wiki/List_of_United_States_cities_by_population</li>
+ <li>States -
https://en.wikipedia.org/wiki/List_of_states_and_territories_of_the_United_States</li>
+ <li>Cities -
https://en.wikipedia.org/wiki/List_of_United_States_cities_by_population</li>
</ul>
<p>You can then write a query like:</p>
@@ -242,14 +242,14 @@ file adapter helps us locate and parse d
<figure class="highlight"><pre><code class="language-json"
data-lang="json"><span class="p">{</span><span class="w">
</span><span class="err">tableName:</span><span class="w"> </span><span
class="nt">"RawCities"</span><span class="err">,</span><span class="w">
- </span><span class="err">url</span><span class="p">:</span><span class="w">
</span><span
class="s2">"http://en.wikipedia.org/wiki/List_of_United_States_cities_by_population"</span><span
class="w">
+ </span><span class="err">url</span><span class="p">:</span><span class="w">
</span><span
class="s2">"https://en.wikipedia.org/wiki/List_of_United_States_cities_by_population"</span><span
class="w">
</span><span class="p">}</span></code></pre></figure>
<p>And subsequently refined for better usability / querying:</p>
<figure class="highlight"><pre><code class="language-json"
data-lang="json"><span class="p">{</span><span class="w">
</span><span class="err">tableName:</span><span class="w"> </span><span
class="nt">"Cities"</span><span class="err">,</span><span class="w">
- </span><span class="err">url</span><span class="p">:</span><span class="w">
</span><span
class="s2">"http://en.wikipedia.org/wiki/List_of_United_States_cities_by_population"</span><span
class="p">,</span><span class="w">
+ </span><span class="err">url</span><span class="p">:</span><span class="w">
</span><span
class="s2">"https://en.wikipedia.org/wiki/List_of_United_States_cities_by_population"</span><span
class="p">,</span><span class="w">
</span><span class="err">path</span><span class="p">:</span><span class="w">
</span><span class="s2">"#mw-content-text >
table.wikitable.sortable"</span><span class="p">,</span><span class="w">
</span><span class="err">index</span><span class="p">:</span><span
class="w"> </span><span class="mi">0</span><span class="p">,</span><span
class="w">
</span><span class="err">fieldDefs</span><span class="p">:</span><span
class="w"> </span><span class="p">[</span><span class="w">
@@ -275,9 +275,9 @@ file adapter helps us locate and parse d
<p>Note that <code class="highlighter-rouge">Cities</code> is easier to
consume than <code class="highlighter-rouge">RawCities</code>,
because its table definition has a field list.</p>
-<p>The file adapter uses <a href="http://jsoup.org/">Jsoup</a> for HTML DOM
+<p>The file adapter uses <a href="https://jsoup.org/">Jsoup</a> for HTML DOM
navigation; selectors for both tables and fields follow the
-<a href="http://jsoup.org/cookbook/extracting-data/selector-syntax">Jsoup
selector specification</a>.</p>
+<a href="https://jsoup.org/cookbook/extracting-data/selector-syntax">Jsoup
selector specification</a>.</p>
<p>Field definitions may be used to rename or skip source fields, to
select and condition the cell contents and to set a data type.</p>
@@ -289,7 +289,7 @@ within the selected element, match withi
choose a data type for the resulting database column. Processing
steps are applied in the order described and replace and match
patterns are based on
-<a
href="http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html">Java
regular expressions</a>.</p>
+<a
href="https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html">Java
regular expressions</a>.</p>
<h3 id="further-examples">Further examples</h3>
Added: calcite/site/docs/geode_adapter.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/geode_adapter.html?rev=1827211&view=auto
==============================================================================
--- calcite/site/docs/geode_adapter.html (added)
+++ calcite/site/docs/geode_adapter.html Mon Mar 19 15:59:20 2018
@@ -0,0 +1,611 @@
+<!DOCTYPE HTML>
+<html lang="en-US">
+<head>
+ <meta charset="UTF-8">
+ <title>Apache Geode adapter</title>
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta name="generator" content="Jekyll v3.5.1">
+ <link rel="stylesheet"
href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic,900">
+ <link rel="stylesheet" href="/css/screen.css">
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
+ <!--[if lt IE 9]>
+ <script src="/js/html5shiv.min.js"></script>
+ <script src="/js/respond.min.js"></script>
+ <![endif]-->
+</head>
+
+
+<body class="wrap">
+ <header role="banner">
+ <nav class="mobile-nav show-on-mobiles">
+ <ul>
+ <li class="">
+ <a href="/">Home</a>
+ </li>
+ <li class="">
+ <a href="/downloads/">Download</a>
+ </li>
+ <li class="">
+ <a href="/community/">Community</a>
+ </li>
+ <li class="">
+ <a href="/develop/">Develop</a>
+ </li>
+ <li class="">
+ <a href="/news/">News</a>
+ </li>
+ <li class="current">
+ <a href="/docs/">Docs</a>
+ </li>
+</ul>
+
+ </nav>
+ <div class="grid">
+ <div class="unit one-third center-on-mobiles">
+ <h1>
+ <a href="/">
+ <span class="sr-only">Apache Calcite</span>
+ <img src="/img/logo.png" width="226" height="140" alt="Calcite Logo">
+ </a>
+ </h1>
+ </div>
+ <nav class="main-nav unit two-thirds hide-on-mobiles">
+ <ul>
+ <li class="">
+ <a href="/">Home</a>
+ </li>
+ <li class="">
+ <a href="/downloads/">Download</a>
+ </li>
+ <li class="">
+ <a href="/community/">Community</a>
+ </li>
+ <li class="">
+ <a href="/develop/">Develop</a>
+ </li>
+ <li class="">
+ <a href="/news/">News</a>
+ </li>
+ <li class="current">
+ <a href="/docs/">Docs</a>
+ </li>
+</ul>
+
+ </nav>
+ </div>
+</header>
+
+
+ <section class="docs">
+ <div class="grid">
+
+ <div class="docs-nav-mobile unit whole show-on-mobiles">
+ <select onchange="if (this.value) window.location.href=this.value">
+ <option value="">Navigate the docsâ¦</option>
+ <optgroup label="Overview">
+ </optgroup>
+ <optgroup label="Advanced">
+ </optgroup>
+ <optgroup label="Avatica">
+ </optgroup>
+ <optgroup label="Reference">
+ </optgroup>
+ <optgroup label="Meta">
+ </optgroup>
+
+ </select>
+</div>
+
+
+ <div class="unit four-fifths">
+ <article>
+ <h1>Apache Geode adapter</h1>
+ <!--
+
+-->
+
+<p>For instructions on downloading and building Calcite, start with the
+<a href="/docs/tutorial.html">tutorial</a>.</p>
+
+<blockquote>
+ <p>Optionally: add <code class="highlighter-rouge">-Puberjdbc</code> to your
maven build to create a single self-contained Geode JDBC adapter jar.</p>
+</blockquote>
+
+<p>Once youâve managed to compile the project, you can return here to
+start querying Apache Geode with Calcite. First, we need a
+<a href="/docs/model.html">model definition</a>.
+The model gives Calcite the necessary parameters to create an instance
+of the Geode adapter. The models can contain definitions of
+<a href="/docs/model.html#materialization">materializations</a>.
+The name of the tables defined in the model definition corresponds to
+<a
href="https://geode.apache.org/docs/guide/12/developing/region_options/chapter_overview.html">Regions</a>
+in Geode.</p>
+
+<p>A basic example of a model file is given below:</p>
+
+<figure class="highlight"><pre><code class="language-json"
data-lang="json"><span class="p">{</span><span class="w">
+ </span><span class="nt">"version"</span><span class="p">:</span><span
class="w"> </span><span class="s2">"1.0"</span><span class="p">,</span><span
class="w">
+ </span><span class="nt">"defaultSchema"</span><span class="p">:</span><span
class="w"> </span><span class="s2">"geode"</span><span class="p">,</span><span
class="w">
+ </span><span class="nt">"schemas"</span><span class="p">:</span><span
class="w"> </span><span class="p">[</span><span class="w">
+ </span><span class="p">{</span><span class="w">
+ </span><span class="nt">"name"</span><span class="p">:</span><span
class="w"> </span><span class="s2">"geode_raw"</span><span
class="p">,</span><span class="w">
+ </span><span class="nt">"type"</span><span class="p">:</span><span
class="w"> </span><span class="s2">"custom"</span><span class="p">,</span><span
class="w">
+ </span><span class="nt">"factory"</span><span class="p">:</span><span
class="w"> </span><span
class="s2">"org.apache.calcite.adapter.geode.rel.GeodeSchemaFactory"</span><span
class="p">,</span><span class="w">
+ </span><span class="nt">"operand"</span><span class="p">:</span><span
class="w"> </span><span class="p">{</span><span class="w">
+ </span><span class="nt">"locatorHost"</span><span
class="p">:</span><span class="w"> </span><span
class="s2">"localhost"</span><span class="p">,</span><span class="w">
+ </span><span class="nt">"locatorPort"</span><span
class="p">:</span><span class="w"> </span><span class="s2">"10334"</span><span
class="p">,</span><span class="w">
+ </span><span class="nt">"regions"</span><span class="p">:</span><span
class="w"> </span><span class="s2">"Zips"</span><span class="p">,</span><span
class="w">
+ </span><span class="nt">"pdxSerializablePackagePath"</span><span
class="p">:</span><span class="w"> </span><span class="s2">".*"</span><span
class="w">
+ </span><span class="p">}</span><span class="w">
+ </span><span class="p">}</span><span class="w">
+ </span><span class="p">]</span><span class="w">
+</span><span class="p">}</span></code></pre></figure>
+
+<p>This adapter is targeted for Geode 1.3.x. The <code
class="highlighter-rouge">regions</code> field allows to list (comma separated)
+all Geode regions to be appear as relational tables.</p>
+
+<p>Assuming this file is stored as <code
class="highlighter-rouge">model.json</code>, you can connect to
+Geode via <a href="https://github.com/julianhyde/sqlline"><code
class="highlighter-rouge">sqlline</code></a> as
+follows:</p>
+
+<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="gp">$ </span>./sqlline
+<span class="gp">sqlline> </span>!connect jdbc:calcite:model<span
class="o">=</span>model.json admin admin</code></pre></figure>
+
+<p><code class="highlighter-rouge">sqlline</code> will now accept SQL queries
which access your Regions using OQL.
+However, youâre not restricted to issuing queries supported by
+<a
href="https://geode.apache.org/docs/guide/latest/developing/querying_basics/chapter_overview.html">OQL</a>.
+Calcite allows you to perform complex operations such as aggregations
+or joins. The adapter will attempt to compile the query into the most
+efficient OQL possible by exploiting filtering, sorting and aggregation
directly
+in Geode where possible.</p>
+
+<p>For example, in the example Bookshop dataset there is a Regions <code
class="highlighter-rouge">BookMaster</code>.</p>
+
+<p>We can issue a SQL query to fetch the annual retail cost ordered by the
cost:</p>
+
+<figure class="highlight"><pre><code class="language-sql"
data-lang="sql"><span class="n">sqlline</span><span class="o">></span> <span
class="k">SELECT</span>
+ <span class="nv">"yearPublished"</span><span class="p">,</span>
+ <span class="k">SUM</span><span class="p">(</span><span
class="nv">"retailCost"</span><span class="p">)</span> <span
class="k">AS</span> <span class="nv">"totalCost"</span>
+ <span class="k">FROM</span> <span class="nv">"TEST"</span><span
class="p">.</span><span class="nv">"BookMaster"</span>
+ <span class="k">GROUP</span> <span class="k">BY</span> <span
class="nv">"yearPublished"</span>
+ <span class="k">ORDER</span> <span class="k">BY</span> <span
class="nv">"totalCost"</span><span class="p">;</span>
+<span class="o">+</span><span
class="c1">---------------+--------------------+</span>
+<span class="o">|</span> <span class="n">yearPublished</span> <span
class="o">|</span> <span class="n">totalCost</span> <span
class="o">|</span>
+<span class="o">+</span><span
class="c1">---------------+--------------------+</span>
+<span class="o">|</span> <span class="mi">1971</span> <span
class="o">|</span> <span class="mi">11</span><span class="p">.</span><span
class="mi">989999771118164</span> <span class="o">|</span>
+<span class="o">|</span> <span class="mi">2011</span> <span
class="o">|</span> <span class="mi">94</span><span class="p">.</span><span
class="mi">9800033569336</span> <span class="o">|</span>
+<span class="o">+</span><span
class="c1">---------------+--------------------+</span></code></pre></figure>
+
+<p>While executing this query, the Geode adapter is able to recognize
+that the projection, grouping and ordering can be performed natively by
Geode.</p>
+
+<p>The final OQL query given to Geode is below:</p>
+
+<figure class="highlight"><pre><code class="language-sql"
data-lang="sql"><span class="k">SELECT</span> <span
class="n">yearPublished</span> <span class="k">AS</span> <span
class="n">yearPublished</span><span class="p">,</span> <span
class="k">SUM</span><span class="p">(</span><span
class="n">retailCost</span><span class="p">)</span> <span class="k">AS</span>
<span class="n">totalCost</span>
+<span class="k">FROM</span> <span class="o">/</span><span
class="n">BookMaster</span>
+<span class="k">GROUP</span> <span class="k">BY</span> <span
class="n">yearPublished</span>
+<span class="k">ORDER</span> <span class="k">BY</span> <span
class="n">totalCost</span> <span class="k">ASC</span></code></pre></figure>
+
+<p>Operations that are not supported in Geode are handled by Calcite itself.
+For example the following JOIN query on the same Bookshop dataset</p>
+
+<figure class="highlight"><pre><code class="language-sql"
data-lang="sql"><span class="n">sqlline</span><span class="o">></span> <span
class="k">SELECT</span>
+ <span class="nv">"i"</span><span class="p">.</span><span
class="nv">"itemNumber"</span><span class="p">,</span>
+ <span class="nv">"m"</span><span class="p">.</span><span
class="nv">"author"</span><span class="p">,</span>
+ <span class="nv">"m"</span><span class="p">.</span><span
class="nv">"retailCost"</span>
+ <span class="k">FROM</span> <span class="nv">"TEST"</span><span
class="p">.</span><span class="nv">"BookInventory"</span> <span
class="nv">"i"</span>
+ <span class="k">JOIN</span> <span class="nv">"TEST"</span><span
class="p">.</span><span class="nv">"BookMaster"</span> <span
class="nv">"m"</span> <span class="k">ON</span> <span
class="nv">"i"</span><span class="p">.</span><span
class="nv">"itemNumber"</span> <span class="o">=</span> <span
class="nv">"m"</span><span class="p">.</span><span
class="nv">"itemNumber"</span>
+ <span class="k">WHERE</span> <span class="nv">"m"</span><span
class="p">.</span><span class="nv">"retailCost"</span> <span
class="o">></span> <span class="mi">20</span><span class="p">;</span>
+<span class="o">+</span><span
class="c1">------------+----------------+------------+</span>
+<span class="o">|</span> <span class="n">itemNumber</span> <span
class="o">|</span> <span class="n">author</span> <span
class="o">|</span> <span class="n">retailCost</span> <span class="o">|</span>
+<span class="o">+</span><span
class="c1">------------+----------------+------------+</span>
+<span class="o">|</span> <span class="mi">123</span> <span
class="o">|</span> <span class="n">Daisy</span> <span class="n">Mae</span>
<span class="n">West</span> <span class="o">|</span> <span
class="mi">34</span><span class="p">.</span><span class="mi">99</span>
<span class="o">|</span>
+<span class="o">+</span><span
class="c1">------------+----------------+------------+</span></code></pre></figure>
+
+<p>Will result into two separate OQL queries:</p>
+
+<figure class="highlight"><pre><code class="language-sql"
data-lang="sql"><span class="k">SELECT</span> <span
class="n">itemNumber</span> <span class="k">AS</span> <span
class="n">itemNumber</span><span class="p">,</span> <span
class="n">retailCost</span> <span class="k">AS</span> <span
class="n">retailCost</span><span class="p">,</span> <span
class="n">author</span> <span class="k">AS</span> <span class="n">author</span>
+<span class="k">FROM</span> <span class="o">/</span><span
class="n">BookMaster</span>
+<span class="k">WHERE</span> <span class="n">retailCost</span> <span
class="o">></span> <span class="mi">20</span></code></pre></figure>
+
+<figure class="highlight"><pre><code class="language-sql"
data-lang="sql"><span class="k">SELECT</span> <span
class="n">itemNumber</span> <span class="k">AS</span> <span
class="n">itemNumber</span>
+<span class="k">FROM</span> <span class="o">/</span><span
class="n">BookInventory</span></code></pre></figure>
+
+<p>And the result will be joined in Calcite.</p>
+
+<p>To select a particular item in Geode array field use the <code
class="highlighter-rouge">fieldName[index]</code>
+syntax:</p>
+
+<figure class="highlight"><pre><code class="language-sql"
data-lang="sql"><span class="n">sqlline</span><span class="o">></span> <span
class="k">SELECT</span>
+ <span class="nv">"loc"</span> <span class="p">[</span><span
class="mi">0</span><span class="p">]</span> <span class="k">AS</span> <span
class="nv">"lon"</span><span class="p">,</span>
+ <span class="nv">"loc"</span> <span class="p">[</span><span
class="mi">1</span><span class="p">]</span> <span class="k">AS</span> <span
class="nv">"lat"</span>
+ <span class="k">FROM</span> <span class="nv">"geode"</span><span
class="p">.</span><span class="n">ZIPS</span></code></pre></figure>
+
+<p>To select a nested fields use the map <code
class="highlighter-rouge">fieldName[nestedFiledName]</code>
+syntax:</p>
+
+<figure class="highlight"><pre><code class="language-sql"
data-lang="sql"><span class="n">sqlline</span><span class="o">></span> <span
class="k">SELECT</span> <span class="nv">"primaryAddress"</span> <span
class="p">[</span><span class="s1">'postalCode'</span><span class="p">]</span>
<span class="k">AS</span> <span class="nv">"postalCode"</span>
+ <span class="k">FROM</span> <span class="nv">"TEST"</span><span
class="p">.</span><span class="nv">"BookCustomer"</span>
+ <span class="k">WHERE</span> <span class="nv">"primaryAddress"</span>
<span class="p">[</span><span class="s1">'postalCode'</span><span
class="p">]</span> <span class="o">></span> <span class="s1">'0'</span><span
class="p">;</span></code></pre></figure>
+
+<p>This will project <code
class="highlighter-rouge">BookCustomer.primaryAddress.postalCode</code> value
field.</p>
+
+<p>The following presentations and video tutorials provide further dails
+about Geode adapter:</p>
+
+<ul>
+ <li><a
href="https://www.slideshare.net/slideshow/embed_code/key/2Mil7I0ZPMLuJU">Enable
SQL/JDBC Access to Apache Geode/GemFire Using Apache Calcite</a>
+(GeodeSummit/SpringOne 2017)</li>
+ <li><a
href="https://www.linkedin.com/pulse/access-apache-geode-gemfire-over-sqljdbc-christian-tzolov">Access
Apache Geode / GemFire over SQL/JDBC</a></li>
+ <li><a
href="https://www.linkedin.com/pulse/explore-your-geode-gemfire-data-from-within-intellij-tool-tzolov">Explore
Geode & GemFire Data with IntelliJ SQL/Database tool</a></li>
+ <li><a
href="https://www.linkedin.com/pulse/advanced-apache-geode-data-analytics-zeppelin-over-sqljdbc-tzolov">Advanced
Apache Geode Data Analytics with Apache Zeppelin over SQL/JDBC</a></li>
+ <li>
+ <table>
+ <tbody>
+ <tr>
+ <td>[Unified Access to {Geode</td>
+ <td>Greenplum</td>
+
<td>â¦}](https://www.linkedin.com/pulse/unified-access-geodegreenplum-christian-tzolov)</td>
+ </tr>
+ </tbody>
+ </table>
+ </li>
+ <li><a
href="https://schd.ws/hosted_files/apachebigdataeu2016/b6/ApacheCon2016ChristianTzolov.v3.pdf">Apache
Calcite for Enabling SQL Access to NoSQL Data Systems such as Apache Geode</a>
+(ApacheCon Big Data, 2016)</li>
+</ul>
+
+<p>There is still significant work to do in improving the flexibility and
+performance of the adapter, but if youâre looking for a quick way to
+gain additional insights into data stored in Geode, Calcite should
+prove useful.</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ </article>
+ </div>
+
+ <div class="unit one-fifth hide-on-mobiles">
+ <aside>
+
+ <h4>Overview</h4>
+
+
+<ul>
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/index.html">Background</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/tutorial.html">Tutorial</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/algebra.html">Algebra</a></li>
+
+
+</ul>
+
+
+ <h4>Advanced</h4>
+
+
+<ul>
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/adapter.html">Adapters</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/spatial.html">Spatial</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/stream.html">Streaming</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/lattice.html">Lattices</a></li>
+
+
+</ul>
+
+
+ <h4>Avatica</h4>
+
+
+<ul>
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/avatica_overview.html">Overview</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/avatica_roadmap.html">Roadmap</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/avatica_json_reference.html">JSON
Reference</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/avatica_protobuf_reference.html">Protobuf
Reference</a></li>
+
+
+</ul>
+
+
+ <h4>Reference</h4>
+
+
+<ul>
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/reference.html">SQL language</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/model.html">JSON models</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/howto.html">HOWTO</a></li>
+
+
+</ul>
+
+
+ <h4>Meta</h4>
+
+
+<ul>
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/history.html">History</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/docs/powered_by.html">Powered by Calcite</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/apidocs">API</a></li>
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/testapidocs">Test API</a></li>
+
+
+</ul>
+
+
+ </aside>
+</div>
+
+
+ <div class="clear"></div>
+
+ </div>
+ </section>
+
+
+ <footer role="contentinfo">
+ <div id="poweredby">
+ <a href="http://www.apache.org/">
+ <span class="sr-only">Apache</span>
+ <img src="/img/feather.png" width="190" height="77" alt="Apache
Logo"></a>
+ </div>
+ <div id="copyright">
+ <p>The contents of this website are © 2018
+ <a href="https://www.apache.org/">Apache Software Foundation</a>
+ under the terms of
+ the <a href="https://www.apache.org/licenses/LICENSE-2.0.html">
+ Apache License v2</a>. Apache Calcite and its logo are
+ trademarks of the Apache Software Foundation.</p>
+ </div>
+</footer>
+
+ <script>
+ var anchorForId = function (id) {
+ var anchor = document.createElement("a");
+ anchor.className = "header-link";
+ anchor.href = "#" + id;
+ anchor.innerHTML = "<span class=\"sr-only\">Permalink</span><i class=\"fa
fa-link\"></i>";
+ anchor.title = "Permalink";
+ return anchor;
+ };
+
+ var linkifyAnchors = function (level, containingElement) {
+ var headers = containingElement.getElementsByTagName("h" + level);
+ for (var h = 0; h < headers.length; h++) {
+ var header = headers[h];
+
+ if (typeof header.id !== "undefined" && header.id !== "") {
+ header.appendChild(anchorForId(header.id));
+ }
+ }
+ };
+
+ document.onreadystatechange = function () {
+ if (this.readyState === "complete") {
+ var contentBlock = document.getElementsByClassName("docs")[0] ||
document.getElementsByClassName("news")[0];
+ if (!contentBlock) {
+ return;
+ }
+ for (var level = 1; level <= 6; level++) {
+ linkifyAnchors(level, contentBlock);
+ }
+ }
+ };
+</script>
+
+
+</body>
+</html>
Modified: calcite/site/docs/history.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/history.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/docs/history.html (original)
+++ calcite/site/docs/history.html Mon Mar 19 15:59:20 2018
@@ -4,7 +4,7 @@
<meta charset="UTF-8">
<title>History</title>
<meta name="viewport" content="width=device-width,initial-scale=1">
- <meta name="generator" content="Jekyll v3.0.3">
+ <meta name="generator" content="Jekyll v3.5.1">
<link rel="stylesheet"
href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic,900">
<link rel="stylesheet" href="/css/screen.css">
<link rel="icon" type="image/x-icon" href="/favicon.ico">
@@ -109,6 +109,214 @@
Downloads are available on the
<a href="/downloads/">downloads page</a>.</p>
+<h2 id="v1-17-0"><a
href="https://github.com/apache/calcite/releases/tag/calcite-1.17.0">1.17.0</a>
/ under development</h2>
+
+<p>Compatibility: This release is tested
+on Linux, macOS, Microsoft Windows;
+using Oracle JDK 8, 9, 10;
+Guava versions 19.0 to 23.0;
+Druid version 0.11.0;
+other software versions as specified in <code
class="highlighter-rouge">pom.xml</code>.</p>
+
+<h2 id="v1-16-0"><a
href="https://github.com/apache/calcite/releases/tag/calcite-1.16.0">1.16.0</a>
/ 2018-03-14</h2>
+
+<p>Compatibility: This release is tested
+on Linux, macOS, Microsoft Windows;
+using Oracle JDK 8, 9, 10;
+Guava versions 19.0 to 23.0;
+Druid version 0.11.0;
+other software versions as specified in <code
class="highlighter-rouge">pom.xml</code>.</p>
+
+<p>This release comes three months after 1.15.0. It includes more than 80
resolved
+issues, comprising a large number of new features as well as general
improvements
+and bug-fixes to Calcite core. Among others:</p>
+
+<ul>
+ <li>Calcite has been upgraded to use
+<a href="https://issues.apache.org/jira/browse/CALCITE-2182">Avatica
1.11.0</a>,
+which was recently released.</li>
+ <li>Moreover, a new adapter to
+<a href="https://issues.apache.org/jira/browse/CALCITE-2059">read data from
Apache Geode</a>
+was added in this release. In addition, more progress has been made for the
existing adapters,
+e.g., the Druid adapter can generate
+<a href="https://issues.apache.org/jira/browse/CALCITE-2077"><code
class="highlighter-rouge">SCAN</code> queries rather than <code
class="highlighter-rouge">SELECT</code> queries</a>
+for more efficient execution and it can push
+<a href="https://issues.apache.org/jira/browse/CALCITE-2170">more work to
Druid using its new expressions capabilities</a>,
+and the JDBC adapter now <a
href="https://issues.apache.org/jira/browse/CALCITE-2128">supports the SQL
dialect used by Jethro Data</a>.</li>
+ <li>Finally, this release
+<a href="https://issues.apache.org/jira/browse/CALCITE-2027">drops support for
JDK 1.7</a> and
+support for <a href="https://issues.apache.org/jira/browse/CALCITE-2191">Guava
versions earlier than 19</a>.</li>
+</ul>
+
+<h4 id="new-features">New features</h4>
+
+<ul>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1265">CALCITE-1265</a>]
+In JDBC adapter, push <code class="highlighter-rouge">OFFSET</code> and <code
class="highlighter-rouge">FETCH</code> to data source</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2059">CALCITE-2059</a>]
+Apache Geode adapter (Christian Tzolov)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2077">CALCITE-2077</a>]
+Druid adapter: Use <code class="highlighter-rouge">SCAN</code> query rather
than <code class="highlighter-rouge">SELECT</code> query (Nishant Bangarwa)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2128">CALCITE-2128</a>]
+In JDBC adapter, add SQL dialect for Jethro Data (Jonathan Doron)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2170">CALCITE-2170</a>]
+Use Druid Expressions capabilities to improve the amount of work that can be
pushed to Druid</li>
+</ul>
+
+<h4 id="bug-fixes-api-changes-and-minor-enhancements">Bug-fixes, API changes
and minor enhancements</h4>
+
+<ul>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1054">CALCITE-1054</a>]
+NPE caused by wrong code generation for Timestamp fields</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1188">CALCITE-1188</a>]
+NullPointerException in <code class="highlighter-rouge">EXTRACT</code> with
<code class="highlighter-rouge">WHERE ... IN</code> clause if field has null
value</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1427">CALCITE-1427</a>]
+Code generation incorrect (does not compile) for DATE, TIME and TIMESTAMP
fields</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1658">CALCITE-1658</a>]
+DateRangeRules incorrectly rewrites <code
class="highlighter-rouge">EXTRACT</code> calls (Nishant Bangarwa)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1697">CALCITE-1697</a>]
+Update Mongo driver version to 3.5.0 (Vladimir Dolzhenko)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2002">CALCITE-2002</a>]
+<code class="highlighter-rouge">DISTINCT</code> applied to <code
class="highlighter-rouge">VALUES</code> returns wrong result</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2009">CALCITE-2009</a>]
+Possible bug in interpreting <code class="highlighter-rouge">( IN ) OR ( IN
)</code> logic</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2020">CALCITE-2020</a>]
+Upgrade org.incava java-diff</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2027">CALCITE-2027</a>]
+Drop support for Java 7 (JDK 1.7)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2034">CALCITE-2034</a>]
+<code class="highlighter-rouge">FileReaderTest</code> fails with path
containing spaces</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2066">CALCITE-2066</a>]
+<code class="highlighter-rouge">RelOptUtil.splitJoinCondition()</code> could
not split condition with case after applying <code
class="highlighter-rouge">FilterReduceExpressionsRule</code> (Volodymyr
Vysotskyi)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2071">CALCITE-2071</a>]
+Query with <code class="highlighter-rouge">IN</code> and <code
class="highlighter-rouge">OR</code> in <code
class="highlighter-rouge">WHERE</code> clause returns wrong result (Vineet
Garg)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2072">CALCITE-2072</a>]
+Enable spatial functions by adding âfun=spatialâ to JDBC connect
string</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2075">CALCITE-2075</a>]
+SparkAdapterTest UT fails</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2076">CALCITE-2076</a>]
+Upgrade to Druid 0.11.0 (Nishant Bangarwa)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2080">CALCITE-2080</a>]
+Query with <code class="highlighter-rouge">NOT IN</code> operator and literal
throws <code class="highlighter-rouge">AssertionError</code>: âCast for just
nullability not allowedâ (Volodymyr Vysotskyi)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2081">CALCITE-2081</a>]
+Query with windowed aggregates under both sides of a <code
class="highlighter-rouge">JOIN</code> throws <code
class="highlighter-rouge">NullPointerException</code> (Zhen Wang)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2084">CALCITE-2084</a>]
+<code class="highlighter-rouge">SqlValidatorImpl.findTable()</code> method
incorrectly handles table schema with few schema levels (Volodymyr
Vysotskyi)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2088">CALCITE-2088</a>]
+Add more complex end-to-end tests in âplusâ module, using Chinook data set
(Piotr Bojko)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2089">CALCITE-2089</a>]
+Druid adapter: Push filter on <code
class="highlighter-rouge">floor(time)</code> to Druid (Nishant Bangarwa)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2090">CALCITE-2090</a>]
+Extend Druid Range Rules to extract interval from Floor (Nishant Bangarwa)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2091">CALCITE-2091</a>]
+Improve DruidQuery cost function, to ensure that <code
class="highlighter-rouge">EXTRACT</code> gets pushed as an interval if
possible</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2092">CALCITE-2092</a>]
+Allow passing custom <code class="highlighter-rouge">RelBuilder</code> into
<code class="highlighter-rouge">SqlToRelConverter</code></li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2093">CALCITE-2093</a>]
+<code class="highlighter-rouge">OsAdapterTest</code> in Calcite Plus does not
respect locale (Piotr Bojko)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2094">CALCITE-2094</a>]
+Druid adapter: <code class="highlighter-rouge">Count(*)</code> returns null
instead of 0 when condition filters all rows</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2095">CALCITE-2095</a>]
+Druid adapter: Push always true and always true expressions as Expression
Filters</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2096">CALCITE-2096</a>]
+Druid adapter: Remove extra <code
class="highlighter-rouge">dummy_aggregator</code></li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2097">CALCITE-2097</a>]
+Druid adapter: Push Aggregate and Filter operators containing metric columns
to Druid</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2098">CALCITE-2098</a>]
+Push filters to Druid Query Scan when we have <code
class="highlighter-rouge">OR</code> of <code
class="highlighter-rouge">AND</code> clauses</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2099">CALCITE-2099</a>]
+Code generated for <code class="highlighter-rouge">GROUP BY</code> inside
<code class="highlighter-rouge">UNION</code> does not compile (Zhen Wang)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2101">CALCITE-2101</a>]
+Druid adapter: Push count(column) using Druid filtered aggregate</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2102">CALCITE-2102</a>]
+Ignore duplicate <code class="highlighter-rouge">ORDER BY</code> keys, and
ensure RelCollation contains no duplicates (John Fang)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2104">CALCITE-2104</a>]
+Add separate rules for <code
class="highlighter-rouge">AggregateUnionAggregateRule</code> to reduce
potential matching cost in <code
class="highlighter-rouge">VolcanoPlanner</code> (lincoln-lil)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2105">CALCITE-2105</a>]
+<code class="highlighter-rouge">AggregateJoinTransposeRule</code> fails when
process aggregate without group keys (jingzhang)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2107">CALCITE-2107</a>]
+Timezone not passed as part of granularity when passing <code
class="highlighter-rouge">TimeExtractionFunction</code> to Druid (Nishant
Bangarwa)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2108">CALCITE-2108</a>]
+<code class="highlighter-rouge">AggregateJoinTransposeRule</code> fails when
process aggregateCall above <code
class="highlighter-rouge">SqlSumEmptyIsZeroAggFunction</code> without groupKeys
(jingzhang)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2110">CALCITE-2110</a>]
+<code class="highlighter-rouge">ArrayIndexOutOfBoundsException</code> in
RexSimplify when using <code
class="highlighter-rouge">ReduceExpressionsRule.JOIN_INSTANCE</code></li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2111">CALCITE-2111</a>]
+Make HepPlanner more efficient by applying rules depth-first</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2113">CALCITE-2113</a>]
+Push column pruning to druid when Aggregate cannot be pushed (Nishant
Bangarwa)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2114">CALCITE-2114</a>]
+Re-enable <code
class="highlighter-rouge">DruidAggregateFilterTransposeRule</code></li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2116">CALCITE-2116</a>]
+The digests are not same for the common sub-expressions in HepPlanner
(LeoWangLZ)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2118">CALCITE-2118</a>]
+RelToSqlConverter should only generate â*â if field names match (Sam
Waggoner)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2122">CALCITE-2122</a>]
+In DateRangeRules, make either <code
class="highlighter-rouge">TIMESTAMP</code> or <code
class="highlighter-rouge">DATE</code> literal, according to target type
(Nishant Bangarwa)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2124">CALCITE-2124</a>]
+<code class="highlighter-rouge">AggregateExpandDistinctAggregatesRule</code>
should make <code class="highlighter-rouge">SUM</code> nullable if there is no
<code class="highlighter-rouge">GROUP BY</code> (Godfrey He)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2127">CALCITE-2127</a>]
+In Interpreter, allow a node to have more than one consumer</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2133">CALCITE-2133</a>]
+Allow SqlGroupedWindowFunction to specify returnTypeInference in its
constructor (Shuyi Chen)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2135">CALCITE-2135</a>]
+If there is an aggregate function inside an <code
class="highlighter-rouge">OVER</code> clause, validator should treat query as
an aggregate query (Volodymyr Tkach)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2137">CALCITE-2137</a>]
+Materialized view rewriting not being triggered for some join queries</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2139">CALCITE-2139</a>]
+Upgrade checkstyle</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2143">CALCITE-2143</a>]
+RelToSqlConverter produces incorrect SQL with aggregation (Sam Waggoner)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2147">CALCITE-2147</a>]
+GroupingSets involving rollup resulting into an incorrect plan (Ravindar
Munjam)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2154">CALCITE-2154</a>]
+Upgrade jackson to 2.9.4</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2156">CALCITE-2156</a>]
+In DateRangeRules, compute <code class="highlighter-rouge">FLOOR</code> and
<code class="highlighter-rouge">CEIL</code> of <code
class="highlighter-rouge">TIMESTAMP WITH LOCAL TIMEZONE</code> in local time
zone (Nishant Bangarwa)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2162">CALCITE-2162</a>]
+Exception when accessing sub-field of sub-field of composite Array element
(Shuyi Chen)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2178">CALCITE-2178</a>]
+Extend expression simplifier to work on datetime <code
class="highlighter-rouge">CEIL</code>/<code
class="highlighter-rouge">FLOOR</code> functions</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2179">CALCITE-2179</a>]
+General improvements for materialized view rewriting rule</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2180">CALCITE-2180</a>]
+Invalid code generated for negative of byte and short values</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2183">CALCITE-2183</a>]
+Implement <code class="highlighter-rouge">RelSubset.copy</code> method
(Alessandro Solimando)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2185">CALCITE-2185</a>]
+Additional unit tests for Spark Adapter (Alessandro Solimando)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2187">CALCITE-2187</a>]
+Fix build issue caused by <code
class="highlighter-rouge">CALCITE-2170</code></li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2189">CALCITE-2189</a>]
+RelMdAllPredicates fast bail out creates mismatch with
RelMdTableReferences</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2190">CALCITE-2190</a>]
+Extend SubstitutionVisitor.splitFilter to cover different order of
operands</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2191">CALCITE-2191</a>]
+Drop support for Guava versions earlier than 19</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2192">CALCITE-2192</a>]
+RelBuilder wrongly skips creating an Aggregate that prunes columns, if input
is unique</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2195">CALCITE-2195</a>]
+<code class="highlighter-rouge">AggregateJoinTransposeRule</code> fails to
aggregate over unique column (Zhong Yu)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2196">CALCITE-2196</a>]
+Tweak janino code generation to allow debugging (jingzhang)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2197">CALCITE-2197</a>]
+Test failures on Windows</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2200">CALCITE-2200</a>]
+Infinite loop for JoinPushTransitivePredicatesRule</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2207">CALCITE-2207</a>]
+Enforce Java version via maven-enforcer-plugin (Kevin Risden)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2213">CALCITE-2213</a>]
+Geode integration tests are failing</li>
+</ul>
+
+<h4 id="web-site-and-documentation">Web site and documentation</h4>
+
+<ul>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2024">CALCITE-2024</a>]
+Submit a journal paper on Calcite to VLDB Journal or ACM SIGMOD Record (Edmon
Begoli)</li>
+ <li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2203">CALCITE-2203</a>]
+Calcite site redirect links to Avatica broken with jekyll-redirect-from 0.12+
(Kevin Risden)</li>
+</ul>
+
<h2 id="v1-15-0"><a
href="https://github.com/apache/calcite/releases/tag/calcite-1.15.0">1.15.0</a>
/ 2017-12-11</h2>
<p>Compatibility: This release is tested
@@ -148,7 +356,7 @@ and the Cassandra adapterâs depende
<p>This is the <a
href="https://issues.apache.org/jira/browse/CALCITE-2027">last
release that will support JDK 1.7</a>.</p>
-<h4 id="new-features">New features</h4>
+<h4 id="new-features-1">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1616">CALCITE-1616</a>]
@@ -179,7 +387,7 @@ with dialect methods, and introduce a co
(Christian Beikov)</li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements">Bug-fixes, API changes
and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-1">Bug-fixes, API changes
and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-2078">CALCITE-2078</a>]
@@ -282,7 +490,7 @@ aggregate functions (Pawel Ruchaj)</li>
linq4j: support List and Map literals</li>
</ul>
-<h4 id="web-site-and-documentation">Web site and documentation</h4>
+<h4 id="web-site-and-documentation-1">Web site and documentation</h4>
<ul>
<li>Update PMC Chair</li>
@@ -322,10 +530,10 @@ Finally, the <code class="highlighter-ro
on Linux, macOS, Microsoft Windows;
using Oracle JDK 1.7, 1.8, 9;
Guava versions 14.0 to 21.0;
-Druid version 0.10.0;
+Druid version 0.11.0;
other software versions as specified in <code
class="highlighter-rouge">pom.xml</code>.</p>
-<h4 id="new-features-1">New features</h4>
+<h4 id="new-features-2">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1968">CALCITE-1968</a>]
OpenGIS Simple Feature Access SQL 1.2.1: add <code
class="highlighter-rouge">GEOMETRY</code> data type and first 35 functions
@@ -347,7 +555,7 @@ which ones are implemented), and add â�
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1709">CALCITE-1709</a>]
Support mixing table columns with extended columns in DML (Rajeshbabu
Chintaguntla)</li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements-1">Bug-fixes, API changes
and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-2">Bug-fixes, API changes
and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1931">CALCITE-1931</a>]
@@ -405,7 +613,7 @@ types: <code class="highlighter-rouge">R
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1856">CALCITE-1856</a>]
Add option <code
class="highlighter-rouge">StructKind.PEEK_FIELDS_NO_EXPAND</code>, similar to
<code class="highlighter-rouge">PEEK_FIELDS</code> but is not expanded in <code
class="highlighter-rouge">"SELECT *"</code> (Shuyi Chen)</li>
</ul>
-<h4 id="web-site-and-documentation-1">Web site and documentation</h4>
+<h4 id="web-site-and-documentation-2">Web site and documentation</h4>
<ul>
<li>Add committer Chris Baynes</li>
@@ -450,7 +658,7 @@ Guava versions 14.0 to 21.0;
Druid version 0.10.0;
other software versions as specified in <code
class="highlighter-rouge">pom.xml</code>.</p>
-<h4 id="new-features-2">New features</h4>
+<h4 id="new-features-3">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1570">CALCITE-1570</a>]
@@ -528,7 +736,7 @@ Upgrade Druid to 0.9.2 (Nishant Bangarwa
Support extended columns in DML (Kevin Liew)</li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements-2">Bug-fixes, API changes
and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-3">Bug-fixes, API changes
and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1855">CALCITE-1855</a>]
@@ -615,7 +823,7 @@ Match <code class="highlighter-rouge">Dr
Do not push group by on druid metrics fields (Slim Bouguerra)</li>
</ul>
-<h4 id="web-site-and-documentation-2">Web site and documentation</h4>
+<h4 id="web-site-and-documentation-3">Web site and documentation</h4>
<ul>
<li>Michael Mior joins PMC</li>
@@ -649,7 +857,7 @@ Guava versions 14.0 to 21.0;
Druid version 0.9.1.1;
other software versions as specified in <code
class="highlighter-rouge">pom.xml</code>.</p>
-<h3 id="new-features-3">New features</h3>
+<h3 id="new-features-4">New features</h3>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1666">CALCITE-1666</a>]
@@ -739,7 +947,7 @@ Add numeric scalar functions (Laurent Go
JDK9</li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements-3">Bug-fixes, API changes
and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-4">Bug-fixes, API changes
and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1716">CALCITE-1716</a>]
@@ -888,7 +1096,7 @@ Correlated scalar sub-query with multipl
(Kurt Young)</li>
</ul>
-<h4 id="web-site-and-documentation-3">Web site and documentation</h4>
+<h4 id="web-site-and-documentation-4">Web site and documentation</h4>
<ul>
<li>Maryann Xue joins PMC</li>
@@ -958,7 +1166,7 @@ Guava versions 14.0 to 19.0;
Druid version 0.9.1.1;
other software versions as specified in <code
class="highlighter-rouge">pom.xml</code>.</p>
-<h4 id="new-features-4">New features</h4>
+<h4 id="new-features-5">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1551">CALCITE-1551</a>]
@@ -1036,7 +1244,7 @@ Implement JDBC functions: <code class="h
Add <code class="highlighter-rouge">AS JSON</code> as output option for <code
class="highlighter-rouge">EXPLAIN</code></li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements-4">Bug-fixes, API changes
and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-5">Bug-fixes, API changes
and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1559">CALCITE-1559</a>]
@@ -1126,7 +1334,7 @@ Druid type is called <code class="highli
Add sub-query support for RelStructuredTypeFlattener</li>
</ul>
-<h4 id="web-site-and-documentation-4">Web site and documentation</h4>
+<h4 id="web-site-and-documentation-5">Web site and documentation</h4>
<ul>
<li>Change PMC chair</li>
@@ -1155,7 +1363,7 @@ other software versions as specified in
Support operator <code class="highlighter-rouge">!=</code> as an alternative
to <code class="highlighter-rouge"><></code></li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements-5">Bug-fixes, API changes
and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-6">Bug-fixes, API changes
and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1378">CALCITE-1378</a>]
@@ -1186,7 +1394,7 @@ Druid Filter translation incorrect if in
Allow Calcite JDBC Driver minor version to be greater than 9</li>
</ul>
-<h4 id="web-site-and-documentation-5">Web site and documentation</h4>
+<h4 id="web-site-and-documentation-6">Web site and documentation</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1393">CALCITE-1393</a>]
@@ -1223,7 +1431,7 @@ using Oracle JDK 1.7, 1.8;
Guava versions 14.0 to 19.0;
other software versions as specified in <code
class="highlighter-rouge">pom.xml</code>.</p>
-<h4 id="new-features-5">New features</h4>
+<h4 id="new-features-6">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1208">CALCITE-1208</a>]
@@ -1270,7 +1478,7 @@ Convert predicates on <code class="highl
Introduce <code class="highlighter-rouge">UnionPullUpConstantsRule</code></li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements-6">Bug-fixes, API changes
and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-7">Bug-fixes, API changes
and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-30">CALCITE-30</a>]
@@ -1339,7 +1547,7 @@ In <code class="highlighter-rouge">SqlKi
Calcite generate wrong field names in JDBC adapter</li>
</ul>
-<h4 id="web-site-and-documentation-6">Web site and documentation</h4>
+<h4 id="web-site-and-documentation-7">Web site and documentation</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1229">CALCITE-1229</a>]
@@ -1380,7 +1588,7 @@ using Oracle JDK 1.7, 1.8;
Guava versions 14.0 to 19.0;
other software versions as specified in <code
class="highlighter-rouge">pom.xml</code>.</p>
-<h4 id="new-features-6">New features</h4>
+<h4 id="new-features-7">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1177">CALCITE-1177</a>]
@@ -1437,7 +1645,7 @@ Add <code class="highlighter-rouge">Proj
substitution</li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements-7">Bug-fixes, API changes
and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-8">Bug-fixes, API changes
and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1281">CALCITE-1281</a>]
@@ -1516,7 +1724,7 @@ Allow <code class="highlighter-rouge">Sq
Allow apache-rat to be run outside of release process</li>
</ul>
-<h4 id="web-site-and-documentation-7">Web site and documentation</h4>
+<h4 id="web-site-and-documentation-8">Web site and documentation</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1273">CALCITE-1273</a>]
@@ -1543,7 +1751,7 @@ Avatica-related changes, see the
<p>We have <a
href="https://issues.apache.org/jira/browse/CALCITE-1080">added</a>
an <a href="/docs/adapter.html">adapter</a> for
-<a href="http://cassandra.apache.org/">Apache Cassandra</a>.
+<a href="https://cassandra.apache.org/">Apache Cassandra</a>.
You can map a Cassandra keyspace into Calcite as a schema, Cassandra
CQL tables as tables, and execute SQL queries on them, which Calcite
converts into <a href="https://cassandra.apache.org/doc/cql/CQL.html">CQL</a>.
@@ -1560,7 +1768,7 @@ forward to adding more functions, and co
databases, in future releases.</p>
<p>Weâve replaced our use of JUL (<code
class="highlighter-rouge">java.util.logging</code>)
-with <a href="http://slf4j.org/">SLF4J</a>. SLF4J provides an API which
Calcite can use
+with <a href="https://slf4j.org/">SLF4J</a>. SLF4J provides an API which
Calcite can use
independent of the logging implementation. This ultimately provides additional
flexibility to users, allowing them to configure Calciteâs logging within
their
own chosen logging framework. This work was done in
@@ -1577,7 +1785,7 @@ using Oracle JDK 1.7, 1.8;
Guava versions 12.0.1 to 19.0;
other software versions as specified in <code
class="highlighter-rouge">pom.xml</code>.</p>
-<h4 id="new-features-7">New features</h4>
+<h4 id="new-features-8">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1124">CALCITE-1124</a>]
@@ -1621,7 +1829,7 @@ In <code class="highlighter-rouge">RelBu
Not valid to convert <code class="highlighter-rouge">Aggregate</code> on empty
to empty if its <code class="highlighter-rouge">GROUP BY</code> key is
empty</li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements-8">Bug-fixes, API changes
and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-9">Bug-fixes, API changes
and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1147">CALCITE-1147</a>]
@@ -1688,7 +1896,7 @@ Upgrade Jackson</li>
Clean up maven POM files</li>
</ul>
-<h4 id="web-site-and-documentation-8">Web site and documentation</h4>
+<h4 id="web-site-and-documentation-9">Web site and documentation</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1112">CALCITE-1112</a>]
@@ -1744,7 +1952,7 @@ on Linux, Mac OS X, Microsoft Windows;
using Oracle JDK 1.7, 1.8;
other software versions as specified in <code
class="highlighter-rouge">pom.xml</code>.</p>
-<h4 id="new-features-8">New features</h4>
+<h4 id="new-features-9">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-816">CALCITE-816</a>]
@@ -1849,7 +2057,7 @@ Composite <code class="highlighter-rouge
Add description to <code
class="highlighter-rouge">SortProjectTransposeRule</code>âs constructor</li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements-9">Bug-fixes, API changes
and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-10">Bug-fixes, API
changes and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-1060">CALCITE-1060</a>]
@@ -1931,7 +2139,7 @@ Exception while validating <code class="
Rename <code class="highlighter-rouge">timezone</code> connection property to
<code class="highlighter-rouge">timeZone</code></li>
</ul>
-<h4 id="web-site-and-documentation-9">Web site and documentation</h4>
+<h4 id="web-site-and-documentation-10">Web site and documentation</h4>
<ul>
<li>Avatica
@@ -1987,7 +2195,7 @@ multi-sets. You can follow this example
language, and immediately taking advantage of Calciteâs back-ends and
optimizer rules. Itâs all just algebra, after all!</p>
-<h4 id="new-features-9">New features</h4>
+<h4 id="new-features-10">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-911">CALCITE-911</a>]
@@ -2150,7 +2358,7 @@ Add API to execute queries expressed as
<li>In RelBuilder, build expressions by table alias</li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements-10">Bug-fixes, API
changes and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-11">Bug-fixes, API
changes and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-948">CALCITE-948</a>]
@@ -2179,7 +2387,7 @@ Anti-semi-joins against JDBC adapter giv
Obsolete <code class="highlighter-rouge">RelNode.isKey</code> and <code
class="highlighter-rouge">isDistinct</code> methods</li>
<li>Allow FlatLists of different length to be compared</li>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-898">CALCITE-898</a>]
-Type of âJava<long> * `INTEGER`' should be `BIGINT`</long></li>
+Type of âJava<Long> * `INTEGER`' should be `BIGINT`</Long></li>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-894">CALCITE-894</a>]
Do not generate redundant column alias for the left relation when
translating <code class="highlighter-rouge">IN</code> sub-query (Maryann
Xue)</li>
@@ -2238,7 +2446,7 @@ this release includes improvements to la
and adds a builder API so that you can easily create relational
algebra expressions.</p>
-<h4 id="new-features-10">New features</h4>
+<h4 id="new-features-11">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-748">CALCITE-748</a>]
@@ -2274,7 +2482,7 @@ exclusions otherwise</li>
Web site</li>
</ul>
-<h4 id="bug-fixes-api-changes-and-minor-enhancements-11">Bug-fixes, API
changes and minor enhancements</h4>
+<h4 id="bug-fixes-api-changes-and-minor-enhancements-12">Bug-fixes, API
changes and minor enhancements</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-741">CALCITE-741</a>]
@@ -2425,7 +2633,7 @@ and
<a href="https://issues.apache.org/jira/browse/CALCITE-704">filtered aggregate
functions</a>
and various improvements to Avatica.</p>
-<h4 id="new-features-11">New features</h4>
+<h4 id="new-features-12">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-505">CALCITE-505</a>]
@@ -2554,7 +2762,7 @@ distribution among relational expression
and [<a
href="https://issues.apache.org/jira/browse/CALCITE-307">CALCITE-307</a>]
improve implicit and explicit conversions in SQL.</p>
-<h4 id="new-features-12">New features</h4>
+<h4 id="new-features-13">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-366">CALCITE-366</a>]
@@ -2697,7 +2905,7 @@ later.</p>
<code class="highlighter-rouge">RelNode</code>. We strongly suggest that you
use these rather than
calling constructors directly.</p>
-<h4 id="new-features-13">New features</h4>
+<h4 id="new-features-14">New features</h4>
<ul>
<li>SQL
@@ -2823,7 +3031,7 @@ improvements to the algorithms that impl
including an interpreter that can evaluate queries without compilation;
and fixes about 30 bugs.</p>
-<h4 id="new-features-14">New features</h4>
+<h4 id="new-features-15">New features</h4>
<ul>
<li>SQL
@@ -3085,7 +3293,7 @@ packages and lots of classes, in what we
have an existing application, itâs worth upgrading to this first,
before you move on to 1.0.</p>
-<h4 id="new-features-15">New features</h4>
+<h4 id="new-features-16">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-436">CALCITE-436</a>]
@@ -3136,7 +3344,7 @@ Push predicates through <code class="hig
<p>This is the first release as Calcite. (The project was previously called
Optiq.)</p>
-<h4 id="new-features-16">New features</h4>
+<h4 id="new-features-17">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-430">CALCITE-430</a>]
@@ -3293,7 +3501,7 @@ most recently.</li>
<p>This is the first release under the Apache incubator process.</p>
-<h4 id="new-features-17">New features</h4>
+<h4 id="new-features-18">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-371">CALCITE-371</a>]
@@ -3425,7 +3633,7 @@ Add unit test for <code class="highlight
<h2 id="v0-8"><a
href="https://github.com/apache/calcite/releases/tag/optiq-parent-0.8">0.8</a>
/ 2014-06-27</h2>
-<h4 id="new-features-18">New features</h4>
+<h4 id="new-features-19">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-310">CALCITE-310</a>]
@@ -3506,7 +3714,7 @@ Window functions throw exception without
<h2 id="v0-7"><a
href="https://github.com/apache/calcite/releases/tag/optiq-parent-0.7">0.7</a>
/ 2014-05-13</h2>
-<h4 id="new-features-19">New features</h4>
+<h4 id="new-features-20">New features</h4>
<ul>
<li>Implement table functions.</li>
@@ -3591,7 +3799,7 @@ Suspicious map.get in VolcanoPlanner.rer
<h2 id="v0-6"><a
href="https://github.com/apache/calcite/releases/tag/optiq-parent-0.6">0.6</a>
/ 2014-04-11</h2>
-<h4 id="new-features-20">New features</h4>
+<h4 id="new-features-21">New features</h4>
<ul>
<li>[<a
href="https://issues.apache.org/jira/browse/CALCITE-214">CALCITE-214</a>]
@@ -3716,7 +3924,7 @@ and obsolete our copy of the resource fr
<h2 id="v0-5"><a
href="https://github.com/apache/calcite/releases/tag/optiq-parent-0.5">0.5</a>
/ 2014-03-14</h2>
-<h4 id="new-features-21">New features</h4>
+<h4 id="new-features-22">New features</h4>
<ul>
<li>Allow <code class="highlighter-rouge">quoting</code>, <code
class="highlighter-rouge">quotedCasing</code>, <code
class="highlighter-rouge">unquotedCasing</code>, and <code
class="highlighter-rouge">caseSensitive</code>
Modified: calcite/site/docs/howto.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/howto.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/docs/howto.html (original)
+++ calcite/site/docs/howto.html Mon Mar 19 15:59:20 2018
@@ -126,6 +126,7 @@ adapters.</p>
</ul>
</li>
<li><a href="#tracing" id="markdown-toc-tracing">Tracing</a></li>
+ <li><a href="#debugging-generated-classes-in-intellij"
id="markdown-toc-debugging-generated-classes-in-intellij">Debugging generated
classes in Intellij</a></li>
<li><a href="#csv-adapter" id="markdown-toc-csv-adapter">CSV adapter</a></li>
<li><a href="#mongodb-adapter" id="markdown-toc-mongodb-adapter">MongoDB
adapter</a></li>
<li><a href="#splunk-adapter" id="markdown-toc-splunk-adapter">Splunk
adapter</a></li>
@@ -154,14 +155,14 @@ adapters.</p>
<h2 id="building-from-a-source-distribution">Building from a source
distribution</h2>
<p>Prerequisites are maven (3.5.2 or later)
-and Java (JDK 7, 8, 9 or 10) on your path.</p>
+and Java (JDK 8, 9 or 10) on your path.</p>
<p>Unpack the source distribution <code
class="highlighter-rouge">.tar.gz</code> or <code
class="highlighter-rouge">.zip</code> file,
<code class="highlighter-rouge">cd</code> to the root directory of the
unpacked source,
then build using maven:</p>
-<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="gp">$ </span>tar xvfz calcite-1.15.0-source.tar.gz
-<span class="gp">$ </span><span class="nb">cd </span>calcite-1.15.0
+<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="gp">$ </span>tar xvfz calcite-1.16.0-source.tar.gz
+<span class="gp">$ </span><span class="nb">cd </span>calcite-1.16.0
<span class="gp">$ </span>mvn install</code></pre></figure>
<p><a href="#running-tests">Running tests</a> describes how to run more or
fewer
@@ -170,7 +171,7 @@ tests.</p>
<h2 id="building-from-git">Building from git</h2>
<p>Prerequisites are git, maven (3.5.2 or later)
-and Java (JDK 7 or later, 9 preferred) on your path.</p>
+and Java (JDK 8 or later, 9 preferred) on your path.</p>
<p>Create a local copy of the github repository,
<code class="highlighter-rouge">cd</code> to its root directory,
@@ -366,6 +367,26 @@ for a specific class if you so choose.</
<span class="c"># Increase level to TRACE for HepPlanner
</span><span
class="py">log4j.logger.org.apache.calcite.plan.hep.HepPlanner</span><span
class="p">=</span><span class="s">TRACE</span></code></pre></figure>
+<h2 id="debugging-generated-classes-in-intellij">Debugging generated classes
in Intellij</h2>
+
+<p>Calcite uses <a href="https://janino-compiler.github.io/janino/">Janino</a>
to generate Java
+code. The generated classes can be debugged interactively
+(see <a href="https://janino-compiler.github.io/janino/">the Janino
tutorial</a>).</p>
+
+<p>To debug generated classes, set two system properties when starting the
JVM:</p>
+
+<ul>
+ <li><code
class="highlighter-rouge">-Dorg.codehaus.janino.source_debugging.enable=true</code></li>
+ <li><code
class="highlighter-rouge">-Dorg.codehaus.janino.source_debugging.dir=C:\tmp</code>
(This property is optional;
+if not set, Janino will create temporary files in the systemâs default
location
+for temporary files, such as <code class="highlighter-rouge">/tmp</code> on
Unix-based systems.)</li>
+</ul>
+
+<p>After code is generated, either go into Intellij and mark the folder that
+contains generated temporary files as a generated sources root or sources root,
+or directly set the value of <code
class="highlighter-rouge">org.codehaus.janino.source_debugging.dir</code> to an
+existing source root when starting the JVM.</p>
+
<h2 id="csv-adapter">CSV adapter</h2>
<p>See the <a href="/docs/tutorial.html">tutorial</a>.</p>
@@ -373,13 +394,13 @@ for a specific class if you so choose.</
<h2 id="mongodb-adapter">MongoDB adapter</h2>
<p>First, download and install Calcite,
-and <a href="http://www.mongodb.org/downloads">install MongoDB</a>.</p>
+and <a href="https://www.mongodb.org/downloads">install MongoDB</a>.</p>
<p>Note: you can use MongoDB from integration test virtual machine above.</p>
<p>Import MongoDBâs zipcode data set into MongoDB:</p>
-<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="gp">$ </span>curl -o /tmp/zips.json
http://media.mongodb.org/zips.json
+<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="gp">$ </span>curl -o /tmp/zips.json
https://media.mongodb.org/zips.json
<span class="gp">$ </span>mongoimport --db <span class="nb">test</span>
--collection zips --file /tmp/zips.json
Tue Jun 4 16:24:14.190 check 9 29470
Tue Jun 4 16:24:14.469 imported 29470 objects</code></pre></figure>
@@ -432,7 +453,7 @@ Closing: org.apache.calcite.jdbc.Factory
<p>To run the test suite and sample queries against Splunk,
load Splunkâs <code class="highlighter-rouge">tutorialdata.zip</code> data
set as described in
-<a
href="http://docs.splunk.com/Documentation/Splunk/6.0.2/PivotTutorial/GetthetutorialdataintoSplunk">the
Splunk tutorial</a>.</p>
+<a
href="https://docs.splunk.com/Documentation/Splunk/6.0.2/PivotTutorial/GetthetutorialdataintoSplunk">the
Splunk tutorial</a>.</p>
<p>(This step is optional, but it provides some interesting data for the sample
queries. It is also necessary if you intend to run the test suite, using
@@ -539,8 +560,8 @@ particular release managers.</p>
<h2 id="set-up-pgp-signing-keys-for-calcite-committers">Set up PGP signing
keys (for Calcite committers)</h2>
-<p>Follow instructions <a
href="http://www.apache.org/dev/release-signing">here</a> to
-create a key pair. (On Mac OS X, I did <code class="highlighter-rouge">brew
install gpg</code> and
+<p>Follow instructions <a
href="https://www.apache.org/dev/release-signing">here</a> to
+create a key pair. (On macOS, I did <code class="highlighter-rouge">brew
install gpg</code> and
<code class="highlighter-rouge">gpg --gen-key</code>.)</p>
<p>Add your public key to the
@@ -556,7 +577,7 @@ ball because that would be
<ul>
<li>Set up signing keys as described above.</li>
- <li>Make sure you are using JDK 8 (not 7, 9 or 10).</li>
+ <li>Make sure you are using JDK 8 (not 9 or 10).</li>
<li>Make sure build and tests succeed with <code
class="highlighter-rouge">-Dcalcite.test.db=hsqldb</code> (the default)</li>
</ul>
@@ -577,7 +598,7 @@ mvn -Papache-release -Dgpg.passphrase<sp
<ul>
<li>Set up signing keys as described above.</li>
- <li>Make sure you are using JDK 8 (not 7 or 9).</li>
+ <li>Make sure you are using JDK 8 (not 9 or 10).</li>
<li>Check that <code class="highlighter-rouge">README</code> and <code
class="highlighter-rouge">site/_docs/howto.md</code> have the correct version
number.</li>
<li>Check that <code class="highlighter-rouge">NOTICE</code> has the current
copyright year.</li>
<li>Set <code class="highlighter-rouge">version.major</code> and <code
class="highlighter-rouge">version.minor</code> in <code
class="highlighter-rouge">pom.xml</code>.</li>
@@ -592,7 +613,7 @@ the release, but itâs better to tro
<li>Decide the supported configurations of JDK, operating system and
Guava. These will probably be the same as those described in the
release notes of the previous release. Document them in the release
-notes. To test Guava version x.y, specify <code
class="highlighter-rouge">-Dguava.version=x.y</code></li>
+notes. To test Guava version <em>x.y</em>, specify <code
class="highlighter-rouge">-Dguava.version=x.y</code></li>
<li>Optional extra tests:
<ul>
<li><code class="highlighter-rouge">-Dcalcite.test.db=mysql</code></li>
@@ -665,15 +686,13 @@ Note that when performing the dry run <c
The version will be automatically changed when performing the release for
real.</p>
<ul>
- <li>In the <code class="highlighter-rouge">target</code> directory should be
these 8 files, among others:
+ <li>In the <code class="highlighter-rouge">target</code> directory should be
these 6 files, among others:
<ul>
<li>apache-calcite-X.Y.Z-src.tar.gz</li>
<li>apache-calcite-X.Y.Z-src.tar.gz.asc</li>
- <li>apache-calcite-X.Y.Z-src.tar.gz.md5</li>
<li>apache-calcite-X.Y.Z-src.tar.gz.sha256</li>
<li>apache-calcite-X.Y.Z-src.zip</li>
<li>apache-calcite-X.Y.Z-src.zip.asc</li>
- <li>apache-calcite-X.Y.Z-src.zip.md5</li>
<li>apache-calcite-X.Y.Z-src.zip.sha256</li>
</ul>
</li>
@@ -766,33 +785,23 @@ gpg --recv-keys key
<span class="c"># Check keys</span>
curl -O https://dist.apache.org/repos/dist/release/calcite/KEYS
-<span class="c"># Sign/check md5 and sha1 hashes</span>
-<span class="c"># (Assumes your O/S has 'md5' and 'sha1' commands.)</span>
+<span class="c"># Sign/check sha256 hashes</span>
+<span class="c"># (Assumes your O/S has a 'shasum' command.)</span>
<span class="k">function </span>checkHash<span class="o">()</span> <span
class="o">{</span>
<span class="nb">cd</span> <span class="s2">"</span><span
class="nv">$1</span><span class="s2">"</span>
<span class="k">for </span>i <span class="k">in</span> <span
class="k">*</span>.<span class="o">{</span>zip,pom,gz<span class="o">}</span>;
<span class="k">do
if</span> <span class="o">[</span> ! -f <span class="nv">$i</span> <span
class="o">]</span>; <span class="k">then
continue
fi
- if</span> <span class="o">[</span> -f <span class="nv">$i</span>.md5 <span
class="o">]</span>; <span class="k">then
- if</span> <span class="o">[</span> <span class="s2">"</span><span
class="k">$(</span>cat <span class="nv">$i</span>.md5<span
class="k">)</span><span class="s2">"</span> <span class="o">=</span> <span
class="s2">"</span><span class="k">$(</span>md5 -q <span
class="nv">$i</span><span class="k">)</span><span class="s2">"</span> <span
class="o">]</span>; <span class="k">then
- </span><span class="nb">echo</span> <span class="nv">$i</span>.md5
present and correct
- <span class="k">else
- </span><span class="nb">echo</span> <span class="nv">$i</span>.md5
does not match
- <span class="k">fi
- else
- </span>md5 -q <span class="nv">$i</span> > <span
class="nv">$i</span>.md5
- <span class="nb">echo</span> <span class="nv">$i</span>.md5 created
- <span class="k">fi
- if</span> <span class="o">[</span> -f <span class="nv">$i</span>.sha1
<span class="o">]</span>; <span class="k">then
- if</span> <span class="o">[</span> <span class="s2">"</span><span
class="k">$(</span>cat <span class="nv">$i</span>.sha1<span
class="k">)</span><span class="s2">"</span> <span class="o">=</span> <span
class="s2">"</span><span class="k">$(</span>sha1 -q <span
class="nv">$i</span><span class="k">)</span><span class="s2">"</span> <span
class="o">]</span>; <span class="k">then
- </span><span class="nb">echo</span> <span class="nv">$i</span>.sha1
present and correct
+ if</span> <span class="o">[</span> -f <span class="nv">$i</span>.sha256
<span class="o">]</span>; <span class="k">then
+ if</span> <span class="o">[</span> <span class="s2">"</span><span
class="k">$(</span>cat <span class="nv">$i</span>.sha256<span
class="k">)</span><span class="s2">"</span> <span class="o">=</span> <span
class="s2">"</span><span class="k">$(</span>shasum -a 256 <span
class="nv">$i</span><span class="k">)</span><span class="s2">"</span> <span
class="o">]</span>; <span class="k">then
+ </span><span class="nb">echo</span> <span class="nv">$i</span>.sha256
present and correct
<span class="k">else
- </span><span class="nb">echo</span> <span class="nv">$i</span>.sha1
does not match
+ </span><span class="nb">echo</span> <span class="nv">$i</span>.sha256
does not match
<span class="k">fi
else
- </span>sha1 -q <span class="nv">$i</span> > <span
class="nv">$i</span>.sha1
- <span class="nb">echo</span> <span class="nv">$i</span>.sha1 created
+ </span>shasum -a 256 <span class="nv">$i</span> > <span
class="nv">$i</span>.sha256
+ <span class="nb">echo</span> <span class="nv">$i</span>.sha256 created
<span class="k">fi
done</span>
<span class="o">}</span>
@@ -814,7 +823,7 @@ Thanks to everyone who has contributed t
https://github.com/apache/calcite/blob/XXXX/site/_docs/history.md
The commit to be voted upon:
-http://git-wip-us.apache.org/repos/asf/calcite/commit/NNNNNN
+https://git-wip-us.apache.org/repos/asf/calcite/commit/NNNNNN
Its hash is XXXX.
@@ -822,10 +831,8 @@ The artifacts to be voted on are located
https://dist.apache.org/repos/dist/dev/calcite/apache-calcite-X.Y.Z-rcN/
The hashes of the artifacts are as follows:
-src.tar.gz.md5 XXXX
-src.tar.gz.sha1 XXXX
-src.zip.md5 XXXX
-src.zip.sha1 XXXX
+src.tar.gz.sha256 XXXX
+src.zip.sha256 XXXX
A staged Maven repository is available for review at:
https://repository.apache.org/content/repositories/orgapachecalcite-NNNN
@@ -878,10 +885,10 @@ thread to discuss.
Julian</code></pre></figure>
-<p>Use the <a href="http://s.apache.org">Apache URL shortener</a> to generate
+<p>Use the <a href="https://s.apache.org">Apache URL shortener</a> to generate
shortened URLs for the vote proposal and result emails. Examples:
-<a
href="http://s.apache.org/calcite-1.2-vote">s.apache.org/calcite-1.2-vote</a>
and
-<a
href="http://s.apache.org/calcite-1.2-result">s.apache.org/calcite-1.2-result</a>.</p>
+<a
href="https://s.apache.org/calcite-1.2-vote">s.apache.org/calcite-1.2-vote</a>
and
+<a
href="https://s.apache.org/calcite-1.2-result">s.apache.org/calcite-1.2-result</a>.</p>
<h2 id="publishing-a-release-for-calcite-committers">Publishing a release (for
Calcite committers)</h2>
@@ -930,7 +937,7 @@ svn ci</code></pre></figure>
<p>Svnpubsub will publish to the
<a href="https://dist.apache.org/repos/dist/release/calcite">release repo</a>
and propagate to the
-<a href="http://www.apache.org/dyn/closer.cgi/calcite">mirrors</a> within 24
hours.</p>
+<a href="https://www.apache.org/dyn/closer.cgi/calcite">mirrors</a> within 24
hours.</p>
<p>If there are now more than 2 releases, clear out the oldest ones:</p>
@@ -939,7 +946,7 @@ svn rm apache-calcite-X.Y.Z
svn ci</code></pre></figure>
<p>The old releases will remain available in the
-<a href="http://archive.apache.org/dist/calcite/">release archive</a>.</p>
+<a href="https://archive.apache.org/dist/calcite/">release archive</a>.</p>
<p>You should receive an email from the <a
href="https://reporter.apache.org/">Apache Reporter Service</a>.
Make sure to add the version number and date of the latest release at the site
linked to in the email.</p>
Modified: calcite/site/docs/index.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/index.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/docs/index.html (original)
+++ calcite/site/docs/index.html Mon Mar 19 15:59:20 2018
@@ -216,7 +216,7 @@ using other adapters, and about using Ca
COUNT(DISTINCT â¦) and FILTER), HAVING, ORDER BY (including NULLS
FIRST/LAST), set operations (UNION, INTERSECT, MINUS), sub-queries
(including correlated sub-queries), windowed aggregates, LIMIT
-(syntax as <a
href="http://www.postgresql.org/docs/8.4/static/sql-select.html#SQL-LIMIT">Postgres</a>);
+(syntax as <a
href="https://www.postgresql.org/docs/8.4/static/sql-select.html#SQL-LIMIT">Postgres</a>);
more details in the <a href="reference.html">SQL reference</a></li>
<li>Local and remote JDBC drivers; see <a
href="avatica_overview.html">Avatica</a></li>
<li>Several <a href="adapter.html">adapters</a></li>
Modified: calcite/site/docs/lattice.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/lattice.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/docs/lattice.html (original)
+++ calcite/site/docs/lattice.html Mon Mar 19 15:59:20 2018
@@ -113,9 +113,9 @@ schema. In particular, all relationships
from a fact table at the center of the star.</p>
<p>The name derives from the mathematics: a
-<a href="http://en.wikipedia.org/wiki/Lattice_(order)">lattice</a>
+<a href="https://en.wikipedia.org/wiki/Lattice_(order)">lattice</a>
is a
-<a href="http://en.wikipedia.org/wiki/Partially_ordered_set">partially
+<a href="https://en.wikipedia.org/wiki/Partially_ordered_set">partially
ordered set</a> where any two elements have a unique greatest lower
bound and least upper bound.</p>
Modified: calcite/site/docs/pig_adapter.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/pig_adapter.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/docs/pig_adapter.html (original)
+++ calcite/site/docs/pig_adapter.html Mon Mar 19 15:59:20 2018
@@ -107,7 +107,7 @@
<h1 id="overview">Overview</h1>
<p>The Pig adapter allows you to write queries in SQL and execute them using
-<a href="http://pig.apache.org">Apache Pig</a>.</p>
+<a href="https://pig.apache.org">Apache Pig</a>.</p>
<h1 id="a-simple-example">A simple example</h1>
@@ -155,7 +155,7 @@ as follows.</p>
<span class="n">t</span> <span class="o">=</span> <span class="k">JOIN</span>
<span class="n">t</span> <span class="k">BY</span> <span
class="n">tc1</span><span class="p">,</span> <span class="n">s</span> <span
class="k">BY</span> <span class="n">sc0</span><span
class="p">;</span></code></pre></figure>
<p>which is then executed using Pigâs runtime, typically MapReduce on
-<a href="http://hadoop.apache.org/">Apache Hadoop</a>.</p>
+<a href="https://hadoop.apache.org/">Apache Hadoop</a>.</p>
<h1 id="relationship-to-piglet">Relationship to Piglet</h1>
Modified: calcite/site/docs/powered_by.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/powered_by.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/docs/powered_by.html (original)
+++ calcite/site/docs/powered_by.html Mon Mar 19 15:59:20 2018
@@ -192,7 +192,7 @@ component provides a SQL interface to
<h3 id="dremio">Dremio</h3>
-<p><a href="http://www.dremio.com">Dremio</a>
+<p><a href="https://www.dremio.com">Dremio</a>
uses Calcite for SQL parsing and cost-based query optimization.</p>
<h3 id="mapd">MapD</h3>
@@ -211,7 +211,7 @@ It uses Calcite to transparently rewrite
<p><a href="https://github.com/twilmes/sql-gremlin">SQL-Gremlin</a>
is a SQL interface to a
-<a href="http://tinkerpop.apache.org/">Apache TinkerPop</a>-enabled
+<a href="https://tinkerpop.apache.org/">Apache TinkerPop</a>-enabled
graph database.</p>
Modified: calcite/site/docs/reference.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/reference.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/docs/reference.html (original)
+++ calcite/site/docs/reference.html Mon Mar 19 15:59:20 2018
@@ -163,7 +163,7 @@
<h2 id="grammar">Grammar</h2>
-<p>SQL grammar in <a
href="http://en.wikipedia.org/wiki/Backus%E2%80%93Naur_Form">BNF</a>-like
+<p>SQL grammar in <a
href="https://en.wikipedia.org/wiki/Backus%E2%80%93Naur_Form">BNF</a>-like
form.</p>
<figure class="highlight"><pre><code class="language-sql"
data-lang="sql"><span class="k">statement</span><span class="p">:</span>
Modified: calcite/site/docs/spatial.html
URL:
http://svn.apache.org/viewvc/calcite/site/docs/spatial.html?rev=1827211&r1=1827210&r2=1827211&view=diff
==============================================================================
--- calcite/site/docs/spatial.html (original)
+++ calcite/site/docs/spatial.html Mon Mar 19 15:59:20 2018
@@ -108,7 +108,7 @@
OpenGIS Simple Features Implementation Specification for SQL,
<a href="http://www.opengeospatial.org/standards/sfs">version 1.2.1</a>,
a standard implemented by spatial databases such as
-<a href="http://postgis.net/">PostGIS</a>
+<a href="https://postgis.net/">PostGIS</a>
and <a href="http://www.h2gis.org/">H2GIS</a>.</p>
<p>We also aim to add optimizer support for