[CALCITE-1354] Release notes for avatica-1.9.0
diff --git a/avatica/README b/avatica/README
new file mode 100644
index 0000000..451e39f
--- /dev/null
+++ b/avatica/README
@@ -0,0 +1,18 @@
+Apache Calcite Avatica release 1.9.0
+
+This is a source or binary distribution of Avatica, a framework for
+building database drivers. Avatica is a sub-project of Apache Calcite.
+
+Changes since the previous release are described in the
+site/_docs/history.md file.
+
+The LICENSE and NOTICE files contain license information.
+
+If this is a source distribution, you can find instructions how to
+build the release in the "Building from a source distribution" section
+in site/_docs/howto.md.
+
+README.md contains examples of running Avatica.
+
+Further information about Avatica is available at its web site,
+http://calcite.apache.org/avatica.
diff --git a/avatica/pom.xml b/avatica/pom.xml
index 1a2391b..faf4ef0 100644
--- a/avatica/pom.xml
+++ b/avatica/pom.xml
@@ -52,7 +52,7 @@
     <top.dir>${project.basedir}</top.dir>
     <avatica.release.version>${project.version}</avatica.release.version>
     <version.major>1</version.major>
-    <version.minor>8</version.minor>
+    <version.minor>9</version.minor>
     <!-- This list is in alphabetical order. -->
     <build-helper-maven-plugin.version>1.9</build-helper-maven-plugin.version>
     <checksum-maven-plugin.version>1.2</checksum-maven-plugin.version>
diff --git a/avatica/site/_docs/history.md b/avatica/site/_docs/history.md
index 214c740..6e5184f 100644
--- a/avatica/site/_docs/history.md
+++ b/avatica/site/_docs/history.md
@@ -28,6 +28,90 @@
 Downloads are available on the
 [downloads page]({{ site.baseurl }}/downloads/).
 
+## <a href="https://github.com/apache/calcite/releases/tag/calcite-avatica-1.9.0">1.9.0</a> / 2016-11-01
+{: #v1-9-0}
+
+Apache Calcite Avatica 1.9.0 includes various improvements to make it
+more robust and secure, while maintaining API and protocol
+compatibility with previous versions. We now include non-shaded and
+shaded artifacts, to make it easier to embed Avatica in your
+application. There is improved support for the JDBC API, including
+better type conversions and support for canceling statements. The
+transport is upgraded to use protobuf-3.1.0 (previously 3.0 beta).
+
+Compatibility: This release is tested
+on Linux, macOS, Microsoft Windows;
+using Oracle JDK 1.7, 1.8;
+Guava versions 14.0 to 19.0;
+other software versions as specified in `pom.xml`.
+
+Features and bug fixes
+
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1471">CALCITE-1471</a>]
+  `HttpServerSpnegoWithJaasTest.testAuthenticatedClientsAllowed` fails on Windows
+  (Aaron Mihalik)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1464">CALCITE-1464</a>]
+  Upgrade Jetty version to 9.2.19v20160908
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1463">CALCITE-1463</a>]
+  In `standalone-server` jar, relocate dependencies rather than excluding them
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1355">CALCITE-1355</a>]
+  Upgrade to protobuf-java 3.1.0
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1462">CALCITE-1462</a>]
+  Remove Avatica pom cruft
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1458">CALCITE-1458</a>]
+  Add column values to the deprecated protobuf attribute
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1433">CALCITE-1433</a>]
+  Add missing dependencies to `avatica-server`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1433">CALCITE-1433</a>]
+  Fix missing avatica `test-jar` dependency
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1423">CALCITE-1423</a>]
+  Add method `ByteString.indexOf(ByteString, int)`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1408">CALCITE-1408</a>]
+  `ResultSet.getXxx` methods should throw `SQLDataException` if cannot convert to
+  the requested type (Laurent Goujon)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1410">CALCITE-1410</a>]
+  Fix JDBC metadata classes (Laurent Goujon)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1224">CALCITE-1224</a>]
+  Publish non-shaded and shaded versions of Avatica client artifacts
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1407">CALCITE-1407</a>]
+  `MetaImpl.fieldMetaData` wrongly uses 1-based column ordinals
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1361">CALCITE-1361</a>]
+  Remove entry from `AvaticaConnection.flagMap` when session closed
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1399">CALCITE-1399</a>]
+  Make the jcommander `SerializationConverter` public
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1394">CALCITE-1394</a>]
+  Javadoc warnings due to `CoreMatchers.containsString` and `mockito-all`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1390">CALCITE-1390</a>]
+  Avatica JDBC driver wrongly modifies `Properties` object
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1371">CALCITE-1371</a>]
+  `PreparedStatement` does not process Date type correctly (Billy (Yiming) Liu)
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1301">CALCITE-1301</a>]
+  Add `cancel` flag to `AvaticaStatement`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1315">CALCITE-1315</a>]
+  Retry the request on `NoHttpResponseException`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1300">CALCITE-1300</a>]
+  Retry on HTTP-503 in hc-based `AvaticaHttpClient`
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1263">CALCITE-1263</a>]
+  Case-insensitive match and null default value for `enum` properties
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1282">CALCITE-1282</a>]
+  Adds an API method to set extra allowed Kerberos realms
+
+Tests
+
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1226">CALCITE-1226</a>]
+  Disable `AvaticaSpnegoTest` due to intermittent failures
+
+Web site and documentation
+
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1369">CALCITE-1369</a>]
+  Add list of Avatica clients to the web site
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1229">CALCITE-1229</a>]
+  Restore API and Test API links to site
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1287">CALCITE-1287</a>]
+  TCK test for binary columns
+* [<a href="https://issues.apache.org/jira/browse/CALCITE-1285">CALCITE-1285</a>]
+  Fix client URL template in example config file
+
 ## <a href="https://github.com/apache/calcite/releases/tag/calcite-avatica-1.8.0">1.8.0</a> / 2016-06-04
 {: #v1-8-0}
 
@@ -128,8 +212,6 @@
 * [<a href='https://issues.apache.org/jira/browse/CALCITE-1202'>CALCITE-1202</a>]
   Lock version of Jekyll used by website
 
-
-
 ## <a href="https://github.com/apache/calcite/releases/tag/calcite-avatica-1.7.1">1.7.1</a> / 2016-03-18
 {: #v1-7-1}
 
diff --git a/avatica/site/_docs/howto.md b/avatica/site/_docs/howto.md
index fbc7b59..24689b5 100644
--- a/avatica/site/_docs/howto.md
+++ b/avatica/site/_docs/howto.md
@@ -39,8 +39,8 @@
 then build using maven:
 
 {% highlight bash %}
-$ tar xvfz calcite-1.6.0-source.tar.gz
-$ cd calcite-1.6.0
+$ tar xvfz apache-calcite-avatica-1.9.0-src.tar.gz
+$ cd apache-calcite-avatica-1.9.0-src
 $ mvn install
 {% endhighlight %}
 
@@ -58,26 +58,10 @@
 
 {% highlight bash %}
 $ git clone git://github.com/apache/calcite.git
-$ cd calcite
+$ cd calcite/avatica
 $ mvn install
 {% endhighlight %}
 
-Calcite includes a number of machine-generated codes. By default, these are
-regenerated on every build, but this has the negative side-effect of causing
-a re-compilation of the entire project when the non-machine-generated code
-has not changed. To make sure incremental compilation still works as intended,
-provide the `skipGenerate` command line option with your maven command.
-If you invoke the `clean` lifecycle phase, you must not specify the
-`skipGenerate` option as it will not recompile the necessary code for the build
-to succeed.
-
-{% highlight bash %}
-$ mvn clean
-$ mvn package
-... hacks ...
-$ mvn package -DskipGenerate
-{% endhighlight %}
-
 [Running tests](#running-tests) describes how to run more or fewer
 tests.
 
@@ -122,11 +106,11 @@
 Typically, the code generated by the Protocol Buffers library doesn't
 need to be re-generated only every build, only when the schema changes.
 
-First, install Protobuf 3.0:
+First, install Protobuf 3.1:
 
 {% highlight bash %}
-$ wget https://github.com/google/protobuf/releases/download/v3.0.0-beta-1/protobuf-java-3.0.0-beta-1.tar.gz
-$ tar xf protobuf-java-3.0.0-beta-1.tar.gz && cd protobuf-3.0.0-beta-1
+$ wget https://github.com/google/protobuf/releases/download/v3.1.0/protobuf-java-3.1.0.tar.gz
+$ tar xf protobuf-java-3.1.0.tar.gz && cd protobuf-3.1.0
 $ ./configure
 $ make
 $ sudo make install
@@ -216,11 +200,12 @@
   a fix version assigned (most likely the version we are
   just about to release)
 
-Create a release branch named after the release, e.g. `branch-1.1`, and push it to Apache.
+Create a release branch named after the release, e.g.
+`branch-avatica-1.9`, and push it to Apache.
 
 {% highlight bash %}
-$ git checkout -b branch-X.Y
-$ git push -u origin branch-X.Y
+$ git checkout -b branch-avatica-X.Y
+$ git push -u origin branch-avatica-X.Y
 {% endhighlight %}
 
 We will use the branch for the entire the release process. Meanwhile,
@@ -265,11 +250,9 @@
   `README`, `README.md`
   * Check that the version in `README` is correct
 * For each .jar, verify that the `META-INF` directory contains the correct
-  contents for `DEPENDENCIES`, `LICENSE`, `NOTICE` and `git.properties` per the
+  contents for `DEPENDENCIES`, `LICENSE` and `NOTICE` per the
   source/classes contained. Refer to the ASF licensing documentation on
   what is required.
-* In each .jar, check that `org-apache-calcite-jdbc.properties` is
-  present and does not contain un-substituted `${...}` variables
 * Check PGP, per [this](https://httpd.apache.org/dev/verification.html)
 
 If something is not correct, you can invoke the `release:clean` mojo to remove the
@@ -312,8 +295,8 @@
 
 # Move the files into a directory
 cd target
-mkdir ~/dist/dev/calcite/apache-calcite-X.Y.Z-rcN
-mv apache-calcite-* ~/dist/dev/calcite/apache-calcite-avatica-X.Y.Z-rcN
+mkdir ~/dist/dev/calcite/apache-calcite-avatica-X.Y.Z-rcN
+mv apache-calcite-avatica-* ~/dist/dev/calcite/apache-calcite-avatica-X.Y.Z-rcN
 
 # Check in
 cd ~/dist/dev/calcite