calcite-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From els...@apache.org
Subject [58/59] calcite git commit: [CALCITE-1079] Split out an Avatica website, made to slot into the Calcite site at /avatica
Date Mon, 07 Mar 2016 18:28:36 GMT
[CALCITE-1079] Split out an Avatica website, made to slot into the Calcite site at /avatica


Project: http://git-wip-us.apache.org/repos/asf/calcite/repo
Commit: http://git-wip-us.apache.org/repos/asf/calcite/commit/65f2afa7
Tree: http://git-wip-us.apache.org/repos/asf/calcite/tree/65f2afa7
Diff: http://git-wip-us.apache.org/repos/asf/calcite/diff/65f2afa7

Branch: refs/heads/master
Commit: 65f2afa7add341c614cb59fb80f93da5e575e96a
Parents: 5cee486
Author: Josh Elser <elserj@apache.org>
Authored: Fri Mar 4 00:40:43 2016 -0500
Committer: Josh Elser <elserj@apache.org>
Committed: Mon Mar 7 10:50:09 2016 -0500

----------------------------------------------------------------------
 avatica/site/_config.yml                        |    4 +-
 avatica/site/_data/contributors.yml             |   96 -
 avatica/site/_data/docs.yml                     |   20 +-
 avatica/site/_docs/adapter.md                   |   38 -
 avatica/site/_docs/algebra.md                   |  369 ---
 avatica/site/_docs/avatica_json_reference.md    | 1086 ---------
 avatica/site/_docs/avatica_overview.md          |  130 -
 .../site/_docs/avatica_protobuf_reference.md    | 1181 ---------
 avatica/site/_docs/avatica_roadmap.md           |   51 -
 avatica/site/_docs/history.md                   | 2301 +-----------------
 avatica/site/_docs/index.md                     |  185 +-
 avatica/site/_docs/json_reference.md            | 1086 +++++++++
 avatica/site/_docs/lattice.md                   |  136 --
 avatica/site/_docs/model.md                     |  517 ----
 avatica/site/_docs/protobuf_reference.md        | 1181 +++++++++
 avatica/site/_docs/reference.md                 | 1248 ----------
 avatica/site/_docs/roadmap.md                   |   51 +
 avatica/site/_docs/stream.md                    | 1023 --------
 avatica/site/_docs/tutorial.md                  |  760 ------
 avatica/site/_includes/header.html              |    2 +-
 avatica/site/_includes/news_contents.html       |    2 +-
 .../2014-06-27-release-0.8.0-incubating.md      |   31 -
 .../2014-08-19-release-0.9.0-incubating.md      |   30 -
 .../2014-10-02-release-0.9.1-incubating.md      |   29 -
 .../2014-11-05-release-0.9.2-incubating.md      |   32 -
 .../2015-01-31-release-1.0.0-incubating.md      |   42 -
 .../2015-03-13-release-1.1.0-incubating.md      |   41 -
 .../2015-04-07-release-1.2.0-incubating.md      |   41 -
 .../site/_posts/2015-04-24-new-committers.md    |   34 -
 .../2015-05-30-release-1.3.0-incubating.md      |   33 -
 .../site/_posts/2015-06-05-algebra-builder.md   |   87 -
 .../2015-07-31-xldb-best-lightning-talk.md      |   41 -
 .../2015-09-02-release-1.4.0-incubating.md      |   39 -
 .../site/_posts/2015-10-22-calcite-graduates.md |   63 -
 .../site/_posts/2015-11-08-new-committers.md    |   31 -
 avatica/site/_posts/2015-11-10-release-1.5.0.md |   33 -
 avatica/site/_posts/2016-01-22-release-1.6.0.md |   59 -
 avatica/site/_posts/2016-02-17-elser-pmc.md     |   33 -
 .../_posts/2016-02-17-streaming-sql-talk.md     |   40 -
 .../site/_posts/2016-03-03-separate-project.md  |   32 +
 avatica/site/_posts/2016-03-03-tbd-release.md   |   30 +
 avatica/site/community/index.md                 |   48 +-
 avatica/site/develop/index.md                   |    5 +-
 avatica/site/doap_calcite.rdf                   |   59 -
 avatica/site/downloads/index.md                 |    8 +-
 avatica/site/index.html                         |   23 +-
 site/index.html                                 |    8 +
 47 files changed, 2493 insertions(+), 9926 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/calcite/blob/65f2afa7/avatica/site/_config.yml
----------------------------------------------------------------------
diff --git a/avatica/site/_config.yml b/avatica/site/_config.yml
index 9b8de85..c765da2 100644
--- a/avatica/site/_config.yml
+++ b/avatica/site/_config.yml
@@ -27,7 +27,7 @@ collections:
     output: true
 
 # The URL where the code can be found
-sourceRoot: https://github.com/apache/calcite/blob/master
+sourceRoot: https://github.com/apache/calcite/tree/master/avatica
 
 # The URL where Javadocs are located
 apiRoot: /apidocs
@@ -38,6 +38,6 @@ testApiRoot: /testapidocs
 # testApiRoot: http://calcite.apache.org/testapidocs
 
 # The base path where the website is deployed
-baseurl:
+baseurl: /avatica
 
 # End _config.yml

http://git-wip-us.apache.org/repos/asf/calcite/blob/65f2afa7/avatica/site/_data/contributors.yml
----------------------------------------------------------------------
diff --git a/avatica/site/_data/contributors.yml b/avatica/site/_data/contributors.yml
deleted file mode 100644
index 98f8bf9..0000000
--- a/avatica/site/_data/contributors.yml
+++ /dev/null
@@ -1,96 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements.  See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to you under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License.  You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-# Database of contributors to Apache Calcite.
-# Pages such as developer.md use this data.
-#
-- name: Alan Gates
-  apacheId: gates
-  githubId: alanfgates
-  org: Hortonworks
-  role: PMC
-- name: Aman Sinha
-  apacheId: amansinha
-  githubId: amansinha100
-  org: MapR
-  role: PMC
-- name: Ashutosh Chauhan
-  apacheId: hashutosh
-  githubId: ashutoshc
-  org: Hortonworks
-  role: PMC
-- name: James R. Taylor
-  apacheId: jamestaylor
-  githubId: JamesRTaylor
-  org: Salesforce
-  role: PMC
-- name: Jacques Nadeau
-  apacheId: jacques
-  githubId: jacques-n
-  org: Dremio
-  role: PMC
-- name: Jesús Camacho Rodríguez
-  apacheId: jcamacho
-  githubId: jcamachor
-  org: Hortonworks
-  role: PMC
-- name: Jinfeng Ni
-  apacheId: jni
-  githubId: jinfengni
-  org: MapR
-  role: PMC
-- name: John Pullokkaran
-  apacheId: jpullokk
-  githubId: jpullokkaran
-  org: Hortonworks
-  role: PMC
-- name: Josh Elser
-  apacheId: elserj
-  githubId: joshelser
-  org: Hortonworks
-  role: PMC
-- name: Julian Hyde
-  apacheId: jhyde
-  githubId: julianhyde
-  org: Hortonworks
-  role: PMC Chair
-  homepage: http://people.apache.org/~jhyde
-- name: Maryann Xue
-  apacheId: maryannxue
-  githubId: maryannxue
-  org: Intel
-  role: Committer
-- name: Nick Dimiduk
-  apacheId: ndimiduk
-  githubId: ndimiduk
-  org: Hortonworks
-  role: PMC
-- name: Steven Noels
-  apacheId: stevenn
-  githubId: stevenn
-  org: NGData
-  role: PMC
-- name: Ted Dunning
-  apacheId: tdunning
-  githubId: tdunning
-  org: MapR
-  role: PMC
-  avatar: https://www.mapr.com/sites/default/files/otherpageimages/ted-circle-80.png
-- name: Vladimir Sitnikov
-  apacheId: vladimirsitnikov
-  githubId: vlsi
-  org: NetCracker
-  role: PMC
-# End contributors.yml

http://git-wip-us.apache.org/repos/asf/calcite/blob/65f2afa7/avatica/site/_data/docs.yml
----------------------------------------------------------------------
diff --git a/avatica/site/_data/docs.yml b/avatica/site/_data/docs.yml
index a996097..8b1af11 100644
--- a/avatica/site/_data/docs.yml
+++ b/avatica/site/_data/docs.yml
@@ -18,26 +18,12 @@
 - title: Overview
   docs:
   - index
-  - tutorial
-  - algebra
-
-- title: Advanced
-  docs:
-  - adapter
-  - stream
-  - lattice
-
-- title: Avatica
-  docs:
-  - avatica_overview
-  - avatica_roadmap
-  - avatica_json_reference
-  - avatica_protobuf_reference
+  - roadmap
 
 - title: Reference
   docs:
-  - reference
-  - model
+  - json_reference
+  - protobuf_reference
   - howto
 
 - title: Meta

http://git-wip-us.apache.org/repos/asf/calcite/blob/65f2afa7/avatica/site/_docs/adapter.md
----------------------------------------------------------------------
diff --git a/avatica/site/_docs/adapter.md b/avatica/site/_docs/adapter.md
deleted file mode 100644
index fa8eb21..0000000
--- a/avatica/site/_docs/adapter.md
+++ /dev/null
@@ -1,38 +0,0 @@
----
-layout: docs
-title: Adapters
-permalink: /docs/adapter.html
----
-<!--
-{% comment %}
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to you under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License.  You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-{% endcomment %}
--->
-
-* <a href="https://github.com/apache/drill">Apache Drill adapter</a>
-* Cascading adapter (<a href="https://github.com/Cascading/lingual">Lingual</a>)
-* Cassandra adapter (<a href="{{ site.apiRoot }}/org/apache/calcite/adapter/cassandra/package-summary.html">calcite-cassandra</a>)
-* CSV adapter (<a href="{{ site.apiRoot }}/org/apache/calcite/adapter/csv/package-summary.html">example/csv</a>)
-* JDBC adapter (part of <a href="{{ site.apiRoot }}/org/apache/calcite/adapter/jdbc/package-summary.html">calcite-core</a>)
-* MongoDB adapter (<a href="{{ site.apiRoot }}/org/apache/calcite/adapter/mongodb/package-summary.html">calcite-mongodb</a>)
-* Spark adapter (<a href="{{ site.apiRoot }}/org/apache/calcite/adapter/spark/package-summary.html">calcite-spark</a>)
-* Splunk adapter (<a href="{{ site.apiRoot }}/org/apache/calcite/adapter/splunk/package-summary.html">calcite-splunk</a>)
-* Eclipse Memory Analyzer (MAT) adapter (<a href="https://github.com/vlsi/mat-calcite-plugin">mat-calcite-plugin</a>)
-
-## Drivers
-
-* <a href="{{ site.apiRoot }}/org/apache/calcite/jdbc/package-summary.html">JDBC driver</a>
-

http://git-wip-us.apache.org/repos/asf/calcite/blob/65f2afa7/avatica/site/_docs/algebra.md
----------------------------------------------------------------------
diff --git a/avatica/site/_docs/algebra.md b/avatica/site/_docs/algebra.md
deleted file mode 100644
index e651dd0..0000000
--- a/avatica/site/_docs/algebra.md
+++ /dev/null
@@ -1,369 +0,0 @@
----
-layout: docs
-title: Algebra
-permalink: /docs/algebra.html
----
-<!--
-{% comment %}
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to you under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License.  You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-{% endcomment %}
--->
-
-Relational algebra is at the heart of Calcite. Every query is
-represented as a tree of relational operators. You can translate from
-SQL to relational algebra, or you can build the tree directly.
-
-Planner rules transform expression trees using mathematical identities
-that preserve semantics. For example, it is valid to push a filter
-into an input of an inner join if the filter does not reference
-columns from the other input.
-
-Calcite optimizes queries by repeatedly applying planner rules to a
-relational expression. A cost model guides the process, and the
-planner engine generates an alternative expression that has the same
-semantics as the original but a lower cost.
-
-The planning process is extensible. You can add your own relational
-operators, planner rules, cost model, and statistics.
-
-## Algebra builder
-
-The simplest way to build a relational expression is to use the algebra builder,
-[RelBuilder]({{ site.apiRoot }}/org/apache/calcite/tools/RelBuilder.html).
-Here is an example:
-
-### TableScan
-
-{% highlight java %}
-final FrameworkConfig config;
-final RelBuilder builder = RelBuilder.create(config);
-final RelNode node = builder
-  .scan("EMP")
-  .build();
-System.out.println(RelOptUtil.toString(node));
-{% endhighlight %}
-
-(You can find the full code for this and other examples in
-[RelBuilderExample.java]({{ site.sourceRoot }}/core/src/test/java/org/apache/calcite/examples/RelBuilderExample.java).)
-
-The code prints
-
-{% highlight text %}
-LogicalTableScan(table=[[scott, EMP]])
-{% endhighlight %}
-
-It has created a scan of the `EMP` table; equivalent to the SQL
-
-{% highlight sql %}
-SELECT *
-FROM scott.EMP;
-{% endhighlight %}
-
-### Adding a Project
-
-Now, let's add a Project, the equivalent of
-
-{% highlight sql %}
-SELECT ename, deptno
-FROM scott.EMP;
-{% endhighlight %}
-
-We just add a call to the `project` method before calling
-`build`:
-
-{% highlight java %}
-final RelNode node = builder
-  .scan("EMP")
-  .project(builder.field("DEPTNO"), builder.field("ENAME"))
-  .build();
-System.out.println(RelOptUtil.toString(node));
-{% endhighlight %}
-
-and the output is
-
-{% highlight text %}
-LogicalProject(DEPTNO=[$7], ENAME=[$1])
-  LogicalTableScan(table=[[scott, EMP]])
-{% endhighlight %}
-
-The two calls to `builder.field` create simple expressions
-that return the fields from the input relational expression,
-namely the TableScan created by the `scan` call.
-
-Calcite has converted them to field references by ordinal,
-`$7` and `$1`.
-
-### Adding a Filter and Aggregate
-
-A query with an Aggregate, and a Filter:
-
-{% highlight java %}
-final RelNode node = builder
-  .scan("EMP")
-  .aggregate(builder.groupKey("DEPTNO"),
-      builder.count(false, "C"),
-      builder.sum(false, "S", builder.field("SAL")))
-  .filter(
-      builder.call(SqlStdOperatorTable.GREATER_THAN,
-          builder.field("C"),
-          builder.literal(10)))
-  .build();
-System.out.println(RelOptUtil.toString(node));
-{% endhighlight %}
-
-is equivalent to SQL
-
-{% highlight sql %}
-SELECT deptno, count(*) AS c, sum(sal) AS s
-FROM emp
-GROUP BY deptno
-HAVING count(*) > 10
-{% endhighlight %}
-
-and produces
-
-{% highlight text %}
-LogicalFilter(condition=[>($1, 10)])
-  LogicalAggregate(group=[{7}], C=[COUNT()], S=[SUM($5)])
-    LogicalTableScan(table=[[scott, EMP]])
-{% endhighlight %}
-
-### Push and pop
-
-The builder uses a stack to store the relational expression produced by
-one step and pass it as an input to the next step. This allows the
-methods that produce relational expressions to produce a builder.
-
-Most of the time, the only stack method you will use is `build()`, to get the
-last relational expression, namely the root of the tree.
-
-Sometimes the stack becomes so deeply nested it gets confusing. To keep things
-straight, you can remove expressions from the stack. For example, here we are
-building a bushy join:
-
-{% highlight text %}
-.
-               join
-             /      \
-        join          join
-      /      \      /      \
-CUSTOMERS ORDERS LINE_ITEMS PRODUCTS
-{% endhighlight %}
-
-We build it in three stages. Store the intermediate results in variables
-`left` and `right`, and use `push()` to put them back on the stack when it is
-time to create the final `Join`:
-
-{% highlight java %}
-final RelNode left = builder
-  .scan("CUSTOMERS")
-  .scan("ORDERS")
-  .join(JoinRelType.INNER, "ORDER_ID")
-  .build();
-
-final RelNode right = builder
-  .scan("LINE_ITEMS")
-  .scan("PRODUCTS")
-  .join(JoinRelType.INNER, "PRODUCT_ID")
-  .build();
-
-final RelNode result = builder
-  .push(left)
-  .push(right)
-  .join(JoinRelType.INNER, "ORDER_ID")
-  .build();
-{% endhighlight %}
-
-### Field names and ordinals
-
-You can reference a field by name or ordinal.
-
-Ordinals are zero-based. Each operator guarantees the order in which its output
-fields occur. For example, `Project` returns the fields in the generated by
-each of the scalar expressions.
-
-The field names of an operator are guaranteed to be unique, but sometimes that
-means that the names are not exactly what you expect. For example, when you
-join EMP to DEPT, one of the output fields will be called DEPTNO and another
-will be called something like DEPTNO_1.
-
-Some relational expression methods give you more control over field names:
-
-* `project` lets you wrap expressions using `alias(expr, fieldName)`. It
-  removes the wrapper but keeps the suggested name (as long as it is unique).
-* `values(String[] fieldNames, Object... values)` accepts an array of field
-  names. If any element of the array is null, the builder will generate a unique
-  name.
-
-If an expression projects an input field, or a cast of an input field, it will
-use the name of that input field.
-
-Once the unique field names have been assigned, the names are immutable.
-If you have a particular `RelNode` instance, you can rely on the field names not
-changing. In fact, the whole relational expression is immutable.
-
-But if a relational expression has passed through several rewrite rules (see
-([RelOptRule]({{ site.apiRoot }}/org/apache/calcite/plan/RelOptRule.html)), the field
-names of the resulting expression might not look much like the originals.
-At that point it is better to reference fields by ordinal.
-
-When you are building a relational expression that accepts multiple inputs,
-you need to build field references that take that into account. This occurs
-most often when building join conditions.
-
-Suppose you are building a join on EMP,
-which has 8 fields [EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO]
-and DEPT,
-which has 3 fields [DEPTNO, DNAME, LOC].
-Internally, Calcite represents those fields as offsets into
-a combined input row with 11 fields: the first field of the left input is
-field #0 (0-based, remember), and the first field of the right input is
-field #8.
-
-But through the builder API, you specify which field of which input.
-To reference "SAL", internal field #5,
-write `builder.field(2, 0, "SAL")`
-or `builder.field(2, 0, 5)`.
-This means "the field #5 of input #0 of two inputs".
-(Why does it need to know that there are two inputs? Because they are stored on
-the stack; input #1 is at the top of the stack, and input #0 is below it.
-If we did not tell the builder that were two inputs, it would not know how deep
-to go for input #0.)
-
-Similarly, to reference "DNAME", internal field #9 (8 + 1),
-write `builder.field(2, 1, "DNAME")`
-or `builder.field(2, 1, 1)`.
-
-### API summary
-
-#### Relational operators
-
-The following methods create a relational expression
-([RelNode]({{ site.apiRoot }}/org/apache/calcite/rel/RelNode.html)),
-push it onto the stack, and
-return the `RelBuilder`.
-
-| Method              | Description
-|:------------------- |:-----------
-| `scan(tableName)` | Creates a [TableScan]({{ site.apiRoot }}/org/apache/calcite/rel/core/TableScan.html).
-| `values(fieldNames, value...)`<br/>`values(rowType, tupleList)` | Creates a [Values]({{ site.apiRoot }}/org/apache/calcite/rel/core/Values.html).
-| `filter(expr...)`<br/>`filter(exprList)` | Creates a [Filter]({{ site.apiRoot }}/org/apache/calcite/rel/core/Filter.html) over the AND of the given predicates.
-| `project(expr...)`<br/>`project(exprList [, fieldNames])` | Creates a [Project]({{ site.apiRoot }}/org/apache/calcite/rel/core/Project.html). To override the default name, wrap expressions using `alias`, or specify the `fieldNames` argument.
-| `permute(mapping)` | Creates a [Project]({{ site.apiRoot }}/org/apache/calcite/rel/core/Project.html) that permutes the fields using `mapping`.
-| `convert(rowType [, rename])` | Creates a [Project]({{ site.apiRoot }}/org/apache/calcite/rel/core/Project.html) that converts the fields to the given types, optionally also renaming them.
-| `aggregate(groupKey, aggCall...)`<br/>`aggregate(groupKey, aggCallList)` | Creates an [Aggregate]({{ site.apiRoot }}/org/apache/calcite/rel/core/Aggregate.html).
-| `distinct()` | Creates an [Aggregate]({{ site.apiRoot }}/org/apache/calcite/rel/core/Aggregate.html) that eliminates duplicate records.
-| `sort(fieldOrdinal...)`<br/>`sort(expr...)`<br/>`sort(exprList)` | Creates a [Sort]({{ site.apiRoot }}/org/apache/calcite/rel/core/Sort.html).<br/><br/>In the first form, field ordinals are 0-based, and a negative ordinal indicates descending; for example, -2 means field 1 descending.<br/><br/>In the other forms, you can wrap expressions in `as`, `nullsFirst` or `nullsLast`.
-| `sortLimit(offset, fetch, expr...)`<br/>`sortLimit(offset, fetch, exprList)` | Creates a [Sort]({{ site.apiRoot }}/org/apache/calcite/rel/core/Sort.html) with offset and limit.
-| `limit(offset, fetch)` | Creates a [Sort]({{ site.apiRoot }}/org/apache/calcite/rel/core/Sort.html) that does not sort, only applies with offset and limit.
-| `join(joinType, expr...)`<br/>`join(joinType, exprList)`<br/>`join(joinType, fieldName...)` | Creates a [Join]({{ site.apiRoot }}/org/apache/calcite/rel/core/Join.html) of the two most recent relational expressions.<br/><br/>The first form joins on a boolean expression (multiple conditions are combined using AND).<br/><br/>The last form joins on named fields; each side must have a field of each name.
-| `semiJoin(expr)` | Creates a [SemiJoin]({{ site.apiRoot }}/org/apache/calcite/rel/core/SemiJoin.html) of the two most recent relational expressions.
-| `union(all [, n])` | Creates a [Union]({{ site.apiRoot }}/org/apache/calcite/rel/core/Union.html) of the `n` (default two) most recent relational expressions.
-| `intersect(all [, n])` | Creates an [Intersect]({{ site.apiRoot }}/org/apache/calcite/rel/core/Intersect.html) of the `n` (default two) most recent relational expressions.
-| `minus(all)` | Creates a [Minus]({{ site.apiRoot }}/org/apache/calcite/rel/core/Minus.html) of the two most recent relational expressions.
-
-Argument types:
-
-* `expr`  [RexNode]({{ site.apiRoot }}/org/apache/calcite/rex/RexNode.html)
-* `expr...` Array of [RexNode]({{ site.apiRoot }}/org/apache/calcite/rex/RexNode.html)
-* `exprList` Iterable of [RexNode]({{ site.apiRoot }}/org/apache/calcite/rex/RexNode.html)
-* `fieldOrdinal` Ordinal of a field within its row (starting from 0)
-* `fieldName` Name of a field, unique within its row
-* `fieldName...` Array of String
-* `fieldNames` Iterable of String
-* `rowType` [RelDataType]({{ site.apiRoot }}/org/apache/calcite/rel/type/RelDataType.html)
-* `groupKey` [RelBuilder.GroupKey]({{ site.apiRoot }}/org/apache/calcite/tools/RelBuilder.GroupKey.html)
-* `aggCall...` Array of [RelBuilder.AggCall]({{ site.apiRoot }}/org/apache/calcite/tools/RelBuilder.AggCall.html)
-* `aggCallList` Iterable of [RelBuilder.AggCall]({{ site.apiRoot }}/org/apache/calcite/tools/RelBuilder.AggCall.html)
-* `value...` Array of Object
-* `value` Object
-* `tupleList` Iterable of List of [RexLiteral]({{ site.apiRoot }}/org/apache/calcite/rex/RexLiteral.html)
-* `all` boolean
-* `distinct` boolean
-* `alias` String
-
-The builder methods perform various optimizations, including:
-* `project` returns its input if asked to project all columns in order
-* `filter` flattens the condition (so an `AND` and `OR` may have more than 2 children),
-  simplifies (converting say `x = 1 AND TRUE` to `x = 1`)
-* If you apply `sort` then `limit`, the effect is as if you had called `sortLimit`
-
-### Stack methods
-
-
-| Method              | Description
-|:------------------- |:-----------
-| `build()`           | Pops the most recently created relational expression off the stack
-| `push(rel)`         | Pushes a relational expression onto the stack. Relational methods such as `scan`, above, call this method, but user code generally does not
-| `pushAll(collection)` | Pushes a collection of relational expressions onto the stack
-| `peek()`            | Returns the relational expression most recently put onto the stack, but does not remove it
-
-#### Scalar expression methods
-
-The following methods return a scalar expression
-([RexNode]({{ site.apiRoot }}/org/apache/calcite/rex/RexNode.html)).
-
-Many of them use the contents of the stack. For example, `field("DEPTNO")`
-returns a reference to the "DEPTNO" field of the relational expression just
-added to the stack.
-
-| Method              | Description
-|:------------------- |:-----------
-| `literal(value)` | Constant
-| `field(fieldName)` | Reference, by name, to a field of the top-most relational expression
-| `field(fieldOrdinal)` | Reference, by ordinal, to a field of the top-most relational expression
-| `field(inputCount, inputOrdinal, fieldName)` | Reference, by name, to a field of the (`inputCount` - `inputOrdinal`)th relational expression
-| `field(inputCount, inputOrdinal, fieldOrdinal)` | Reference, by ordinal, to a field of the (`inputCount` - `inputOrdinal`)th relational expression
-| `fields(fieldOrdinalList)` | List of expressions referencing input fields by ordinal
-| `fields(mapping)` | List of expressions referencing input fields by a given mapping
-| `fields(collation)` | List of expressions, `exprList`, such that `sort(exprList)` would replicate collation
-| `call(op, expr...)`<br/>`call(op, exprList)` | Call to a function or operator
-| `and(expr...)`<br/>`and(exprList)` | Logical AND. Flattens nested ANDs, and optimizes cases involving TRUE and FALSE.
-| `or(expr...)`<br/>`or(exprList)` | Logical OR. Flattens nested ORs, and optimizes cases involving TRUE and FALSE.
-| `not(expr)` | Logical NOT
-| `equals(expr, expr)` | Equals
-| `isNull(expr)` | Checks whether an expression is null
-| `isNotNull(expr)` | Checks whether an expression is not null
-| `alias(expr, fieldName)` | Renames an expression (only valid as an argument to `project`)
-| `cast(expr, typeName)`<br/>`cast(expr, typeName, precision)`<br/>`cast(expr, typeName, precision, scale)`<br/> | Converts an expression to a given type
-| `desc(expr)` | Changes sort direction to descending (only valid as an argument to `sort` or `sortLimit`)
-| `nullsFirst(expr)` | Changes sort order to nulls first (only valid as an argument to `sort` or `sortLimit`)
-| `nullsLast(expr)` | Changes sort order to nulls last (only valid as an argument to `sort` or `sortLimit`)
-
-### Group key methods
-
-The following methods return a
-[RelBuilder.GroupKey]({{ site.apiRoot }}/org/apache/calcite/tools/RelBuilder.GroupKey.html).
-
-| Method              | Description
-|:------------------- |:-----------
-| `groupKey(fieldName...)`<br/>`groupKey(fieldOrdinal...)`<br/>`groupKey(expr...)`<br/>`groupKey(exprList)` | Creates a group key of the given expressions
-| `groupKey(exprList, exprListList)` | Creates a group key of the given expressions with grouping sets
-| `groupKey(bitSet, bitSets)` | Creates a group key of the given input columns with grouping sets
-
-### Aggregate call methods
-
-The following methods return an
-[RelBuilder.AggCall]({{ site.apiRoot }}/org/apache/calcite/tools/RelBuilder.AggCall.html).
-
-| Method              | Description
-|:------------------- |:-----------
-| `aggregateCall(op, distinct, filter, alias, expr...)`<br/>`aggregateCall(op, distinct, filter, alias, exprList)` | Creates a call to a given aggregate function, with an optional filter expression
-| `count(distinct, alias, expr...)` | Creates a call to the COUNT aggregate function
-| `countStar(alias)` | Creates a call to the COUNT(*) aggregate function
-| `sum(distinct, alias, expr)` | Creates a call to the SUM aggregate function
-| `min(alias, expr)` | Creates a call to the MIN aggregate function
-| `max(alias, expr)` | Creates a call to the MAX aggregate function

http://git-wip-us.apache.org/repos/asf/calcite/blob/65f2afa7/avatica/site/_docs/avatica_json_reference.md
----------------------------------------------------------------------
diff --git a/avatica/site/_docs/avatica_json_reference.md b/avatica/site/_docs/avatica_json_reference.md
deleted file mode 100644
index d49be7c..0000000
--- a/avatica/site/_docs/avatica_json_reference.md
+++ /dev/null
@@ -1,1086 +0,0 @@
----
-layout: docs
-title: Avatica JSON Reference
-sidebar_title: JSON Reference
-permalink: /docs/avatica_json_reference.html
-requests:
-  - { name: "CatalogsRequest" }
-  - { name: "CloseConnectionRequest" }
-  - { name: "CloseStatementRequest" }
-  - { name: "ColumnsRequest" }
-  - { name: "CommitRequest" }
-  - { name: "ConnectionSyncRequest" }
-  - { name: "CreateStatementRequest" }
-  - { name: "DatabasePropertyRequest" }
-  - { name: "ExecuteRequest" }
-  - { name: "FetchRequest" }
-  - { name: "OpenConnectionRequest" }
-  - { name: "PrepareAndExecuteRequest" }
-  - { name: "PrepareRequest" }
-  - { name: "RollbackRequest" }
-  - { name: "SchemasRequest" }
-  - { name: "SyncResultsRequest" }
-  - { name: "TableTypesRequest" }
-  - { name: "TablesRequest" }
-  - { name: "TypeInfoRequest" }
-miscellaneous:
-  - { name: "AvaticaParameter" }
-  - { name: "AvaticaSeverity" }
-  - { name: "AvaticaType" }
-  - { name: "ColumnMetaData" }
-  - { name: "ConnectionProperties" }
-  - { name: "CursorFactory" }
-  - { name: "DatabaseProperty" }
-  - { name: "Frame" }
-  - { name: "QueryState" }
-  - { name: "Rep" }
-  - { name: "RpcMetadata" }
-  - { name: "Signature" }
-  - { name: "StateType" }
-  - { name: "StatementHandle" }
-  - { name: "StatementType" }
-  - { name: "Style" }
-  - { name: "TypedValue" }
-responses:
-  - { name: "CloseConnectionResponse" }
-  - { name: "CloseStatementResponse" }
-  - { name: "CommitResponse" }
-  - { name: "ConnectionSyncResponse" }
-  - { name: "CreateStatementResponse" }
-  - { name: "DatabasePropertyResponse" }
-  - { name: "ErrorResponse" }
-  - { name: "ExecuteResponse" }
-  - { name: "FetchResponse" }
-  - { name: "OpenConnectionResponse" }
-  - { name: "PrepareResponse" }
-  - { name: "ResultSetResponse" }
-  - { name: "RollbackResponse" }
-  - { name: "SyncResultsResponse" }
----
-
-<!--
-{% comment %}
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to you under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License.  You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-{% endcomment %}
--->
-
-As Avatica uses JSON to serialize messages sent over an HTTP transport,
-the RPC layer is agnostic of the language used by a client. While the Avatica
-server is written in Java, this enables clients to interact with the server
-using any language instead of being limited to Java.
-
-A specification of the JSON request and response objects are documented
-below. Programmatic bindings for these JSON objects are only available
-in Java. For support outside of Java, see the Protocol Buffer
-[bindings]({{ site.baseurl }}/docs/avatica_protobuf_reference.html)
-
-## Index
-
-### Requests
-<ul>
-  {% for item in page.requests %}<li><a href="#{{ item.name | downcase }}">{{ item.name }}</a></li>{% endfor %}
-</ul>
-
-### Responses
-<ul>
-  {% for item in page.responses %}<li><a href="#{{ item.name | downcase }}">{{ item.name }}</a></li>{% endfor %}
-</ul>
-
-### Miscellaneous
-<ul>
-  {% for item in page.miscellaneous %}<li><a href="#{{ item.name | downcase }}">{{ item.name }}</a></li>{% endfor %}
-</ul>
-
-
-## Requests
-
-The collection of all JSON objects accepted as requests to Avatica. All Requests include a `request` attribute
-which uniquely identifies the concrete Request from all other Requests.
-
-### CatalogsRequest
-
-This request is used to fetch the available catalog names in the database.
-
-{% highlight json %}
-{
-  "request": "getCatalogs",
-  "connectionId": "000000-0000-0000-00000000"
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier of the connection to use.
-
-### CloseConnectionRequest
-
-This request is used to close the Connection object in the Avatica server identified by the given IDs.
-
-{% highlight json %}
-{
-  "request": "closeConnection",
-  "connectionId": "000000-0000-0000-00000000"
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier of the connection to close.
-
-### CloseStatementRequest
-
-This request is used to close the Statement object in the Avatica server identified by the given IDs.
-
-{% highlight json %}
-{
-  "request": "closeStatement",
-  "connectionId": "000000-0000-0000-00000000",
-  "statementId": 12345
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier of the connection to which the statement belongs.
-
-`statementId` (required integer) The identifier of the statement to close.
-
-### ColumnsRequest
-
-This request is used to fetch columns in the database given some optional filtering criteria.
-
-{% highlight json %}
-{
-  "request": "getColumns",
-  "connectionId": "000000-0000-0000-00000000",
-  "catalog": "catalog",
-  "schemaPattern": "schema_pattern.*",
-  "tableNamePattern": "table_pattern.*",
-  "columnNamePattern": "column_pattern.*"
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier of the connection on which to fetch the columns.
-
-`catalog` (optional string) The name of a catalog to limit returned columns.
-
-`schemaPattern` (optional string) A Java Pattern against schemas to limit returned columns.
-
-`tableNamePattern` (optional string) A Java Pattern against table names to limit returned columns.
-
-`columnNamePattern` (optional string) A Java Pattern against column names to limit returned columns.
-
-### CommitRequest
-
-This request is used to issue a `commit` on the Connection in the Avatica server identified by the given ID.
-
-{% highlight json %}
-{
-  "request": "commit",
-  "connectionId": "000000-0000-0000-00000000"
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier of the connection on which to invoke commit.
-
-### ConnectionSyncRequest
-
-This request is used to ensure that the client and server have a consistent view of the database properties.
-
-{% highlight json %}
-{
-  "request": "connectionSync",
-  "connectionId": "000000-0000-0000-00000000",
-  "connProps": ConnectionProperties
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier of the connection to synchronize.
-
-`connProps` (optional nested object) A <a href="#connectionproperties">ConnectionProperties</a> object to synchronize between the client and server.
-
-### CreateStatementRequest
-
-This request is used to create a new Statement in the Avatica server.
-
-{% highlight json %}
-{
-  "request": "createStatement",
-  "connectionId": "000000-0000-0000-00000000"
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier of the connection to use in creating a statement.
-
-### DatabasePropertyRequest
-
-This request is used to fetch all <a href="#databaseproperty">database properties</a>.
-
-{% highlight json %}
-{
-  "request": "databaseProperties",
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier of the connection to use when fetching the database properties.
-
-### ExecuteRequest
-
-This request is used to execute a PreparedStatement, optionally with values to bind to the parameters in the Statement.
-
-{% highlight json %}
-{
-  "request": "execute",
-  "statementHandle": StatementHandle,
-  "parameterValues": [TypedValue, TypedValue, ... ],
-  "maxRowCount": 100
-}
-{% endhighlight %}
-
-`statementHandle` (required object) A <a href="#statementhandle">StatementHandle</a> object.
-
-`parameterValues` (optional array of nested objects) The <a href="#typedvalue">TypedValue</a> for each parameter on the prepared statement.
-
-`maxRowCount` (required long) The maximum number of rows returned in the response.
-
-### FetchRequest
-
-This request is used to fetch a batch of rows from a Statement previously created.
-
-{% highlight json %}
-{
-  "request": "fetch",
-  "connectionId": "000000-0000-0000-00000000",
-  "statementId": 12345,
-  "offset": 0,
-  "fetchMaxRowCount": 100
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier of the connection to use.
-
-`statementId` (required integer) The identifier of the statement created using the above connection.
-
-`offset` (required integer) The positional offset into a result set to fetch.
-
-`fetchMatchRowCount` (required integer) The maximum number of rows to return in the response to this request.
-
-### OpenConnectionRequest
-
-This request is used to open a new Connection in the Avatica server.
-
-{% highlight json %}
-{
-  "request": "openConnection",
-  "connectionId": "000000-0000-0000-00000000",
-  "info": {"key":"value", ...}
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier of the connection to open in the server.
-
-`info` (optional string-to-string map) A Map containing properties to include when creating the Connection.
-
-### PrepareAndExecuteRequest
-
-This request is used as a short-hand for create a Statement and fetching the first batch of results in a single call without any parameter substitution.
-
-{% highlight json %}
-{
-  "request": "prepareAndExecute",
-  "connectionId": "000000-0000-0000-00000000",
-  "statementId": 12345,
-  "sql": "SELECT * FROM table",
-  "maxRowCount": 100,
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier for the connection to use.
-
-`statementId` (required integer) The identifier for the statement created by the above connection to use.
-
-`sql` (required string) A SQL statement
-
-`maxRowCount` (required long) The maximum number of rows returned in the response.
-
-### PrepareRequest
-
-This request is used to create create a new Statement with the given query in the Avatica server.
-
-{% highlight json %}
-{
-  "request": "prepare",
-  "connectionId": "000000-0000-0000-00000000",
-  "sql": "SELECT * FROM table",
-  "maxRowCount": 100,
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier for the connection to use.
-
-`sql` (required string) A SQL statement
-
-`maxRowCount` (required long) The maximum number of rows returned in the response.
-
-### SyncResultsRequest
-
-This request is used to reset a ResultSet's iterator to a specific offset in the Avatica server.
-
-{% highlight json %}
-{
-  "request": "syncResults",
-  "connectionId": "000000-0000-0000-00000000",
-  "statementId": 12345,
-  "state": QueryState,
-  "offset": 200
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier for the connection to use.
-
-`statementId` (required integer) The identifier for the statement to use.
-
-`state` (required object) The <a href="#querystate">QueryState</a> object.
-
-`offset` (required long) The offset into the ResultSet to seek to.
-
-### RollbackRequest
-
-This request is used to issue a `rollback` on the Connection in the Avatica server identified by the given ID.
-
-{% highlight json %}
-{
-  "request": "rollback",
-  "connectionId": "000000-0000-0000-00000000"
-}
-{% endhighlight %}
-
-`connectionId` (required string) The identifier for the connection on which to invoke rollback.
-
-### SchemasRequest
-
-This request is used to fetch the schemas matching the provided criteria in the database.
-
-{% highlight json %}
-{
-  "request": "getSchemas",
-  "connectionId": "000000-0000-0000-00000000",
-  "catalog": "name",
-  "schemaPattern": "pattern.*"
-}
-{% endhighlight %}
-
-`connection_id` The identifier for the connection to fetch schemas from.
-
-`catalog` (required string) The name of the catalog to fetch the schema from.
-
-`schemaPattern` (required string) A Java pattern of schemas to fetch.
-
-### TableTypesRequest
-
-This request is used to fetch the table types available in this database.
-
-{% highlight json %}
-{
-  "request": "getTableTypes",
-  "connectionId": "000000-0000-0000-00000000"
-}
-{% endhighlight %}
-
-`connectionId` The identifier of the connection to fetch the table types from.
-
-### TablesRequest
-
-This request is used to fetch the tables available in this database filtered by the provided criteria.
-
-{% highlight json %}
-{
-  "request": "getTables",
-  "connectionId": "000000-0000-0000-00000000",
-  "catalog": "catalog_name",
-  "schemaPattern": "schema_pattern.*",
-  "tableNamePattern": "table_name_pattern.*",
-  "typeList": [ "TABLE", "VIEW", ... ]
-}
-{% endhighlight %}
-
-`catalog` (optional string) The name of a catalog to restrict fetched tables.
-
-`connectionId` The identifier of the connection to fetch the tables from.
-
-`schemaPattern` (optional string) A Java Pattern representing schemas to include in fetched tables.
-
-`tableNamePattern` (optional string) A Java Pattern representing table names to include in fetched tables.
-
-`typeList` (optional array of string) A list of table types used to restrict fetched tables.
-
-### TypeInfoRequest
-
-This request is used to fetch the types available in this database.
-
-{% highlight json %}
-{
-  "request": "getTypeInfo",
-  "connectionId": "000000-0000-0000-00000000"
-}
-{% endhighlight %}
-
-`connectionId` The identifier of the connection to fetch the types from.
-
-## Responses
-
-The collection of all JSON objects returned as responses from Avatica. All Responses include a `response` attribute
-which uniquely identifies the concrete Response from all other Responses.
-
-### CloseConnectionResponse
-
-A response to the <a href="#closeconnectionrequest">CloseConnectionRequest</a>.
-
-{% highlight json %}
-{
-  "response": "closeConnection",
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-### CloseStatementResponse
-
-A response to the <a href="#closestatementrequest">CloseStatementRequest</a>.
-
-{% highlight json %}
-{
-  "response": "closeStatement",
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-### CommitResponse
-
-A response to the <a href="#commitrequest">CommitRequest</a>.
-
-{% highlight json %}
-{
-  "response": "commit"
-}
-{% endhighlight %}
-
-There are no extra attributes on this Response.
-
-### ConnectionSyncResponse
-
-A response to the <a href="#connectionsyncrequest">ConnectionSyncRequest</a>. Properties included in the
-response are those of the Connection in the Avatica server.
-
-{% highlight json %}
-{
-  "response": "connectionSync",
-  "connProps": ConnectionProperties,
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`connProps` The <a href="#connectionproperties">ConnectionProperties</a> that were synchronized.
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-### CreateStatementResponse
-
-A response to the <a href="#createstatementrequest">CreateStatementRequest</a>. The ID of the statement
-that was created is included in the response. Clients will use this `statementId` in subsequent calls.
-
-{% highlight json %}
-{
-  "response": "createStatement",
-  "connectionId": "000000-0000-0000-00000000",
-  "statementId": 12345,
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`connectionId` The identifier for the connection used to create the statement.
-
-`statementId` The identifier for the created statement.
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-### DatabasePropertyResponse
-
-A response to the <a href="#databasepropertyrequest">DatabasePropertyRequest</a>. See <a hred="#databaseproperty">DatabaseProperty</a>
-for information on the available property keys.
-
-{% highlight json %}
-{
-  "response": "databaseProperties",
-  "map": { DatabaseProperty: Object, DatabaseProperty: Object, ... },
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`map` A map of <a href="#databaseproperty">DatabaseProperty</a> to value of that property. The value may be some
-primitive type or an array of primitive types.
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-### ErrorResponse
-
-A response when an error was caught executing a request. Any request may return this response.
-
-{% highlight json %}
-{
-  "response": "error",
-  "exceptions": [ "stacktrace", "stacktrace", ... ],
-  "errorMessage": "The error message",
-  "errorCode": 42,
-  "sqlState": "ABC12",
-  "severity": AvaticaSeverity,
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`exceptions` A list of stringified Java StackTraces.
-
-`errorMessage` A human-readable error message.
-
-`errorCode` A numeric code for this error.
-
-`sqlState` A five character alphanumeric code for this error.
-
-`severity` An <a href="#avaticaseverity">AvaticaSeverity</a> object which denotes how critical the error is.
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-### ExecuteResponse
-
-A response to the <a href="#executerequest">ExecuteRequest</a> which contains the results for a metadata query.
-
-{% highlight json %}
-{
-  "response": "executeResults",
-  "resultSets": [ ResultSetResponse, ResultSetResponse, ... ],
-  "missingStatement": false,
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`resultSets` An array of <a href="#resultsetresponse">ResultSetResponse</a>s.
-
-`missingStatement` A boolean which denotes if the request failed due to a missing Statement.
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-### FetchResponse
-
-A response to the <a href="#fetchrequest">FetchRequest</a> which contains the request for the query.
-
-{% highlight json %}
-{
-  "response": "fetch",
-  "frame": Frame,
-  "missingStatement": false,
-  "missingResults": false,
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`frame` A <a href="#frame">Frame</a> containing the results of the fetch.
-
-`missingStatement` A boolean which denotes if the request failed due to a missing Statement.
-
-`missingResults` A boolean which denotes if the request failed due to a missing ResultSet.
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-### OpenConnectionResponse
-
-A response to the <a href="#openconnectionrequest">OpenConnectionRequest</a>. The ID for the connection that
-the client should use in subsequent calls was provided by the client in the request.
-
-{% highlight json %}
-{
-  "response": "openConnection",
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-### PrepareResponse
-
-A response to the <a href="#preparerequest">PrepareRequest</a>. This response includes a <a href="#statementhandle">StatementHandle</a>
-which clients must use to fetch the results from the Statement.
-
-{% highlight json %}
-{
-  "response": "prepare",
-  "statement": StatementHandle,
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`statement` A <a href="#statementhandle">StatementHandle</a> object.
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-### ResultSetResponse
-
-A response which contains the results and type details from a query.
-
-{% highlight json %}
-{
-  "response": "resultSet",
-  "connectionId": "000000-0000-0000-00000000",
-  "statementId": 12345,
-  "ownStatement": true,
-  "signature": Signature,
-  "firstFrame": Frame,
-  "updateCount": 10,
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`connectionId` The identifier for the connection used to generate this response.
-
-`statementId` The identifier for the statement used to generate this response.
-
-`ownStatement` Whether the result set has its own dedicated statement. If true, the server must automatically close the
-statement when the result set is closed. This is used for JDBC metadata result sets, for instance.
-
-`signature` A non-optional nested object <a href="#signature">Signature</a>
-
-`firstFrame` A optional nested object <a href="#frame">Frame</a>
-
-`updateCount` A number which is always `-1` for normal result sets. Any other value denotes a "dummy" result set
-that only contains this count and no additional data.
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-### RollbackResponse
-
-A response to the <a href="#rollbackrequest">RollBackRequest</a>.
-
-{% highlight json %}
-{
-  "response": "rollback"
-}
-{% endhighlight %}
-
-There are no extra attributes on this Response.
-
-### SyncResultsResponse
-
-A response to the <a href="#syncresultsrequest">SyncResultsRequest</a>. When `moreResults` is true, a <a href="#fetchrequest">FetchRequest</a>
-should be issued to get the next batch of records. When `missingStatement` is true, the statement must be re-created using <a href="#preparerequest">PrepareRequest</a>
-or the appropriate Request for a DDL request (e.g. <a href="#catalogsrequest">CatalogsRequest</a> or <a href="#schemasrequest">SchemasRequest</a>).
-
-{% highlight json %}
-{
-  "response": "syncResults",
-  "moreResults": true,
-  "missingStatement": false,
-  "rpcMetadata": RpcMetadata
-}
-{% endhighlight %}
-
-`moreResults` A boolean which denotes if results exist for the ResultSet being "synced" per the request.
-
-`missingStatement` A boolean which denotes if the statement for the ResultSet still exists.
-
-`rpcMetadata` <a href="#rpcmetadata">Server metadata</a> about this call.
-
-## Miscellaneous
-
-### AvaticaParameter
-
-This object describes the "simple", or scalar, JDBC type representation of a column in a result. This does not include
-complex types such as arrays.
-
-{% highlight json %}
-{
-  "signed": true,
-  "precision": 10,
-  "scale": 2,
-  "parameterType": 8,
-  "typeName": "integer",
-  "className": "java.lang.Integer",
-  "name": "number"
-}
-{% endhighlight %}
-
-`signed` A boolean denoting whether the column is a signed numeric.
-
-`precision` The maximum numeric precision supported by this column.
-
-`scale` The maximum numeric scale supported by this column.
-
-`parameterType` An integer corresponding to the JDBC Types class denoting the column's type.
-
-`typeName` The JDBC type name for this column.
-
-`className` The Java class backing the JDBC type for this column.
-
-`name` The name of the column.
-
-### AvaticaSeverity
-
-This enumeration describes the various levels of concern for an error in the Avatica server.
-
-One of:
-
-* `UNKNOWN`
-* `FATAL`
-* `ERROR`
-* `WARNING`
-
-### AvaticaType
-
-This object describes a simple or complex type for a column. Complex types will contain
-additional information in the `component` or `columns` attribute which describe the nested
-types of the complex parent type.
-
-{% highlight json %}
-{
-  "type": "scalar",
-  "id": "identifier",
-  "name": "column",
-  "rep": Rep,
-  "columns": [ ColumnMetaData, ColumnMetaData, ... ],
-  "component": AvaticaType
-}
-{% endhighlight %}
-
-`type` One of: `scalar`, `array`, `struct`.
-
-`id` A numeric value corresponding to the type of the object per the JDBC Types class.
-
-`name` The readable name of the JDBC type.
-
-`rep` A nested <a href="#rep">Rep</a> object used by Avatica to hold additional type information.
-
-`columns` For `STRUCT` types, a list of the columns contained in that `STRUCT`.
-
-`component` For `ARRAY` types, the type of the elements contained in that `ARRAY`.
-
-### ColumnMetaData
-
-This object represents the JDBC ResultSetMetaData for a column.
-
-{% highlight json %}
-{
-  "ordinal": 0,
-  "autoIncrement": true,
-  "caseSensitive": true,
-  "searchable": false,
-  "currency": false,
-  "nullable": 0,
-  "signed": true,
-  "displaySize": 20,
-  "label": "Description",
-  "columnName": "col1",
-  "schemaName": "schema",
-  "precision": 10,
-  "scale": 2,
-  "tableName": "table",
-  "catalogName": "catalog",
-  "type": AvaticaType,
-  "readOnly": false,
-  "writable": true,
-  "definitelyWritable": true,
-  "columnClassName": "java.lang.String"
-}
-{% endhighlight %}
-
-`ordinal` A positional offset number.
-
-`autoIncrement` A boolean denoting whether the column is automatically incremented.
-
-`caseSensitive` A boolean denoting whether the column is case sensitive.
-
-`searchable` A boolean denoting whether this column supports all WHERE search clauses.
-
-`currency` A boolean denoting whether this column represents currency.
-
-`nullable` A number denoting whether this column supports null values.
-
-* 0 = No null values are allowed
-* 1 = Null values are allowed
-* 2 = It is unknown if null values are allowed
-
-`signed` A boolean denoting whether the column is a signed numeric.
-
-`displaySize` The character width of the column.
-
-`label` A description for this column.
-
-`columnName` The name of the column.
-
-`schemaName` The schema to which this column belongs.
-
-`precision` The maximum numeric precision supported by this column.
-
-`scale` The maximum numeric scale supported by this column.
-
-`tableName` The name of the table to which this column belongs.
-
-`catalogName` The name of the catalog to which this column belongs.
-
-`type` A nested <a href="#avaticatype">AvaticaType</a> representing the type of the column.
-
-`readOnly` A boolean denoting whether the column is read-only.
-
-`writable` A boolean denoting whether the column is possible to be updated.
-
-`definitelyWritable` A boolean denoting whether the column definitely can be updated.
-
-`columnClassName` The name of the Java class backing the column's type.
-
-### ConnectionProperties
-
-This object represents the properties for a given JDBC Connection.
-
-{% highlight json %}
-{
-  "connProps": "connPropsImpl",
-  "autoCommit": true,
-  "readOnly": true,
-  "transactionIsolation": 0,
-  "catalog": "catalog",
-  "schema": "schema"
-}
-{% endhighlight %}
-
-`autoCommit` (optional boolean) A boolean denoting if autoCommit is enabled for transactions.
-
-`readOnly` (optional boolean) A boolean denoting if a JDBC connection is read-only.
-
-`transactionIsolation` (optional integer) An integer which denotes the level of transactions isolation per the JDBC
-specification. This value is analogous to the values defined in `java.sql.Connection`.
-
-* 0 = Transactions are not supported
-* 1 = Dirty reads, non-repeatable reads and phantom reads may occur.
-* 2 = Dirty reads are prevented, but non-repeatable reads and phantom reads may occur.
-* 4 = Dirty reads and non-repeatable reads are prevented, but phantom reads may occur.
-* 8 = Dirty reads, non-repeatable reads, and phantom reads are all prevented.
-
-`catalog` (optional string) The name of the catalog to include when fetching connection properties.
-
-`schema` (optional string) The name of the schema to include when fetching connection properties.
-
-### CursorFactory
-
-This object represents the information required to cast untyped objects into the necessary type for some results.
-
-{% highlight json %}
-{
-  "style": Style,
-  "clazz": "java.lang.String",
-  "fieldNames": [ "column1", "column2", ... ]
-}
-{% endhighlight %}
-
-`style` A string denoting the <a href="#style">Style</a> of the contained objects.
-
-### DatabaseProperty
-
-This object represents the exposed database properties for a Connection through the Avatica server.
-
-One of:
-
-* `GET_STRING_FUNCTIONS`
-* `GET_NUMERIC_FUNCTIONS`
-* `GET_SYSTEM_FUNCTIONS`
-* `GET_TIME_DATE_FUNCTIONS`
-* `GET_S_Q_L_KEYWORDS`
-* `GET_DEFAULT_TRANSACTION_ISOLATION`
-
-### Frame
-
-This object represents a batch of results, tracking the offset into the results and whether more results still exist
-to be fetched in the Avatica server.
-
-{% highlight json %}
-{
-  "offset": 100,
-  "done": true,
-  "rows": [ [ val1, val2, ... ], ... ]
-}
-{% endhighlight %}
-
-`offset` The starting position of these `rows` in the encompassing result set.
-
-`done` A boolean denoting whether more results exist for this result set.
-
-`rows` An array of arrays corresponding to the rows and columns for the result set.
-
-### QueryState
-
-This object represents the way a ResultSet was created in the Avatica server. A ResultSet could be created by a user-provided
-SQL or by a DatabaseMetaData operation with arguments on that operation.
-
-{% highlight json %}
-{
-  "type": StateType,
-  "sql": "SELECT * FROM table",
-  "metaDataOperation": MetaDataOperation,
-  "operationArgs": ["arg0", "arg1", ... ]
-}
-{% endhighlight %}
-
-`type` A <a href="#statetype">StateType</a> object denoting what type of operation backs the ResultSet for this query.
-
-`sql` The SQL statement which created the ResultSet for this query. Required if the `type` is `SQL`.
-
-`metaDataOperation` The DML operation which created the ResultSet for this query. Required if the `type` is `METADATA`.
-
-`operationArgs` The arguments to the invoked DML operation. Required if the `type` is `METADATA`.
-
-### Rep
-
-This enumeration represents the concrete Java type for some value.
-
-One of:
-
-* `PRIMITIVE_BOOLEAN`
-* `PRIMITIVE_BYTE`
-* `PRIMITIVE_CHAR`
-* `PRIMITIVE_SHORT`
-* `PRIMITIVE_INT`
-* `PRIMITIVE_LONG`
-* `PRIMITIVE_FLOAT`
-* `PRIMITIVE_DOUBLE`
-* `BOOLEAN`
-* `BYTE`
-* `CHARACTER`
-* `SHORT`
-* `INTEGER`
-* `LONG`
-* `FLOAT`
-* `DOUBLE`
-* `JAVA_SQL_TIME`
-* `JAVA_SQL_TIMESTAMP`
-* `JAVA_SQL_DATE`
-* `JAVA_UTIL_DATE`
-* `BYTE_STRING`
-* `STRING`
-* `NUMBER`
-* `OBJECT`
-
-### RpcMetadata
-
-This object contains assorted per-call/contextual metadata returned by the Avatica server.
-
-{% highlight json %}
-{
-  "serverAddress": "localhost:8765"
-}
-{% endhighlight %}
-
-`serverAddress` The `host:port` of the server which created this object.
-
-### Signature
-
-This object represents the result of preparing a Statement in the Avatica server.
-
-{% highlight json %}
-{
-  "columns": [ ColumnMetaData, ColumnMetaData, ... ],
-  "sql": "SELECT * FROM table",
-  "parameters": [ AvaticaParameter, AvaticaParameter, ... ],
-  "cursorFactory": CursorFactory,
-  "statementType": StatementType
-}
-{% endhighlight %}
-
-`columns` An array of <a href="#columnmetadata">ColumnMetaData</a> objects denoting the schema of the result set.
-
-`sql` The SQL executed.
-
-`parameters` An array of <a href="#avaticaparameter">AvaticaParameter</a> objects denoting type-specific details.
-
-`cursorFactory` An <a href="#cursorfactory">CursorFactory</a> object representing the Java representation of the frame.
-
-`statementType` An <a href="#statementtype">StatementType</a> object representing the type of Statement.
-
-### StateType
-
-This enumeration denotes whether user-provided SQL or a DatabaseMetaData operation was used to create some ResultSet.
-
-One of:
-
-* `SQL`
-* `METADATA`
-
-### StatementHandle
-
-This object encapsulates all of the information of a Statement created in the Avatica server.
-
-{% highlight json %}
-{
-  "connectionId": "000000-0000-0000-00000000",
-  "id": 12345,
-  "signature": Signature
-}
-{% endhighlight %}
-
-`connectionId` The identifier of the connection to which this statement belongs.
-
-`id` The identifier of the statement.
-
-`signature` A <a href="#signature">Signature</a> object for the statement.
-
-### StatementType
-
-This enumeration represents what kind the Statement is.
-
-One of:
-
-* `SELECT`
-* `INSERT`
-* `UPDATE`
-* `DELETE`
-* `UPSERT`
-* `MERGE`
-* `OTHER_DML`
-* `CREATE`
-* `DROP`
-* `ALTER`
-* `OTHER_DDL`
-* `CALL`
-
-### Style
-
-This enumeration represents the generic "class" of type for a value.
-
-One of:
-
-* `OBJECT`
-* `RECORD`
-* `RECORD_PROJECTION`
-* `ARRAY`
-* `LIST`
-* `MAP`
-
-### TypedValue
-
-This object encapsulates the type and value for a column in a row.
-
-{% highlight json %}
-{
-  "type": "type_name",
-  "value": object
-}
-{% endhighlight %}
-
-`type` A name referring to the type of the object stored in `value`.
-
-`value` A JSON representation of a JDBC type.

http://git-wip-us.apache.org/repos/asf/calcite/blob/65f2afa7/avatica/site/_docs/avatica_overview.md
----------------------------------------------------------------------
diff --git a/avatica/site/_docs/avatica_overview.md b/avatica/site/_docs/avatica_overview.md
deleted file mode 100644
index 6c77eb9..0000000
--- a/avatica/site/_docs/avatica_overview.md
+++ /dev/null
@@ -1,130 +0,0 @@
----
-layout: docs
-title: Avatica Overview
-sidebar_title: Overview
-permalink: /docs/avatica_overview.html
----
-
-<!--
-{% comment %}
-Licensed to the Apache Software Foundation (ASF) under one or more
-contributor license agreements.  See the NOTICE file distributed with
-this work for additional information regarding copyright ownership.
-The ASF licenses this file to you under the Apache License, Version 2.0
-(the "License"); you may not use this file except in compliance with
-the License.  You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-{% endcomment %}
--->
-
-Avatica is a framework for building JDBC and ODBC drivers for databases,
-and an RPC wire protocol.
-
-![Avatica Architecture](https://raw.githubusercontent.com/julianhyde/share/master/slides/avatica-architecture.png)
-
-Avatica's Java binding has very few dependencies.
-Even though it is part of Apache Calcite it does not depend on other parts of
-Calcite. It depends only on JDK 1.7+ and Jackson.
-
-Avatica's wire protocol is JSON over HTTP.
-The Java implementation uses Jackson to convert request/response command
-objects to/from JSON.
-
-Avatica-Server is a Java implementation of Avatica RPC.
-
-Core concepts:
-
-* Meta is a local API sufficient to implement any Avatica provider
-* Factory creates implementations of the JDBC classes (Driver, Connection,
-  Statement, ResultSet) on top of a Meta
-* Service is an interface that implements the functions of Meta in terms
-  of request and response command objects
-
-## JDBC
-
-Avatica implements JDBC by means of Factory.
-Factory creates implementations of the JDBC classes (Driver, Connection,
-Statement, PreparedStatement, ResultSet) on top of a Meta.
-
-## ODBC
-
-Work has not started on Avatica ODBC.
-
-Avatica ODBC would use the same wire protocol and could use the same server
-implementation in Java. The ODBC client would be written in C or C++.
-
-Since the Avatica protocol abstracts many of the differences between providers,
-the same ODBC client could be used for different databases.
-
-## HTTP Server
-
-Avatica-server embeds the Jetty HTTP server, providing a class
-[HttpServer]({{ site.apiRoot }}/org/apache/calcite/avatica/server/HttpServer.html)
-that implements the Avatica RPC protocol
-and can be run as a standalone Java application.
-
-Connectors in HTTP server can be configured if needed by extending
-`HttpServer` class and overriding its `configureConnector()` method.
-For example, user can set `requestHeaderSize` to 64K bytes as follows:
-
-{% highlight java %}
-HttpServer server = new HttpServer(handler) {
-  @Override
-  protected ServerConnector configureConnector(
-      ServerConnector connector, int port) {
-    HttpConnectionFactory factory = (HttpConnectionFactory)
-        connector.getDefaultConnectionFactory();
-    factory.getHttpConfiguration().setRequestHeaderSize(64 << 10);
-    return super.configureConnector(connector, port);
-  }
-};
-server.start();
-{% endhighlight %}
-
-## Project structure
-
-We know that it is important that client libraries have minimal dependencies.
-
-Avatica is currently part of Apache Calcite.
-It does not depend upon any other part of Calcite.
-At some point Avatica could become a separate project.
-
-Packages:
-
-* [org.apache.calcite.avatica]({{ site.apiRoot }}/org/apache/calcite/avatica/package-summary.html) Core framework
-* [org.apache.calcite.avatica.remote]({{ site.apiRoot }}/org/apache/calcite/avatica/remote/package-summary.html) JDBC driver that uses remote procedure calls
-* [org.apache.calcite.avatica.server]({{ site.apiRoot }}/org/apache/calcite/avatica/server/package-summary.html) HTTP server
-* [org.apache.calcite.avatica.util]({{ site.apiRoot }}/org/apache/calcite/avatica/util/package-summary.html) Utilities
-
-## Status
-
-### Implemented
-
-* Create connection, create statement, metadata, prepare, bind, execute, fetch
-* RPC using JSON over HTTP
-* Local implementation
-* Implementation over an existing JDBC driver
-* Composite RPCs (combining several requests into one round trip)
-  * Execute-Fetch
-  * Metadata-Fetch (metadata calls such as getTables return all rows)
-
-### Not implemented
-
-* ODBC
-* RPCs
-  * CloseStatement
-  * CloseConnection
-* Composite RPCs
-  * CreateStatement-Prepare
-  * CloseStatement-CloseConnection
-  * Prepare-Execute-Fetch (Statement.executeQuery should fetch first N rows)
-* Remove statements from statement table
-* DML (INSERT, UPDATE, DELETE)
-* Statement.execute applied to SELECT statement


Mime
View raw message