Author: elserj
Date: Fri May 20 15:29:32 2016
New Revision: 1744758
URL: http://svn.apache.org/viewvc?rev=1744758&view=rev
Log:
Updates to the Avatica website pending 1.8.0
Added:
calcite/site/avatica/docs/compatibility.html
Modified:
calcite/site/avatica/docs/client_reference.html
calcite/site/avatica/docs/history.html
calcite/site/avatica/docs/howto.html
calcite/site/avatica/docs/index.html
calcite/site/avatica/docs/json_reference.html
calcite/site/avatica/docs/protobuf_reference.html
calcite/site/avatica/docs/roadmap.html
calcite/site/avatica/docs/security.html
Modified: calcite/site/avatica/docs/client_reference.html
URL:
http://svn.apache.org/viewvc/calcite/site/avatica/docs/client_reference.html?rev=1744758&r1=1744757&r2=1744758&view=diff
==============================================================================
--- calcite/site/avatica/docs/client_reference.html (original)
+++ calcite/site/avatica/docs/client_reference.html Fri May 20 15:29:32 2016
@@ -110,6 +110,8 @@
+
+
@@ -134,6 +136,8 @@
+
+
</optgroup>
@@ -165,6 +169,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -189,6 +221,8 @@
+
+
@@ -213,6 +247,8 @@
+
+
@@ -237,6 +273,8 @@
+
+
@@ -261,6 +299,8 @@
+
+
</optgroup>
@@ -292,6 +332,8 @@
+
+
@@ -316,6 +358,8 @@
+
+
@@ -340,6 +384,8 @@
+
+
</optgroup>
@@ -470,6 +516,32 @@ is only necessary if Avatica is configur
<dd>
<p><em>Required</em>: No.</p>
</dd>
+ <dt><strong><a name="principal" href="#principal">principal</a></strong></dt>
+ <dd>
+ <p><em>Description</em>: The Kerberos principal which can be used by the
Avatica JDBC Driver
+to automatically perform a Kerberos login before attempting to contact the
Avatica
+server. If this property is provided, it is also expected that <code
class="highlighter-rouge">keytab</code> is provided
+and that the Avatica server is configured for SPNEGO authentication. Users can
perform
+their own Kerberos login; this option is provided only as a convenience.</p>
+ </dd>
+ <dd>
+ <p><em>Default</em>: <code class="highlighter-rouge">null</code>.</p>
+ </dd>
+ <dd>
+ <p><em>Required</em>: No.</p>
+ </dd>
+ <dt><strong><a name="keytab" href="#keytab">keytab</a></strong></dt>
+ <dd>
+ <p><em>Description</em>: The Kerberos keytab which contains the secret
material to perform
+a Kerberos login with the <code class="highlighter-rouge">principal</code>.
The value should be a path on the local
+filesystem to a regular file.</p>
+ </dd>
+ <dd>
+ <p><em>Default</em>: <code class="highlighter-rouge">null</code>.</p>
+ </dd>
+ <dd>
+ <p><em>Required</em>: No.</p>
+ </dd>
</dl>
@@ -542,6 +614,10 @@ is only necessary if Avatica is configur
+
+
+
+
<li class=""><a href="/avatica/docs/index.html">Background</a></li>
@@ -584,6 +660,10 @@ is only necessary if Avatica is configur
+
+
+
+
<li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
@@ -644,6 +724,10 @@ is only necessary if Avatica is configur
+
+
+
+
<li class=""><a href="/avatica/docs/json_reference.html">JSON
Reference</a></li>
@@ -682,6 +766,10 @@ is only necessary if Avatica is configur
+
+
+
+
<li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf
Reference</a></li>
@@ -708,6 +796,10 @@ is only necessary if Avatica is configur
+
+
+
+
<li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
@@ -754,10 +846,36 @@ is only necessary if Avatica is configur
+
+
+
+
<li class=""><a href="/avatica/docs/security.html">Security</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a
href="/avatica/docs/compatibility.html">Compatibility</a></li>
+
+
+
</ul>
@@ -784,6 +902,10 @@ is only necessary if Avatica is configur
+
+
+
+
<li class=""><a href="/avatica/docs/history.html">History</a></li>
@@ -835,6 +957,10 @@ is only necessary if Avatica is configur
+
+
+
+
@@ -846,6 +972,10 @@ is only necessary if Avatica is configur
+
+
+
+
Added: calcite/site/avatica/docs/compatibility.html
URL:
http://svn.apache.org/viewvc/calcite/site/avatica/docs/compatibility.html?rev=1744758&view=auto
==============================================================================
--- calcite/site/avatica/docs/compatibility.html (added)
+++ calcite/site/avatica/docs/compatibility.html Fri May 20 15:29:32 2016
@@ -0,0 +1,1033 @@
+<!DOCTYPE HTML>
+<html lang="en-US">
+<head>
+ <meta charset="UTF-8">
+ <title>Compatibility</title>
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta name="generator" content="Jekyll v3.0.3">
+ <link rel="stylesheet"
href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic,900">
+ <link rel="stylesheet" href="/avatica/css/screen.css">
+ <link rel="icon" type="image/x-icon" href="/avatica/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="/avatica/">Home</a>
+ </li>
+ <li class="">
+ <a href="/avatica/downloads/">Download</a>
+ </li>
+ <li class="">
+ <a href="/avatica/community/">Community</a>
+ </li>
+ <li class="">
+ <a href="/avatica/develop/">Develop</a>
+ </li>
+ <li class="">
+ <a href="/avatica/news/">News</a>
+ </li>
+ <li class="current">
+ <a href="/avatica/docs/">Docs</a>
+ </li>
+</ul>
+
+ </nav>
+ <div class="grid">
+ <div class="unit one-third center-on-mobiles">
+ <h1>
+ <a href="/avatica/">
+ <span class="sr-only">Apache Calcite Avatica</span>
+ <img src="/avatica/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="/avatica/">Home</a>
+ </li>
+ <li class="">
+ <a href="/avatica/downloads/">Download</a>
+ </li>
+ <li class="">
+ <a href="/avatica/community/">Community</a>
+ </li>
+ <li class="">
+ <a href="/avatica/develop/">Develop</a>
+ </li>
+ <li class="">
+ <a href="/avatica/news/">News</a>
+ </li>
+ <li class="current">
+ <a href="/avatica/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="Reference">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ </optgroup>
+
+ <optgroup label="Meta">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ </optgroup>
+
+ </select>
+</div>
+
+
+ <div class="unit four-fifths">
+ <article>
+ <h1>Compatibility</h1>
+ <!--
+
+-->
+
+<p>Given Avaticaâs client-server model, it is no surprise that compatibility
is
+important to the users and developers of Apache Calcite Avatica. This document
+defines what guarantees are made by Avatica with respect to compatibility
+between Avatica client and server across versions. This document is still a
work
+in progress with many areas still requiring definition. Contributions are
always
+welcome.</p>
+
+<h2 id="avatica-technology-compatibility-kit-tck">Avatica Technology
Compatibility Kit (TCK)</h2>
+
+<p>The <a
href="https://github.com/apache/calcite/tree/master/avatica/tck">Avatica TCK
project</a> is a framework designed to automatically
+test an Avatica client against an Avatica server. A collection of JUnit tests,
+a YAML configuration file, and a Ruby script defines the TCK.
+The JUnit tests invoke specific portions of both the client and
+server components of Avatica to verify that they work as expected. The Ruby
+script uses the YAML configuration file to define the set of
+client and server version pairs to run the JUnit tests against.</p>
+
+<p>In the YAML configuration file, a name (e.g. <code
class="highlighter-rouge">1.6.0</code>) and the following three
+items define an Avatica version:</p>
+
+<ol>
+ <li>A filesystem path to an Avatica client jar (e.g.
groupId=org.apache.calcite.avatica, artifactId=avatica)</li>
+ <li>A URL to a running instance of an Avatica server</li>
+ <li>A JDBC URL template to the Avatica server for the Avatica client JDBC
driver.</li>
+</ol>
+
+<p>Users of the TCK define the collection of versions (defined by the above
+information) and the location of the <a
href="https://github.com/apache/calcite/tree/master/avatica/tck">avatica-tck</a>
jar by a YAML
+configuration file. An <a
href="https://github.com/apache/calcite/tree/master/avatica/tck/src/main/resources/example_config.yml">example
YAML configuration file</a> is
+bundled with the project.</p>
+
+<p>Traditionally, Avatica does not provide any implementation of the Avatica
server
+as the value in Avatica is recognized in the integrating project (e.g. Apache
+Drill or Apache Phoenix). However, for the purposes of compatibility testing,
it
+makes sense that Avatica provides a standalone server instance. A new artifact
+is introduced to Avatica with the original TCK codebase called
+<a
href="https://github.com/apache/calcite/tree/master/avatica/standalone-server">avatica-standalone-server</a>.
This artifact is a
+runnable jar (e.g. <code class="highlighter-rouge">java -jar</code>) which
starts an instance of the Avatica server
+on a random port using the in-memory <a href="http://hsqldb.org/">HSQLDB
database</a>. This
+artifacts makes it extremely simple to start a version of the Avatica server
for
+the specific version of Avatica to be tested.</p>
+
+<p>As mentioned, the Ruby script is the entry point for the TCK. Invoking the
Ruby
+script which prints a summary of testing each specified version against itself
and
+all other versions in the YAML configuration. An example summary is presented
+below which is the result of testing versions 1.6.0, 1.7.1 and
1.8.0-SNAPSHOT:</p>
+
+<p>```
+Summary:</p>
+
+<p>Identity test scenarios (ran 3)</p>
+
+<p>Testing identity for version v1.6.0: Passed
+Testing identity for version v1.7.1: Passed
+Testing identity for version v1.8.0-SNAPSHOT: Failed</p>
+
+<p>All test scenarios (ran 6)</p>
+
+<p>Testing client v1.6.0 against server v1.7.1: Passed
+Testing client v1.6.0 against server v1.8.0-SNAPSHOT: Failed
+Testing client v1.7.1 against server v1.6.0: Passed
+Testing client v1.7.1 against server v1.8.0-SNAPSHOT: Failed
+Testing client v1.8.0-SNAPSHOT against server v1.6.0: Failed
+Testing client v1.8.0-SNAPSHOT against server v1.7.1: Failed
+```</p>
+
+<p>It is not always expected that all tested version-pairs will pass unless the
+test is written with specific knowledge about past bugs in Avatica itself.
While
+Avatica tries to handle all of these edge cases implicitly, it is not always
+feasible or desirable to do so. Adding new test cases is as easy as writing a
+JUnit test case in the <a
href="https://github.com/apache/calcite/tree/master/avatica/tck/src/main/java/org/apache/calcite/avatica/tck/tests">TCK
module</a>, but there is presently no
+automation around verifying the test cases as a part of the Maven build.</p>
+
+<p>For more information on running this TCK, including specific instructions
for
+running the TCK, reference the provided <a
href="https://github.com/apache/calcite/tree/master/avatica/tck/README.md">README</a>
file.</p>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <div class="section-nav">
+ <div class="left align-right">
+
+
+
+ <a href="/avatica/docs/security.html" class="prev">Previous</a>
+
+ </div>
+ <div class="right align-left">
+
+
+
+ <a href="/avatica/docs/history.html" class="next">Next</a>
+
+ </div>
+ </div>
+ <div class="clear"></div>
+
+
+ </article>
+ </div>
+
+ <div class="unit one-fifth hide-on-mobiles">
+ <aside>
+
+ <h4>Overview</h4>
+
+
+<ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/avatica/docs/index.html">Background</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
+
+
+
+</ul>
+
+
+ <h4>Reference</h4>
+
+
+<ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/avatica/docs/client_reference.html">Client
Reference</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/avatica/docs/json_reference.html">JSON
Reference</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf
Reference</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/avatica/docs/security.html">Security</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class="current"><a
href="/avatica/docs/compatibility.html">Compatibility</a></li>
+
+
+
+</ul>
+
+
+ <h4>Meta</h4>
+
+
+<ul>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a href="/avatica/docs/history.html">History</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="/avatica/img/feather.png" width="190" height="77" alt="Apache
Logo"></a>
+ </div>
+ <div id="copyright">
+ <p>The contents of this website are © 2016
+ <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/avatica/docs/history.html
URL:
http://svn.apache.org/viewvc/calcite/site/avatica/docs/history.html?rev=1744758&r1=1744757&r2=1744758&view=diff
==============================================================================
--- calcite/site/avatica/docs/history.html (original)
+++ calcite/site/avatica/docs/history.html Fri May 20 15:29:32 2016
@@ -110,6 +110,8 @@
+
+
@@ -134,6 +136,8 @@
+
+
</optgroup>
@@ -165,6 +169,8 @@
+
+
@@ -189,6 +195,8 @@
+
+
@@ -213,6 +221,8 @@
+
+
@@ -237,6 +247,8 @@
+
+
@@ -261,6 +273,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
</optgroup>
@@ -292,6 +332,8 @@
+
+
@@ -316,6 +358,8 @@
+
+
@@ -340,6 +384,8 @@
+
+
</optgroup>
@@ -493,12 +539,15 @@ for information about previous Avatica r
+
+
+
<div class="section-nav">
<div class="left align-right">
- <a href="/avatica/docs/security.html" class="prev">Previous</a>
+ <a href="/avatica/docs/compatibility.html"
class="prev">Previous</a>
</div>
<div class="right align-left">
@@ -549,6 +598,10 @@ for information about previous Avatica r
+
+
+
+
<li class=""><a href="/avatica/docs/index.html">Background</a></li>
@@ -591,6 +644,10 @@ for information about previous Avatica r
+
+
+
+
<li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
@@ -651,6 +708,10 @@ for information about previous Avatica r
+
+
+
+
<li class=""><a href="/avatica/docs/json_reference.html">JSON
Reference</a></li>
@@ -689,6 +750,10 @@ for information about previous Avatica r
+
+
+
+
<li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf
Reference</a></li>
@@ -715,6 +780,10 @@ for information about previous Avatica r
+
+
+
+
<li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
@@ -761,10 +830,36 @@ for information about previous Avatica r
+
+
+
+
<li class=""><a href="/avatica/docs/security.html">Security</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a
href="/avatica/docs/compatibility.html">Compatibility</a></li>
+
+
+
</ul>
@@ -791,6 +886,10 @@ for information about previous Avatica r
+
+
+
+
<li class="current"><a href="/avatica/docs/history.html">History</a></li>
@@ -842,6 +941,10 @@ for information about previous Avatica r
+
+
+
+
@@ -853,6 +956,10 @@ for information about previous Avatica r
+
+
+
+
Modified: calcite/site/avatica/docs/howto.html
URL:
http://svn.apache.org/viewvc/calcite/site/avatica/docs/howto.html?rev=1744758&r1=1744757&r2=1744758&view=diff
==============================================================================
--- calcite/site/avatica/docs/howto.html (original)
+++ calcite/site/avatica/docs/howto.html Fri May 20 15:29:32 2016
@@ -110,6 +110,8 @@
+
+
@@ -134,6 +136,8 @@
+
+
</optgroup>
@@ -165,6 +169,8 @@
+
+
@@ -189,6 +195,8 @@
+
+
@@ -213,6 +221,8 @@
+
+
@@ -237,6 +247,8 @@
+
+
@@ -261,6 +273,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
</optgroup>
@@ -292,6 +332,8 @@
+
+
@@ -316,6 +358,8 @@
+
+
@@ -340,6 +384,8 @@
+
+
</optgroup>
@@ -362,30 +408,15 @@ adapters.</p>
<li><a href="#building-from-a-source-distribution"
id="markdown-toc-building-from-a-source-distribution">Building from a source
distribution</a></li>
<li><a href="#building-from-git"
id="markdown-toc-building-from-git">Building from git</a></li>
<li><a href="#running-tests" id="markdown-toc-running-tests">Running
tests</a></li>
- <li><a href="#running-integration-tests"
id="markdown-toc-running-integration-tests">Running integration tests</a>
<ul>
- <li><a href="#vm-preparation" id="markdown-toc-vm-preparation">VM
preparation</a></li>
- <li><a href="#vm-management" id="markdown-toc-vm-management">VM
management</a></li>
- <li><a href="#suggested-test-flow"
id="markdown-toc-suggested-test-flow">Suggested test flow</a></li>
- <li><a href="#integration-tests-technical-details"
id="markdown-toc-integration-tests-technical-details">Integration tests
technical details</a></li>
- </ul>
- </li>
<li><a href="#contributing"
id="markdown-toc-contributing">Contributing</a></li>
<li><a href="#getting-started" id="markdown-toc-getting-started">Getting
started</a></li>
- <li><a href="#tracing" id="markdown-toc-tracing">Tracing</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>
- <li><a href="#implementing-an-adapter"
id="markdown-toc-implementing-an-adapter">Implementing an adapter</a> <ul>
- <li><a href="#testing-adapter-in-java"
id="markdown-toc-testing-adapter-in-java">Testing adapter in Java</a></li>
- </ul>
- </li>
<li><a href="#advanced-topics-for-developers"
id="markdown-toc-advanced-topics-for-developers">Advanced topics for
developers</a> <ul>
- <li><a href="#javatypefactory"
id="markdown-toc-javatypefactory">JavaTypeFactory</a></li>
<li><a href="#rebuilding-generated-protocol-buffer-code"
id="markdown-toc-rebuilding-generated-protocol-buffer-code">Rebuilding
generated Protocol Buffer code</a></li>
</ul>
</li>
<li><a href="#advanced-topics-for-committers"
id="markdown-toc-advanced-topics-for-committers">Advanced topics for
committers</a> <ul>
<li><a href="#set-up-pgp-signing-keys-for-calcite-committers"
id="markdown-toc-set-up-pgp-signing-keys-for-calcite-committers">Set up PGP
signing keys (for Calcite committers)</a></li>
+ <li><a href="#run-a-gpg-agent" id="markdown-toc-run-a-gpg-agent">Run a
GPG agent</a></li>
<li><a href="#making-a-snapshot-for-calcite-committers"
id="markdown-toc-making-a-snapshot-for-calcite-committers">Making a snapshot
(for Calcite committers)</a></li>
<li><a href="#making-a-release-for-calcite-committers"
id="markdown-toc-making-a-release-for-calcite-committers">Making a release (for
Calcite committers)</a></li>
<li><a
href="#cleaning-up-after-a-failed-release-attempt-for-calcite-committers"
id="markdown-toc-cleaning-up-after-a-failed-release-attempt-for-calcite-committers">Cleaning
up after a failed release attempt (for Calcite committers)</a></li>
@@ -448,94 +479,11 @@ tests.</p>
<p>The test suite will run by default when you build, unless you specify
<code class="highlighter-rouge">-DskipTests</code>:</p>
-<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="gp">$ </span>mvn -DskipTests clean install
-<span class="gp">$ </span>mvn <span
class="nb">test</span></code></pre></figure>
-
-<p>There are other options that control which tests are run, and in what
-environment, as follows.</p>
-
-<ul>
- <li><code class="highlighter-rouge">-Dcalcite.test.db=DB</code> (where db is
<code class="highlighter-rouge">h2</code>, <code
class="highlighter-rouge">hsqldb</code>, <code
class="highlighter-rouge">mysql</code>, or <code
class="highlighter-rouge">postgresql</code>) allows you
-to change the JDBC data source for the test suite. Calciteâs test
-suite requires a JDBC data source populated with the foodmart data
-set.
- <ul>
- <li><code class="highlighter-rouge">hsqldb</code>, the default, uses an
in-memory hsqldb database.</li>
- <li>All others access a test virtual machine
-(see <a href="#running-integration-tests">integration tests</a> below).
-<code class="highlighter-rouge">mysql</code> and <code
class="highlighter-rouge">postgresql</code> might be somewhat faster than
hsqldb, but you need
-to populate it (i.e. provision a VM).</li>
- </ul>
- </li>
- <li><code class="highlighter-rouge">-Dcalcite.debug</code> prints extra
debugging information to stdout.</li>
- <li><code class="highlighter-rouge">-Dcalcite.test.slow</code> enables tests
that take longer to execute. For
-example, there are tests that create virtual TPC-H and TPC-DS schemas
-in-memory and run tests from those benchmarks.</li>
- <li><code class="highlighter-rouge">-Dcalcite.test.splunk</code> enables
tests that run against Splunk.
-Splunk must be installed and running.</li>
-</ul>
-
-<h2 id="running-integration-tests">Running integration tests</h2>
-
-<p>For testing Calciteâs external adapters, a test virtual machine should be
used.
-The VM includes H2, HSQLDB, MySQL, MongoDB, and PostgreSQL.</p>
-
-<p>Test VM requires 5GiB of disk space and it takes 30 minutes to build.</p>
-
-<p>Note: you can use <a
href="https://github.com/vlsi/calcite-test-dataset">calcite-test-dataset</a>
- to populate your own database, however it is recommended to use test VM so
the test environment can be reproduced.</p>
-
-<h3 id="vm-preparation">VM preparation</h3>
-
-<p>0) Install dependencies: <a href="https://www.vagrantup.com/">Vagrant</a>
and <a href="https://www.virtualbox.org/">VirtualBox</a></p>
-
-<p>1) Clone https://github.com/vlsi/calcite-test-dataset.git at the same level
as calcite repository.
-For instance:</p>
-
-<figure class="highlight"><pre><code class="language-bash"
data-lang="bash">code
- +-- calcite
- +-- calcite-test-dataset</code></pre></figure>
-
-<p>Note: integration tests search for ../calcite-test-dataset or
../../calcite-test-dataset.
- You can specify full path via calcite.test.dataset system property.</p>
-
-<p>2) Build and start the VM:</p>
-
-<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="nb">cd </span>calcite-test-dataset <span
class="o">&&</span> mvn install</code></pre></figure>
-
-<h3 id="vm-management">VM management</h3>
-
-<p>Test VM is provisioned by Vagrant, so regular Vagrant <code
class="highlighter-rouge">vagrant up</code> and <code
class="highlighter-rouge">vagrant halt</code> should be used to start and stop
the VM.
-The connection strings for different databases are listed in <a
href="https://github.com/vlsi/calcite-test-dataset">calcite-test-dataset</a>
readme.</p>
-
-<h3 id="suggested-test-flow">Suggested test flow</h3>
-
-<p>Note: test VM should be started before you launch integration tests.
Calcite itself does not start/stop the VM.</p>
-
-<p>Command line:</p>
-
-<ul>
- <li>Executing regular unit tests (does not require external data): no
change. <code class="highlighter-rouge">mvn test</code> or <code
class="highlighter-rouge">mvn install</code>.</li>
- <li>Executing all tests, for all the DBs: <code
class="highlighter-rouge">mvn verify -Pit</code>. <code
class="highlighter-rouge">it</code> stands for âintegration-testâ. <code
class="highlighter-rouge">mvn install -Pit</code> works as well.</li>
- <li>Executing just tests for external DBs, excluding unit tests: <code
class="highlighter-rouge">mvn -Dtest=foo -DfailIfNoTests=false -Pit
verify</code></li>
- <li>Executing just MongoDB tests: <code class="highlighter-rouge">cd mongo;
mvn verify -Pit</code></li>
-</ul>
-
-<p>From within IDE:</p>
+<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="gp">$ </span>mvn clean verify
-Dcheckstyle.skip</code></pre></figure>
-<ul>
- <li>Executing regular unit tests: no change.</li>
- <li>Executing MongoDB tests: run <code
class="highlighter-rouge">MongoAdapterIT.java</code> as usual (no additional
properties are required)</li>
- <li>Executing MySQL tests: run <code
class="highlighter-rouge">JdbcTest</code> and <code
class="highlighter-rouge">JdbcAdapterTest</code> with setting <code
class="highlighter-rouge">-Dcalcite.test.db=mysql</code></li>
- <li>Executing PostgreSQL tests: run <code
class="highlighter-rouge">JdbcTest</code> and <code
class="highlighter-rouge">JdbcAdapterTest</code> with setting <code
class="highlighter-rouge">-Dcalcite.test.db=postgresql</code></li>
-</ul>
-
-<h3 id="integration-tests-technical-details">Integration tests technical
details</h3>
-
-<p>Tests with external data are executed at mavenâs integration-test phase.
-We do not currently use pre-integration-test/post-integration-test, however we
could use that in future.
-The verification of build pass/failure is performed at verify phase.
-Integration tests should be named <code
class="highlighter-rouge">...IT.java</code>, so they are not picked up on unit
test execution.</p>
+<p>By default, invoking the <code class="highlighter-rouge">verify</code>
Maven lifecycle phase will also cause checkstyle
+rules to be run. It is expected that contributions pass the checkstyle rules;
however,
+it is common to ignore these while working on a feature/bug and fix them at
the end.</p>
<h2 id="contributing">Contributing</h2>
@@ -545,170 +493,12 @@ Integration tests should be named <code
<p>See the <a href="/avatica/develop/#getting-started">developers
guide</a>.</p>
-<h2 id="tracing">Tracing</h2>
-
-<p>To enable tracing, add the following flags to the java command line:</p>
-
-<p><code class="highlighter-rouge">-Dcalcite.debug=true</code></p>
-
-<p>The first flag causes Calcite to print the Java code it generates
-(to execute queries) to stdout. It is especially useful if you are debugging
-mysterious problems like this:</p>
-
-<p><code class="highlighter-rouge">Exception in thread "main"
java.lang.ClassCastException: Integer cannot be cast to Long
- at Baz$1$1.current(Unknown Source)</code></p>
-
-<p>By default, Calcite uses the Log4j bindings for SLF4J. There is a provided
configuration
-file which outputs logging at the INFO level to the console in <code
class="highlighter-rouge">core/src/test/resources/log4j.properties</code>.
-You can modify the level for the rootLogger to increase verbosity or change
the level
-for a specific class if you so choose.</p>
-
-<figure class="highlight"><pre><code class="language-properties"
data-lang="properties"><span class="c"># Change rootLogger level to WARN
-</span><span class="py">log4j.rootLogger</span><span class="p">=</span><span
class="s">WARN, A1</span>
-<span class="c"># Increase level to DEBUG for RelOptPlanner
-</span><span
class="py">log4j.logger.org.apache.calcite.plan.RelOptPlanner</span><span
class="p">=</span><span class="s">DEBUG</span>
-<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="csv-adapter">CSV adapter</h2>
-
-<p>See the <a href="/docs/tutorial.html">tutorial</a>.</p>
-
-<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>
-
-<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
-<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>
-
-<p>Log into MongoDB to check itâs there:</p>
-
-<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="gp">$ </span>mongo
-MongoDB shell version: 2.4.3
-connecting to: <span class="nb">test</span>
-<span class="gp">> </span>db.zips.find<span class="o">()</span>.limit<span
class="o">(</span>3<span class="o">)</span>
-<span class="o">{</span> <span class="s2">"city"</span> : <span
class="s2">"ACMAR"</span>, <span class="s2">"loc"</span> : <span
class="o">[</span> -86.51557, 33.584132 <span class="o">]</span>, <span
class="s2">"pop"</span> : 6055, <span class="s2">"state"</span> : <span
class="s2">"AL"</span>, <span class="s2">"_id"</span> : <span
class="s2">"35004"</span> <span class="o">}</span>
-<span class="o">{</span> <span class="s2">"city"</span> : <span
class="s2">"ADAMSVILLE"</span>, <span class="s2">"loc"</span> : <span
class="o">[</span> -86.959727, 33.588437 <span class="o">]</span>, <span
class="s2">"pop"</span> : 10616, <span class="s2">"state"</span> : <span
class="s2">"AL"</span>, <span class="s2">"_id"</span> : <span
class="s2">"35005"</span> <span class="o">}</span>
-<span class="o">{</span> <span class="s2">"city"</span> : <span
class="s2">"ADGER"</span>, <span class="s2">"loc"</span> : <span
class="o">[</span> -87.167455, 33.434277 <span class="o">]</span>, <span
class="s2">"pop"</span> : 3205, <span class="s2">"state"</span> : <span
class="s2">"AL"</span>, <span class="s2">"_id"</span> : <span
class="s2">"35006"</span> <span class="o">}</span>
-<span class="gp">> </span><span class="nb">exit
-</span>bye</code></pre></figure>
-
-<p>Connect using the
-<a
href="https://github.com/apache/calcite/tree/master/avatica/mongodb/src/test/resources/mongo-zips-model.json">mongo-zips-model.json</a>
-Calcite model:</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>mongodb/target/test-classes/mongo-zips-model.json admin admin
-Connecting to jdbc:calcite:model<span
class="o">=</span>mongodb/target/test-classes/mongo-zips-model.json
-Connected to: Calcite <span class="o">(</span>version 1.x.x<span
class="o">)</span>
-Driver: Calcite JDBC Driver <span class="o">(</span>version 1.x.x<span
class="o">)</span>
-Autocommit status: <span class="nb">true
-</span>Transaction isolation: TRANSACTION_REPEATABLE_READ
-<span class="gp">sqlline> </span>!tables
-+------------+--------------+-----------------+---------------+
-| TABLE_CAT | TABLE_SCHEM | TABLE_NAME | TABLE_TYPE |
-+------------+--------------+-----------------+---------------+
-| null | mongo_raw | zips | TABLE |
-| null | mongo_raw | system.indexes | TABLE |
-| null | mongo | ZIPS | VIEW |
-| null | metadata | COLUMNS | SYSTEM_TABLE |
-| null | metadata | TABLES | SYSTEM_TABLE |
-+------------+--------------+-----------------+---------------+
-<span class="gp">sqlline> </span><span class="k">select </span>count<span
class="o">(</span><span class="k">*</span><span class="o">)</span> from zips;
-+---------+
-| EXPR<span class="nv">$0</span> |
-+---------+
-| 29467 |
-+---------+
-1 row selected <span class="o">(</span>0.746 seconds<span class="o">)</span>
-<span class="gp">sqlline> </span>!quit
-Closing: org.apache.calcite.jdbc.FactoryJdbc41<span
class="nv">$CalciteConnectionJdbc41</span>
-<span class="err">$</span></code></pre></figure>
-
-<h2 id="splunk-adapter">Splunk adapter</h2>
-
-<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>
-
-<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
-<code class="highlighter-rouge">-Dcalcite.test.splunk=true</code>.)</p>
-
-<h2 id="implementing-an-adapter">Implementing an adapter</h2>
-
-<p>New adapters can be created by implementing <code
class="highlighter-rouge">CalcitePrepare.Context</code>:</p>
-
-<figure class="highlight"><pre><code class="language-java"
data-lang="java"><span class="kn">import</span> <span
class="nn">org.apache.calcite.adapter.java.JavaTypeFactory</span><span
class="o">;</span>
-<span class="kn">import</span> <span
class="nn">org.apache.calcite.jdbc.CalcitePrepare</span><span class="o">;</span>
-<span class="kn">import</span> <span
class="nn">org.apache.calcite.jdbc.CalciteSchema</span><span class="o">;</span>
-
-<span class="kd">public</span> <span class="kd">class</span> <span
class="nc">AdapterContext</span> <span class="kd">implements</span> <span
class="n">CalcitePrepare</span><span class="o">.</span><span
class="na">Context</span> <span class="o">{</span>
- <span class="nd">@Override</span>
- <span class="kd">public</span> <span class="n">JavaTypeFactory</span> <span
class="n">getTypeFactory</span><span class="o">()</span> <span
class="o">{</span>
- <span class="c1">// adapter implementation</span>
- <span class="k">return</span> <span class="n">typeFactory</span><span
class="o">;</span>
- <span class="o">}</span>
-
- <span class="nd">@Override</span>
- <span class="kd">public</span> <span class="n">CalciteSchema</span> <span
class="n">getRootSchema</span><span class="o">()</span> <span class="o">{</span>
- <span class="c1">// adapter implementation</span>
- <span class="k">return</span> <span class="n">rootSchema</span><span
class="o">;</span>
- <span class="o">}</span>
-<span class="o">}</span></code></pre></figure>
-
-<h3 id="testing-adapter-in-java">Testing adapter in Java</h3>
-
-<p>The example below shows how SQL query can be submitted to
-<code class="highlighter-rouge">CalcitePrepare</code> with a custom context
(<code class="highlighter-rouge">AdapterContext</code> in this
-case). Calcite prepares and implements the query execution, using the
-resources provided by the <code class="highlighter-rouge">Context</code>.
<code class="highlighter-rouge">CalcitePrepare.PrepareResult</code>
-provides access to the underlying enumerable and methods for
-enumeration. The enumerable itself can naturally be some adapter
-specific implementation.</p>
-
-<figure class="highlight"><pre><code class="language-java"
data-lang="java"><span class="kn">import</span> <span
class="nn">org.apache.calcite.jdbc.CalcitePrepare</span><span class="o">;</span>
-<span class="kn">import</span> <span
class="nn">org.apache.calcite.prepare.CalcitePrepareImpl</span><span
class="o">;</span>
-<span class="kn">import</span> <span class="nn">org.junit.Test</span><span
class="o">;</span>
-
-<span class="kd">public</span> <span class="kd">class</span> <span
class="nc">AdapterContextTest</span> <span class="o">{</span>
- <span class="nd">@Test</span>
- <span class="kd">public</span> <span class="kt">void</span> <span
class="n">testSelectAllFromTable</span><span class="o">()</span> <span
class="o">{</span>
- <span class="n">AdapterContext</span> <span class="n">ctx</span> <span
class="o">=</span> <span class="k">new</span> <span
class="n">AdapterContext</span><span class="o">();</span>
- <span class="n">String</span> <span class="n">sql</span> <span
class="o">=</span> <span class="s">"SELECT * FROM TABLENAME"</span><span
class="o">;</span>
- <span class="n">Class</span> <span class="n">elementType</span> <span
class="o">=</span> <span class="n">Object</span><span class="o">[].</span><span
class="na">class</span><span class="o">;</span>
- <span class="n">CalcitePrepare</span><span class="o">.</span><span
class="na">PrepareResult</span><span class="o"><</span><span
class="n">Object</span><span class="o">></span> <span
class="n">prepared</span> <span class="o">=</span>
- <span class="k">new</span> <span
class="n">CalcitePrepareImpl</span><span class="o">().</span><span
class="na">prepareSql</span><span class="o">(</span><span
class="n">ctx</span><span class="o">,</span> <span class="n">sql</span><span
class="o">,</span> <span class="kc">null</span><span class="o">,</span> <span
class="n">elementType</span><span class="o">,</span> <span
class="o">-</span><span class="mi">1</span><span class="o">);</span>
- <span class="n">Object</span> <span class="n">enumerable</span> <span
class="o">=</span> <span class="n">prepared</span><span class="o">.</span><span
class="na">getExecutable</span><span class="o">();</span>
- <span class="c1">// etc.</span>
- <span class="o">}</span>
-<span class="o">}</span></code></pre></figure>
-
<h1 id="advanced-topics-for-developers">Advanced topics for developers</h1>
<p>The following sections might be of interest if you are adding features
to particular parts of the code base. You donât need to understand
these topics if you are just building from source and running tests.</p>
-<h2 id="javatypefactory">JavaTypeFactory</h2>
-
-<p>When Calcite compares types (instances of <code
class="highlighter-rouge">RelDataType</code>), it requires them to be the same
-object. If there are two distinct type instances that refer to the
-same Java type, Calcite may fail to recognize that they match. It is
-recommended to:</p>
-
-<ul>
- <li>Use a single instance of <code
class="highlighter-rouge">JavaTypeFactory</code> within the calcite
context;</li>
- <li>Store the types so that the same object is always returned for the same
type.</li>
-</ul>
-
<h2 id="rebuilding-generated-protocol-buffer-code">Rebuilding generated
Protocol Buffer code</h2>
<p>Calciteâs Avatica Server component supports RPC serialization
@@ -733,7 +523,7 @@ need to be re-generated only every build
<p>Then, re-generate the compiled code:</p>
-<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="gp">$ </span><span class="nb">cd </span>avatica
+<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="gp">$ </span><span class="nb">cd
</span>avatica/core
<span class="gp">$
</span>./src/main/scripts/generate-protobuf.sh</code></pre></figure>
<h1 id="advanced-topics-for-committers">Advanced topics for committers</h1>
@@ -750,6 +540,33 @@ create a key pair. (On Mac OS X, I did <
<p>Add your public key to the <code class="highlighter-rouge">KEYS</code> file
by following instructions in
the <code class="highlighter-rouge">KEYS</code> file.</p>
+<h2 id="run-a-gpg-agent">Run a GPG agent</h2>
+
+<p>By default, Maven plugins which require you to unlock a GPG secret key
+will prompt you in the terminal. To prevent you from having to enter
+this password numerous times, it is highly recommended to install and
+run <code class="highlighter-rouge">gpg-agent</code>.</p>
+
+<p>This can be started automatically via an <code
class="highlighter-rouge">~/.xsession</code> on Linux or some
+scripting in your shellâs configuration script of choice (e.g. <code
class="highlighter-rouge">~/.bashrc</code> or <code
class="highlighter-rouge">~/.zshrc</code>)</p>
+
+<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="nv">GPG_AGENT</span><span class="o">=</span><span
class="k">$(</span>which gpg-agent<span class="k">)</span>
+<span class="nv">GPG_TTY</span><span class="o">=</span><span
class="sb">`</span>tty<span class="sb">`</span>
+<span class="nb">export </span>GPG_TTY
+<span class="k">if</span> <span class="o">[[</span> -f <span
class="s2">"</span><span class="nv">$GPG_AGENT</span><span class="s2">"</span>
<span class="o">]]</span>; <span class="k">then
+ </span><span class="nv">envfile</span><span class="o">=</span><span
class="s2">"</span><span class="k">${</span><span class="nv">HOME</span><span
class="k">}</span><span class="s2">/.gnupg/gpg-agent.env"</span>
+
+ <span class="k">if </span><span class="nb">test</span> -f <span
class="s2">"</span><span class="nv">$envfile</span><span class="s2">"</span>
<span class="o">&&</span> <span class="nb">kill</span> -0 <span
class="k">$(</span>grep GPG_AGENT_INFO <span class="s2">"</span><span
class="nv">$envfile</span><span class="s2">"</span> | cut -d: -f 2<span
class="k">)</span> 2>/dev/null; <span class="k">then
+ </span><span class="nb">source</span> <span class="s2">"</span><span
class="nv">$envfile</span><span class="s2">"</span>
+ <span class="k">else
+ </span><span class="nb">eval</span> <span class="s2">"</span><span
class="k">$(</span>gpg-agent --daemon --log-file<span
class="o">=</span>~/.gpg/gpg.log --write-env-file <span
class="s2">"</span><span class="nv">$envfile</span><span
class="s2">"</span><span class="k">)</span><span class="s2">"</span>
+ <span class="k">fi
+ </span><span class="nb">export </span>GPG_AGENT_INFO <span class="c"># the
env file does not contain the export statement</span>
+<span class="k">fi</span></code></pre></figure>
+
+<p>Also, ensure that <code class="highlighter-rouge">default-cache-ttl
6000</code> is set in <code
class="highlighter-rouge">~/.gnupg/gpg-agent.conf</code>
+to guarantee that your credentials will be cached for the duration of the
build.</p>
+
<h2 id="making-a-snapshot-for-calcite-committers">Making a snapshot (for
Calcite committers)</h2>
<p>Before you start:</p>
@@ -757,17 +574,12 @@ the <code class="highlighter-rouge">KEYS
<ul>
<li>Set up signing keys as described above.</li>
<li>Make sure you are using JDK 1.7 (not 1.8).</li>
- <li>Make sure build and tests succeed with <code
class="highlighter-rouge">-Dcalcite.test.db=hsqldb</code> (the default)</li>
</ul>
-<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="c"># Set passphrase variable without putting it
into shell history</span>
-<span class="nb">read</span> -s GPG_PASSPHRASE
-
-<span class="c"># Make sure that there are no junk files in the sandbox</span>
+<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="c"># Make sure that there are no junk files in
the sandbox</span>
git clean -xn
-mvn clean
-mvn -Papache-release -Dgpg.passphrase<span class="o">=</span><span
class="k">${</span><span class="nv">GPG_PASSPHRASE</span><span
class="k">}</span> install</code></pre></figure>
+mvn -Papache-release clean install</code></pre></figure>
<p>When the dry-run has succeeded, change <code
class="highlighter-rouge">install</code> to <code
class="highlighter-rouge">deploy</code>.</p>
@@ -780,9 +592,6 @@ mvn -Papache-release -Dgpg.passphrase<sp
<li>Make sure you are using JDK 1.7 (not 1.8).</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>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>
- <li>Make sure build and tests succeed, including with
--Dcalcite.test.db={mysql,hsqldb}, -Dcalcite.test.slow,
--Dcalcite.test.mongodb, -Dcalcite.test.splunk.</li>
<li>Trigger a
<a href="https://scan.coverity.com/projects/2966">Coverity scan</a>
by merging the latest code into the <code
class="highlighter-rouge">julianhyde/coverity_scan</code> branch,
@@ -814,58 +623,58 @@ that the release process will complete a
<p>If any of the steps fail, clean up (see below), fix the problem, and
start again from the top.</p>
-<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="c"># Set passphrase variable without putting it
into shell history</span>
-<span class="nb">read</span> -s GPG_PASSPHRASE
-
-<span class="c"># Make sure that there are no junk files in the sandbox</span>
+<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="c"># Make sure that there are no junk files in
the sandbox</span>
git clean -xn
-mvn clean
<span class="c"># Do a dry run of the release:prepare step, which sets version
numbers.</span>
-mvn -DdryRun<span class="o">=</span><span class="nb">true</span> -DskipTests
-DreleaseVersion<span class="o">=</span>X.Y.Z -DdevelopmentVersion<span
class="o">=</span>X.Y.Z+1-SNAPSHOT -Papache-release -Darguments<span
class="o">=</span><span class="s2">"-Dgpg.passphrase=</span><span
class="k">${</span><span class="nv">GPG_PASSPHRASE</span><span
class="k">}</span><span class="s2">"</span> release:prepare 2>&1 | tee
/tmp/prepare-dry.log</code></pre></figure>
+mvn -DdryRun<span class="o">=</span><span class="nb">true</span>
-DreleaseVersion<span class="o">=</span>X.Y.Z -DdevelopmentVersion<span
class="o">=</span>X.Y.Z+1-SNAPSHOT -Dtag<span
class="o">=</span>calcite-avatica-X.Y.Z-rcN -Papache-release -Duser.name<span
class="o">=</span><span class="k">${</span><span class="nv">asf</span><span
class="p">.username</span><span class="k">}</span>
release:prepare</code></pre></figure>
<p>Check the artifacts:</p>
<ul>
<li>In the <code class="highlighter-rouge">target</code> directory should be
these 8 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.sha1</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.sha1</li>
+ <li>apache-calcite-avatica-X.Y.Z-src.tar.gz</li>
+ <li>apache-calcite-avatica-X.Y.Z-src.tar.gz.asc</li>
+ <li>apache-calcite-avatica-X.Y.Z-src.tar.gz.md5</li>
+ <li>apache-calcite-avatica-X.Y.Z-src.tar.gz.sha1</li>
+ <li>apache-calcite-avatica-X.Y.Z-src.zip</li>
+ <li>apache-calcite-avatica-X.Y.Z-src.zip.asc</li>
+ <li>apache-calcite-avatica-X.Y.Z-src.zip.md5</li>
+ <li>apache-calcite-avatica-X.Y.Z-src.zip.sha1</li>
</ul>
</li>
- <li>Note that the file names start <code
class="highlighter-rouge">apache-calcite-</code>.</li>
+ <li>Note that the file names start <code
class="highlighter-rouge">apache-calcite-avatica-</code>.</li>
<li>In the two source distros <code class="highlighter-rouge">.tar.gz</code>
and <code class="highlighter-rouge">.zip</code> (currently there is
no binary distro), check that all files belong to a directory called
-<code class="highlighter-rouge">apache-calcite-X.Y.Z-src</code>.</li>
+<code class="highlighter-rouge">apache-calcite-avatica-X.Y.Z-src</code>.</li>
<li>That directory must contain files <code
class="highlighter-rouge">NOTICE</code>, <code
class="highlighter-rouge">LICENSE</code>,
<code class="highlighter-rouge">README</code>, <code
class="highlighter-rouge">README.md</code>
<ul>
<li>Check that the version in <code
class="highlighter-rouge">README</code> is correct</li>
</ul>
</li>
- <li>In each .jar (for example
-<code class="highlighter-rouge">core/target/calcite-core-X.Y.Z.jar</code> and
-<code
class="highlighter-rouge">mongodb/target/calcite-mongodb-X.Y.Z-sources.jar</code>),
check
-that the <code class="highlighter-rouge">META-INF</code> directory contains
<code class="highlighter-rouge">DEPENDENCIES</code>, <code
class="highlighter-rouge">LICENSE</code>,
-<code class="highlighter-rouge">NOTICE</code> and <code
class="highlighter-rouge">git.properties</code></li>
+ <li>For each .jar, verify that the <code
class="highlighter-rouge">META-INF</code> directory contains the correct
+contents for <code class="highlighter-rouge">DEPENDENCIES</code>, <code
class="highlighter-rouge">LICENSE</code>, <code
class="highlighter-rouge">NOTICE</code> and <code
class="highlighter-rouge">git.properties</code> per the
+source/classes contained. Refer to the ASF licensing documentation on
+what is required.</li>
<li>In each .jar, check that <code
class="highlighter-rouge">org-apache-calcite-jdbc.properties</code> is
present and does not contain un-substituted <code
class="highlighter-rouge">${...}</code> variables</li>
<li>Check PGP, per <a
href="https://httpd.apache.org/dev/verification.html">this</a></li>
</ul>
-<p>Now, remove the <code class="highlighter-rouge">-DdryRun</code> flag and
run the release for real.</p>
+<p>If something is not correct, you can invoke the <code
class="highlighter-rouge">release:clean</code> mojo to remove the
+generated files from your workspace:</p>
+
+<figure class="highlight"><pre><code class="language-bash"
data-lang="bash">mvn release:clean</code></pre></figure>
+
+<p>If successful, remove the <code class="highlighter-rouge">-DdryRun</code>
flag and run the release for real.</p>
<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="c"># Prepare sets the version numbers, creates a
tag, and pushes it to git.</span>
-mvn -DdryRun<span class="o">=</span><span class="nb">false</span> -DskipTests
-DreleaseVersion<span class="o">=</span>X.Y.Z -DdevelopmentVersion<span
class="o">=</span>X.Y.Z+1-SNAPSHOT -Papache-release -Darguments<span
class="o">=</span><span class="s2">"-Dgpg.passphrase=</span><span
class="k">${</span><span class="nv">GPG_PASSPHRASE</span><span
class="k">}</span><span class="s2">"</span> release:prepare 2>&1 | tee
/tmp/prepare.log
+mvn -DreleaseVersion<span class="o">=</span>X.Y.Z -DdevelopmentVersion<span
class="o">=</span>X.Y.Z+1-SNAPSHOT -Dtag<span
class="o">=</span>calcite-avatica-X.Y.Z-rc0 -Papache-release -Duser.name<span
class="o">=</span><span class="k">${</span><span class="nv">asf</span><span
class="p">.username</span><span class="k">}</span> release:prepare
<span class="c"># Perform checks out the tagged version, builds, and deploys
to the staging repository</span>
-mvn -DskipTests -Papache-release -Darguments<span class="o">=</span><span
class="s2">"-Dgpg.passphrase=</span><span class="k">${</span><span
class="nv">GPG_PASSPHRASE</span><span class="k">}</span><span
class="s2">"</span> release:perform 2>&1 | tee
/tmp/perform.log</code></pre></figure>
+mvn -Papache-release release:perform</code></pre></figure>
<p>Verify the staged artifacts in the Nexus repository:</p>
@@ -892,11 +701,11 @@ svn co https://dist.apache.org/repos/dis
<span class="c"># Move the files into a directory</span>
<span class="nb">cd </span>target
mkdir ~/dist/dev/calcite/apache-calcite-X.Y.Z-rcN
-mv apache-calcite-<span class="k">*</span>
~/dist/dev/calcite/apache-calcite-X.Y.Z-rcN
+mv apache-calcite-<span class="k">*</span>
~/dist/dev/calcite/apache-calcite-avatica-X.Y.Z-rcN
<span class="c"># Check in</span>
<span class="nb">cd</span> ~/dist/dev/calcite
-svn add apache-calcite-X.Y.Z-rcN
+svn add apache-calcite-avatica-X.Y.Z-rcN
svn ci</code></pre></figure>
<h2
id="cleaning-up-after-a-failed-release-attempt-for-calcite-committers">Cleaning
up after a failed release attempt (for Calcite committers)</h2>
@@ -907,7 +716,7 @@ git tag
<span class="c"># If the tag exists, delete it locally and remotely</span>
git tag -d apache-calcite-X.Y.Z
-git push origin :refs/tags/apache-calcite-X.Y.Z
+git push origin :refs/tags/apache-calcite-avatica-X.Y.Z
<span class="c"># Remove modified files</span>
mvn release:clean
@@ -962,11 +771,11 @@ checkHash apache-calcite-X.Y.Z-rcN</code
<p>Release vote on dev list</p>
<figure class="highlight"><pre><code class="language-text"
data-lang="text">To: [email protected]
-Subject: [VOTE] Release apache-calcite-X.Y.Z (release candidate N)
+Subject: [VOTE] Release apache-calcite-avatica-X.Y.Z (release candidate N)
Hi all,
-I have created a build for Apache Calcite X.Y.Z, release candidate N.
+I have created a build for Apache Calcite Avatica X.Y.Z, release candidate N.
Thanks to everyone who has contributed to this release.
<Further details about release.> You can read the release notes here:
@@ -978,7 +787,7 @@ http://git-wip-us.apache.org/repos/asf/c
Its hash is XXXX.
The artifacts to be voted on are located here:
-https://dist.apache.org/repos/dist/dev/calcite/apache-calcite-X.Y.Z-rcN/
+https://dist.apache.org/repos/dist/dev/calcite/apache-calcite-avatica-X.Y.Z-rcN/
The hashes of the artifacts are as follows:
src.tar.gz.md5 XXXX
@@ -992,7 +801,7 @@ https://repository.apache.org/content/re
Release artifacts are signed with the following key:
https://people.apache.org/keys/committer/jhyde.asc
-Please vote on releasing this package as Apache Calcite X.Y.Z.
+Please vote on releasing this package as Apache Calcite Avatica X.Y.Z.
The vote is open for the next 72 hours and passes if a majority of
at least three +1 PMC votes are cast.
@@ -1010,7 +819,7 @@ Julian</code></pre></figure>
<p>After vote finishes, send out the result:</p>
-<figure class="highlight"><pre><code class="language-text"
data-lang="text">Subject: [RESULT] [VOTE] Release apache-calcite-X.Y.Z (release
candidate N)
+<figure class="highlight"><pre><code class="language-text"
data-lang="text">Subject: [RESULT] [VOTE] Release apache-calcite-avatica-X.Y.Z
(release candidate N)
To: [email protected]
Thanks to everyone who has tested the release candidate and given
@@ -1027,7 +836,7 @@ N non-binding +1s:
No 0s or -1s.
Therefore I am delighted to announce that the proposal to release
-Apache Calcite X.Y.Z has passed.
+Apache Calcite Avatica X.Y.Z has passed.
Thanks everyone. Weâll now roll the release out to the mirrors.
@@ -1081,7 +890,7 @@ mkdir -p ~/dist/release
<span class="nb">cd</span> ~/dist/release
svn co https://dist.apache.org/repos/dist/release/calcite
<span class="nb">cd </span>calcite
-cp -rp ../../dev/calcite/apache-calcite-X.Y.Z-rcN apache-calcite-X.Y.Z
+cp -rp ../../dev/calcite/apache-calcite-avatica-X.Y.Z-rcN
apache-calcite-avatica-X.Y.Z
svn add apache-calcite-X.Y.Z
<span class="c"># Check in.</span>
@@ -1094,7 +903,7 @@ svn ci</code></pre></figure>
<p>If there are now more than 2 releases, clear out the oldest ones:</p>
<figure class="highlight"><pre><code class="language-bash"
data-lang="bash"><span class="nb">cd</span> ~/dist/release/calcite
-svn rm apache-calcite-X.Y.Z
+svn rm apache-calcite-avatica-X.Y.Z
svn ci</code></pre></figure>
<p>The old releases will remain available in the
@@ -1196,6 +1005,10 @@ as a template. Be sure to include a brie
+
+
+
+
<li class=""><a href="/avatica/docs/index.html">Background</a></li>
@@ -1238,6 +1051,10 @@ as a template. Be sure to include a brie
+
+
+
+
<li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
@@ -1298,6 +1115,10 @@ as a template. Be sure to include a brie
+
+
+
+
<li class=""><a href="/avatica/docs/json_reference.html">JSON
Reference</a></li>
@@ -1336,6 +1157,10 @@ as a template. Be sure to include a brie
+
+
+
+
<li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf
Reference</a></li>
@@ -1362,6 +1187,10 @@ as a template. Be sure to include a brie
+
+
+
+
<li class="current"><a href="/avatica/docs/howto.html">HOWTO</a></li>
@@ -1408,10 +1237,36 @@ as a template. Be sure to include a brie
+
+
+
+
<li class=""><a href="/avatica/docs/security.html">Security</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a
href="/avatica/docs/compatibility.html">Compatibility</a></li>
+
+
+
</ul>
@@ -1438,6 +1293,10 @@ as a template. Be sure to include a brie
+
+
+
+
<li class=""><a href="/avatica/docs/history.html">History</a></li>
@@ -1489,6 +1348,10 @@ as a template. Be sure to include a brie
+
+
+
+
@@ -1500,6 +1363,10 @@ as a template. Be sure to include a brie
+
+
+
+
Modified: calcite/site/avatica/docs/index.html
URL:
http://svn.apache.org/viewvc/calcite/site/avatica/docs/index.html?rev=1744758&r1=1744757&r2=1744758&view=diff
==============================================================================
--- calcite/site/avatica/docs/index.html (original)
+++ calcite/site/avatica/docs/index.html Fri May 20 15:29:32 2016
@@ -110,6 +110,8 @@
+
+
@@ -134,6 +136,8 @@
+
+
</optgroup>
@@ -165,6 +169,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -189,6 +221,8 @@
+
+
@@ -213,6 +247,8 @@
+
+
@@ -237,6 +273,8 @@
+
+
@@ -261,6 +299,8 @@
+
+
</optgroup>
@@ -292,6 +332,8 @@
+
+
@@ -316,6 +358,8 @@
+
+
@@ -340,6 +384,8 @@
+
+
</optgroup>
@@ -537,6 +583,10 @@ At some point Avatica could become a sep
+
+
+
+
<li class="current"><a
href="/avatica/docs/index.html">Background</a></li>
@@ -579,6 +629,10 @@ At some point Avatica could become a sep
+
+
+
+
<li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
@@ -639,6 +693,10 @@ At some point Avatica could become a sep
+
+
+
+
<li class=""><a href="/avatica/docs/json_reference.html">JSON
Reference</a></li>
@@ -677,6 +735,10 @@ At some point Avatica could become a sep
+
+
+
+
<li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf
Reference</a></li>
@@ -703,6 +765,10 @@ At some point Avatica could become a sep
+
+
+
+
<li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
@@ -749,10 +815,36 @@ At some point Avatica could become a sep
+
+
+
+
<li class=""><a href="/avatica/docs/security.html">Security</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a
href="/avatica/docs/compatibility.html">Compatibility</a></li>
+
+
+
</ul>
@@ -779,6 +871,10 @@ At some point Avatica could become a sep
+
+
+
+
<li class=""><a href="/avatica/docs/history.html">History</a></li>
@@ -830,6 +926,10 @@ At some point Avatica could become a sep
+
+
+
+
@@ -841,6 +941,10 @@ At some point Avatica could become a sep
+
+
+
+
Modified: calcite/site/avatica/docs/json_reference.html
URL:
http://svn.apache.org/viewvc/calcite/site/avatica/docs/json_reference.html?rev=1744758&r1=1744757&r2=1744758&view=diff
==============================================================================
--- calcite/site/avatica/docs/json_reference.html (original)
+++ calcite/site/avatica/docs/json_reference.html Fri May 20 15:29:32 2016
@@ -110,6 +110,8 @@
+
+
@@ -134,6 +136,8 @@
+
+
</optgroup>
@@ -165,6 +169,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -189,6 +221,8 @@
+
+
@@ -213,6 +247,8 @@
+
+
@@ -237,6 +273,8 @@
+
+
@@ -261,6 +299,8 @@
+
+
</optgroup>
@@ -292,6 +332,8 @@
+
+
@@ -316,6 +358,8 @@
+
+
@@ -340,6 +384,8 @@
+
+
</optgroup>
@@ -1586,6 +1632,10 @@ for more information on valid attributes
+
+
+
+
<li class=""><a href="/avatica/docs/index.html">Background</a></li>
@@ -1628,6 +1678,10 @@ for more information on valid attributes
+
+
+
+
<li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
@@ -1688,6 +1742,10 @@ for more information on valid attributes
+
+
+
+
<li class="current"><a href="/avatica/docs/json_reference.html">JSON
Reference</a></li>
@@ -1726,6 +1784,10 @@ for more information on valid attributes
+
+
+
+
<li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf
Reference</a></li>
@@ -1752,6 +1814,10 @@ for more information on valid attributes
+
+
+
+
<li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
@@ -1798,10 +1864,36 @@ for more information on valid attributes
+
+
+
+
<li class=""><a href="/avatica/docs/security.html">Security</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a
href="/avatica/docs/compatibility.html">Compatibility</a></li>
+
+
+
</ul>
@@ -1828,6 +1920,10 @@ for more information on valid attributes
+
+
+
+
<li class=""><a href="/avatica/docs/history.html">History</a></li>
@@ -1879,6 +1975,10 @@ for more information on valid attributes
+
+
+
+
@@ -1890,6 +1990,10 @@ for more information on valid attributes
+
+
+
+
Modified: calcite/site/avatica/docs/protobuf_reference.html
URL:
http://svn.apache.org/viewvc/calcite/site/avatica/docs/protobuf_reference.html?rev=1744758&r1=1744757&r2=1744758&view=diff
==============================================================================
--- calcite/site/avatica/docs/protobuf_reference.html (original)
+++ calcite/site/avatica/docs/protobuf_reference.html Fri May 20 15:29:32 2016
@@ -110,6 +110,8 @@
+
+
@@ -134,6 +136,8 @@
+
+
</optgroup>
@@ -165,6 +169,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -189,6 +221,8 @@
+
+
@@ -213,6 +247,8 @@
+
+
@@ -237,6 +273,8 @@
+
+
@@ -261,6 +299,8 @@
+
+
</optgroup>
@@ -292,6 +332,8 @@
+
+
@@ -316,6 +358,8 @@
+
+
@@ -340,6 +384,8 @@
+
+
</optgroup>
@@ -515,7 +561,7 @@ objects should be wrapped in a <code cla
<figure class="highlight"><pre><code class="language-protobuf"
data-lang="protobuf">message ExecuteRequest {
StatementHandle statementHandle = 1;
repeated TypedValue parameter_values = 2;
- uint64 max_row_count = 3;
+ uint64 first_frame_max_size = 3;
bool has_parameter_values = 4;
}</code></pre></figure>
@@ -523,7 +569,7 @@ objects should be wrapped in a <code cla
<p><code class="highlighter-rouge">parameter_values</code> The <a
href="#typedvalue">TypedValue</a> for each parameter on the prepared
statement.</p>
-<p><code class="highlighter-rouge">max_row_count</code> The maximum number of
rows returned in the response.</p>
+<p><code class="highlighter-rouge">first_frame_max_size</code> The maximum
number of rows returned in the response.</p>
<p><code class="highlighter-rouge">has_parameter_values</code> A boolean which
denotes if the user set a value for the <code
class="highlighter-rouge">parameter_values</code> field.</p>
@@ -535,7 +581,8 @@ objects should be wrapped in a <code cla
string connection_id = 1;
uint32 statement_id = 2;
uint64 offset = 3;
- uint32 fetch_max_row_count = 4; // Maximum number of rows to be returned in
the frame. Negative means no limit.
+ uint32 fetch_max_row_count = 4; // Deprecated!
+ int32 frame_max_size = 5;
}</code></pre></figure>
<p><code class="highlighter-rouge">connection_id</code> The identifier of the
connection to use.</p>
@@ -544,7 +591,9 @@ objects should be wrapped in a <code cla
<p><code class="highlighter-rouge">offset</code> The positional offset into a
result set to fetch.</p>
-<p><code class="highlighter-rouge">fetch_match_row_count</code> The maximum
number of rows to return in the response to this request.</p>
+<p><code class="highlighter-rouge">fetch_match_row_count</code> The maximum
number of rows to return in the response to this request. Negative means no
limit. <em>Deprecated</em>, use <code
class="highlighter-rouge">frame_max_size</code>.</p>
+
+<p><code class="highlighter-rouge">frame_max_size</code> The maximum number of
rows to return in the response. Negative means no limit.</p>
<h3 id="openconnectionrequest">OpenConnectionRequest</h3>
@@ -583,7 +632,9 @@ objects should be wrapped in a <code cla
string connection_id = 1;
uint32 statement_id = 4;
string sql = 2;
- uint64 max_row_count = 3;
+ uint64 max_row_count = 3; // Deprecated!
+ int64 max_rows_total = 5;
+ int32 max_rows_in_first_frame = 6;
}</code></pre></figure>
<p><code class="highlighter-rouge">connection_id</code> The identifier for the
connection to use.</p>
@@ -592,7 +643,11 @@ objects should be wrapped in a <code cla
<p><code class="highlighter-rouge">sql</code> A SQL statement</p>
-<p><code class="highlighter-rouge">max_row_count</code> The maximum number of
rows returned in the response.</p>
+<p><code class="highlighter-rouge">max_row_count</code> The maximum number of
rows returned in the response. <em>Deprecated</em>, use <code
class="highlighter-rouge">max_rows_total</code>.</p>
+
+<p><code class="highlighter-rouge">max_rows_total</code> The maximum number of
rows which this query should return (over all <code
class="highlighter-rouge">Frame</code>s).</p>
+
+<p><code class="highlighter-rouge">first_frame_max_size</code> The maximum
number of rows which should be included in the first <code
class="highlighter-rouge">Frame</code> in the <code
class="highlighter-rouge">ExecuteResponse</code>.</p>
<h3 id="preparerequest">PrepareRequest</h3>
@@ -601,14 +656,17 @@ objects should be wrapped in a <code cla
<figure class="highlight"><pre><code class="language-protobuf"
data-lang="protobuf">message PrepareRequest {
string connection_id = 1;
string sql = 2;
- uint64 max_row_count = 3;
+ uint64 max_row_count = 3; // Deprecated!
+ int64 max_rows_total = 4;
}</code></pre></figure>
<p><code class="highlighter-rouge">connection_id</code> The identifier for the
connection to use.</p>
<p><code class="highlighter-rouge">sql</code> A SQL statement</p>
-<p><code class="highlighter-rouge">max_row_count</code> The maximum number of
rows returned in the response.</p>
+<p><code class="highlighter-rouge">max_row_count</code> The maximum number of
rows returned in the response. <em>Deprecated</em>, use <code
class="highlighter-rouge">max_rows_total</code> instead.</p>
+
+<p><code class="highlighter-rouge">max_rows_total</code> The maximum number of
rows returned for the query in total.</p>
<h3 id="syncresultsrequest">SyncResultsRequest</h3>
@@ -1654,6 +1712,10 @@ to the attributes in this message:</p>
+
+
+
+
<li class=""><a href="/avatica/docs/index.html">Background</a></li>
@@ -1696,6 +1758,10 @@ to the attributes in this message:</p>
+
+
+
+
<li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
@@ -1756,6 +1822,10 @@ to the attributes in this message:</p>
+
+
+
+
<li class=""><a href="/avatica/docs/json_reference.html">JSON
Reference</a></li>
@@ -1794,6 +1864,10 @@ to the attributes in this message:</p>
+
+
+
+
<li class="current"><a
href="/avatica/docs/protobuf_reference.html">Protobuf Reference</a></li>
@@ -1820,6 +1894,10 @@ to the attributes in this message:</p>
+
+
+
+
<li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
@@ -1866,10 +1944,36 @@ to the attributes in this message:</p>
+
+
+
+
<li class=""><a href="/avatica/docs/security.html">Security</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a
href="/avatica/docs/compatibility.html">Compatibility</a></li>
+
+
+
</ul>
@@ -1896,6 +2000,10 @@ to the attributes in this message:</p>
+
+
+
+
<li class=""><a href="/avatica/docs/history.html">History</a></li>
@@ -1947,6 +2055,10 @@ to the attributes in this message:</p>
+
+
+
+
@@ -1958,6 +2070,10 @@ to the attributes in this message:</p>
+
+
+
+
Modified: calcite/site/avatica/docs/roadmap.html
URL:
http://svn.apache.org/viewvc/calcite/site/avatica/docs/roadmap.html?rev=1744758&r1=1744757&r2=1744758&view=diff
==============================================================================
--- calcite/site/avatica/docs/roadmap.html (original)
+++ calcite/site/avatica/docs/roadmap.html Fri May 20 15:29:32 2016
@@ -110,6 +110,8 @@
+
+
@@ -134,6 +136,8 @@
+
+
</optgroup>
@@ -165,6 +169,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -189,6 +221,8 @@
+
+
@@ -213,6 +247,8 @@
+
+
@@ -237,6 +273,8 @@
+
+
@@ -261,6 +299,8 @@
+
+
</optgroup>
@@ -292,6 +332,8 @@
+
+
@@ -316,6 +358,8 @@
+
+
@@ -340,6 +384,8 @@
+
+
</optgroup>
@@ -461,6 +507,10 @@
+
+
+
+
<li class=""><a href="/avatica/docs/index.html">Background</a></li>
@@ -503,6 +553,10 @@
+
+
+
+
<li class="current"><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
@@ -563,6 +617,10 @@
+
+
+
+
<li class=""><a href="/avatica/docs/json_reference.html">JSON
Reference</a></li>
@@ -601,6 +659,10 @@
+
+
+
+
<li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf
Reference</a></li>
@@ -627,6 +689,10 @@
+
+
+
+
<li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
@@ -673,10 +739,36 @@
+
+
+
+
<li class=""><a href="/avatica/docs/security.html">Security</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a
href="/avatica/docs/compatibility.html">Compatibility</a></li>
+
+
+
</ul>
@@ -703,6 +795,10 @@
+
+
+
+
<li class=""><a href="/avatica/docs/history.html">History</a></li>
@@ -754,6 +850,10 @@
+
+
+
+
@@ -765,6 +865,10 @@
+
+
+
+
Modified: calcite/site/avatica/docs/security.html
URL:
http://svn.apache.org/viewvc/calcite/site/avatica/docs/security.html?rev=1744758&r1=1744757&r2=1744758&view=diff
==============================================================================
--- calcite/site/avatica/docs/security.html (original)
+++ calcite/site/avatica/docs/security.html Fri May 20 15:29:32 2016
@@ -110,6 +110,8 @@
+
+
@@ -134,6 +136,8 @@
+
+
</optgroup>
@@ -165,6 +169,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -189,6 +221,8 @@
+
+
@@ -213,6 +247,8 @@
+
+
@@ -237,6 +273,8 @@
+
+
@@ -261,6 +299,8 @@
+
+
</optgroup>
@@ -292,6 +332,8 @@
+
+
@@ -316,6 +358,8 @@
+
+
@@ -340,6 +384,8 @@
+
+
</optgroup>
@@ -600,7 +646,7 @@ superfluous.</p>
- <a href="/avatica/docs/history.html" class="next">Next</a>
+ <a href="/avatica/docs/compatibility.html" class="next">Next</a>
</div>
</div>
@@ -644,6 +690,10 @@ superfluous.</p>
+
+
+
+
<li class=""><a href="/avatica/docs/index.html">Background</a></li>
@@ -686,6 +736,10 @@ superfluous.</p>
+
+
+
+
<li class=""><a href="/avatica/docs/roadmap.html">Roadmap</a></li>
@@ -746,6 +800,10 @@ superfluous.</p>
+
+
+
+
<li class=""><a href="/avatica/docs/json_reference.html">JSON
Reference</a></li>
@@ -784,6 +842,10 @@ superfluous.</p>
+
+
+
+
<li class=""><a href="/avatica/docs/protobuf_reference.html">Protobuf
Reference</a></li>
@@ -810,6 +872,10 @@ superfluous.</p>
+
+
+
+
<li class=""><a href="/avatica/docs/howto.html">HOWTO</a></li>
@@ -856,10 +922,36 @@ superfluous.</p>
+
+
+
+
<li class="current"><a
href="/avatica/docs/security.html">Security</a></li>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <li class=""><a
href="/avatica/docs/compatibility.html">Compatibility</a></li>
+
+
+
</ul>
@@ -886,6 +978,10 @@ superfluous.</p>
+
+
+
+
<li class=""><a href="/avatica/docs/history.html">History</a></li>
@@ -937,6 +1033,10 @@ superfluous.</p>
+
+
+
+
@@ -948,6 +1048,10 @@ superfluous.</p>
+
+
+
+