diff --git a/gradle.properties b/gradle.properties
index 1101242..ddfbbbf 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -23,7 +23,7 @@
 # This is version for Calcite Avatica itself
 # Note: it should not include "-SNAPSHOT" as it is automatically added by build.gradle.kts
 # Release version can be generated by using -Prelease or -Prc=<int> arguments
-calcite.avatica.version=1.19.0
+calcite.avatica.version=1.20.0
 
 # The options below configures the use of local clone (e.g. testing development versions)
 # You can pass un-comment it, or pass option -PlocalReleasePlugins, or -PlocalReleasePlugins=<path>
diff --git a/site/_docs/history.md b/site/_docs/history.md
index 25a88e5..0f98f8f 100644
--- a/site/_docs/history.md
+++ b/site/_docs/history.md
@@ -28,9 +28,13 @@
 Downloads are available on the
 [downloads page]({{ site.baseurl }}/downloads/avatica.html).
 
-## <a href="https://github.com/apache/calcite-avatica/releases/tag/rel/avatica-1.19.0">1.19.0</a> / 2021-10-07
+## <a href="https://github.com/apache/calcite-avatica/releases/tag/rel/avatica-1.19.0">1.19.0</a> / 2021-10-11
 {: #v1-19-0}
 
+Apache Calcite Avatica 1.19.0 adds support for `BIT` and `NULL` data
+types, fixes issues with values of type `ARRAY`, and includes a few
+dependency updates.
+
 Compatibility: This release is tested
 on Linux, macOS, Microsoft Windows;
 using Oracle JDK 8, 9, 10, 11, 12, 13, 14, 15;
@@ -45,7 +49,7 @@
 Francis Chuang,
 Istvan Toth,
 Julian Hyde (release manager),
-NoboGo,
+NobiGo,
 Jack Scott,
 Sergey Nuyanzin,
 Stamatis Zampetakis,
diff --git a/site/_docs/howto.md b/site/_docs/howto.md
index 83d5a92..a9454fa 100644
--- a/site/_docs/howto.md
+++ b/site/_docs/howto.md
@@ -227,22 +227,23 @@
 If any of the steps fail, fix the problem, and
 start again from the top.
 
-### To prepare a release candidate directly in your environment:
+### Prepare a release candidate directly in your environment
 
-Pick a release candidate index and ensure it does not interfere with previous candidates for the version.
+Pick a release candidate index (starting from 0) and ensure it does
+not interfere with previous candidates for the version.
 
 {% highlight bash %}
 # Make sure that there are no junk files in the sandbox
 git clean -xn
 
 # Dry run the release candidate (push to asf-like-environment)
-./gradlew prepareVote -Prc=1
+./gradlew prepareVote -Prc=0
 
 # Push release candidate to ASF servers
-./gradlew prepareVote -Prc=1 -Pasf
+./gradlew prepareVote -Prc=0 -Pasf
 {% endhighlight %}
 
-### To prepare a release candidate in Docker:
+### Prepare a release candidate in Docker
 
 * You will need to have [Docker](https://docs.docker.com/install/) and [Docker Compose](https://docs.docker.com/compose/install/) installed.
 
@@ -447,14 +448,14 @@
 If the artifacts are not yet available, the build on Docker Hub will fail. It's best to continue with the following steps
 after you have confirmed that the nexus artifacts were promoted properly.
 
-### Publishing directly in your environment:
+### Publishing directly in your environment
 
 {% highlight bash %}
 # Dry run publishing the release (push to asf-like-environment)
-./gradlew publishDist -Prc=1
+./gradlew publishDist -Prc=0
 
 # Publish the release to ASF servers
-./gradlew publishDist -Prc=1 -Pasf
+./gradlew publishDist -Prc=0 -Pasf
 {% endhighlight %}
 
 If there are more than 2 releases in SVN (see https://dist.apache.org/repos/dist/release/calcite),
@@ -467,7 +468,8 @@
 The old releases will remain available in the
 [release archive](http://archive.apache.org/dist/calcite/).
 
-### Publishing a release using docker:
+### Publishing a release using docker
+
 This assumes that a rc release was tagged and pushed to the git repository.
 
 {% highlight bash %}
@@ -475,9 +477,11 @@
 {% endhighlight %}
 
 ## Add release notes and announce the release
+
 Add a release note by copying
 [site/_posts/2016-11-01-release-1.9.0.md]({{ site.sourceRoot }}/site/_posts/2016-11-01-release-1.9.0.md),
-generate the javadoc and copy to `site/target/avatica/javadocAggregate`
+update the version number in `gradle.properties`,
+generate the javadoc and copy to `site/target/avatica/javadocAggregate`,
 [publish the site](#publish-the-web-site),
 and check that it appears in the contents in [news](http://localhost:4000/news/).
 
diff --git a/site/_posts/2021-10-11-release-1.19.0.md b/site/_posts/2021-10-11-release-1.19.0.md
new file mode 100644
index 0000000..e67bff7
--- /dev/null
+++ b/site/_posts/2021-10-11-release-1.19.0.md
@@ -0,0 +1,34 @@
+---
+layout: news_item
+date: "2021-10-11 08:30:00 +0000"
+author: jhyde
+version: 1.19.0
+categories: [release]
+tag: v1-19-0
+sha: d9f4374
+component: avatica
+---
+<!--
+{% 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 %}
+-->
+
+Apache Calcite Avatica 1.19.0 adds support for `BIT` and `NULL` data
+types, fixes issues with values of type `ARRAY`, and includes a few
+dependency updates. See the list of
+[bug fixes and new features]({{ site.baseurl }}/docs/history.html#v1-19-0)
+for more information.
