You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bookkeeper.apache.org by si...@apache.org on 2019/02/09 01:34:02 UTC

[bookkeeper] branch master updated: Bump Netty and GRPC version

This is an automated email from the ASF dual-hosted git repository.

sijie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git


The following commit(s) were added to refs/heads/master by this push:
     new 9132659  Bump Netty and GRPC version
9132659 is described below

commit 9132659d5c0fa17d04109fad0841ffe637fc40f7
Author: Sijie Guo <gu...@gmail.com>
AuthorDate: Sat Feb 9 09:33:56 2019 +0800

    Bump Netty and GRPC version
    
    
    
    Descriptions of the changes in this PR:
    
    *Motivation*
    
    When we bumped Netty's version, we didn't bump the gRPC version.
    So the gRPC version has become very old.
    
    *Modifications*
    
    Bump both gRPC and Netty version to make them aligned with each other.
    
    
    
    Reviewers: Enrico Olivelli <eo...@gmail.com>
    
    This closes #1934 from sijie/bump_grpc_version
---
 bookkeeper-dist/src/assemble/bin-all.xml           |   6 +-
 bookkeeper-dist/src/assemble/bin-server.xml        |   4 +-
 bookkeeper-dist/src/assemble/bkctl.xml             |   4 +-
 .../src/main/resources/LICENSE-all.bin.txt         | 103 ++---
 .../src/main/resources/LICENSE-bkctl.bin.txt       |  97 ++---
 .../src/main/resources/LICENSE-server.bin.txt      | 101 ++---
 .../src/main/resources/NOTICE-all.bin.txt          |  54 +--
 .../src/main/resources/NOTICE-bkctl.bin.txt        |  48 +--
 .../src/main/resources/NOTICE-server.bin.txt       |  52 +--
 .../deps/checker-compat-qual-2.5.2/LICENSE         | 413 +++++++++++++++++++++
 .../LICENSE.base64.txt                             |   0
 .../LICENSE.jbzip2.txt                             |   0
 .../LICENSE.jfastlz.txt                            |   0
 .../LICENSE.jsr166y.txt                            |   0
 .../LICENSE.libdivsufsort.txt                      |   0
 .../LICENSE.protobuf.txt                           |   0
 .../LICENSE.slf4j.txt                              |   0
 pom.xml                                            |   6 +-
 .../apache/bookkeeper/clients/utils/GrpcUtils.java |   9 +-
 19 files changed, 664 insertions(+), 233 deletions(-)

diff --git a/bookkeeper-dist/src/assemble/bin-all.xml b/bookkeeper-dist/src/assemble/bin-all.xml
index 9e11c8e..6e638ed 100644
--- a/bookkeeper-dist/src/assemble/bin-all.xml
+++ b/bookkeeper-dist/src/assemble/bin-all.xml
@@ -54,14 +54,15 @@
       <directory>../src/main/resources/deps</directory>
       <outputDirectory>deps</outputDirectory>
       <includes>
+        <include>checker-compat-qual-2.5.2/LICENSE</include>
         <include>google-auth-library-credentials-0.9.0/LICENSE</include>
         <include>javax.servlet-api-3.1.0/CDDL+GPL-1.1</include>
+        <include>jline-2.11/LICENSE</include>
         <include>jsr-305/LICENSE</include>
         <include>netty-3.10.1.Final/*</include>
-        <include>netty-4.1.31.Final/*</include>
+        <include>netty-4.1.32.Final/*</include>
         <include>paranamer-2.8/LICENSE.txt</include>
         <include>protobuf-3.0.0/LICENSE</include>
-        <include>jline-2.11/LICENSE</include>
         <include>protobuf-3.5.1/LICENSE</include>
         <include>scala-library-2.11.7/LICENSE.md</include>
         <include>scala-parser-combinators_2.11-1.0.4/LICENSE.md</include>
@@ -105,6 +106,7 @@
         <exclude>org.apache.bookkeeper:stream-storage-api</exclude>
         <exclude>org.apache.bookkeeper:stream-storage-java-client-base</exclude>
         <exclude>org.apache.bookkeeper:stream-storage-java-kv-client</exclude>
+        <exclude>org.codehaus.mojo:animal-sniffer-annotations</exclude>
       </excludes>
     </dependencySet>
   </dependencySets>
diff --git a/bookkeeper-dist/src/assemble/bin-server.xml b/bookkeeper-dist/src/assemble/bin-server.xml
index ee88fe0..57cf40b 100644
--- a/bookkeeper-dist/src/assemble/bin-server.xml
+++ b/bookkeeper-dist/src/assemble/bin-server.xml
@@ -49,9 +49,10 @@
       <directory>../src/main/resources/deps</directory>
       <outputDirectory>deps</outputDirectory>
       <includes>
+        <include>checker-compat-qual-2.5.2/LICENSE</include>
         <include>google-auth-library-credentials-0.9.0/LICENSE</include>
         <include>javax.servlet-api-3.1.0/CDDL+GPL-1.1</include>
-        <include>netty-4.1.31.Final/*</include>
+        <include>netty-4.1.32.Final/*</include>
         <include>protobuf-3.0.0/LICENSE</include>
         <include>jline-2.11/LICENSE</include>
         <include>protobuf-3.5.1/LICENSE</include>
@@ -95,6 +96,7 @@
         <exclude>org.apache.bookkeeper:stream-storage-api</exclude>
         <exclude>org.apache.bookkeeper:stream-storage-java-client-base</exclude>
         <exclude>org.apache.bookkeeper:stream-storage-java-kv-client</exclude>
+        <exclude>org.codehaus.mojo:animal-sniffer-annotations</exclude>
       </excludes>
     </dependencySet>
   </dependencySets>
diff --git a/bookkeeper-dist/src/assemble/bkctl.xml b/bookkeeper-dist/src/assemble/bkctl.xml
index 439c344..4f2d92f 100644
--- a/bookkeeper-dist/src/assemble/bkctl.xml
+++ b/bookkeeper-dist/src/assemble/bkctl.xml
@@ -64,8 +64,9 @@
       <directory>../src/main/resources/deps</directory>
       <outputDirectory>deps</outputDirectory>
       <includes>
+        <include>checker-compat-qual-2.5.2/LICENSE</include>
         <include>google-auth-library-credentials-0.9.0/LICENSE</include>
-        <include>netty-4.1.31.Final/*</include>
+        <include>netty-4.1.32.Final/*</include>
         <include>protobuf-3.0.0/LICENSE</include>
         <include>jline-2.11/LICENSE</include>
         <include>protobuf-3.5.1/LICENSE</include>
@@ -108,6 +109,7 @@
         <exclude>org.apache.bookkeeper:stream-storage-proto</exclude>
         <exclude>org.apache.bookkeeper:stream-storage-api</exclude>
         <exclude>org.apache.bookkeeper:stream-storage-java-client-base</exclude>
+        <exclude>org.codehaus.mojo:animal-sniffer-annotations</exclude>
         <!-- exclude server-side dependencies -->
         <exclude>org.rocksdb:rocksdbjni</exclude>
       </excludes>
diff --git a/bookkeeper-dist/src/main/resources/LICENSE-all.bin.txt b/bookkeeper-dist/src/main/resources/LICENSE-all.bin.txt
index a1863d1..fc52da9 100644
--- a/bookkeeper-dist/src/main/resources/LICENSE-all.bin.txt
+++ b/bookkeeper-dist/src/main/resources/LICENSE-all.bin.txt
@@ -250,22 +250,22 @@ Apache Software License, Version 2.
 - lib/io.dropwizard.metrics-metrics-graphite-3.1.0.jar [21]
 - lib/io.dropwizard.metrics-metrics-jvm-3.1.0.jar [21]
 - lib/io.netty-netty-3.10.1.Final.jar [22]
-- lib/io.netty-netty-buffer-4.1.31.Final.jar [23]
-- lib/io.netty-netty-codec-4.1.31.Final.jar [23]
-- lib/io.netty-netty-codec-dns-4.1.31.Final.jar [23]
-- lib/io.netty-netty-codec-http-4.1.31.Final.jar [23]
-- lib/io.netty-netty-codec-http2-4.1.31.Final.jar [23]
-- lib/io.netty-netty-codec-socks-4.1.31.Final.jar [23]
-- lib/io.netty-netty-common-4.1.31.Final.jar [23]
-- lib/io.netty-netty-handler-4.1.31.Final.jar [23]
-- lib/io.netty-netty-handler-proxy-4.1.31.Final.jar [23]
-- lib/io.netty-netty-resolver-4.1.31.Final.jar [23]
-- lib/io.netty-netty-resolver-dns-4.1.31.Final.jar [23]
-- lib/io.netty-netty-tcnative-boringssl-static-2.0.19.Final.jar [23]
-- lib/io.netty-netty-transport-4.1.31.Final.jar [23]
-- lib/io.netty-netty-transport-native-epoll-4.1.31.Final.jar [23]
-- lib/io.netty-netty-transport-native-epoll-4.1.31.Final-linux-x86_64.jar [23]
-- lib/io.netty-netty-transport-native-unix-common-4.1.31.Final.jar [23]
+- lib/io.netty-netty-buffer-4.1.32.Final.jar [23]
+- lib/io.netty-netty-codec-4.1.32.Final.jar [23]
+- lib/io.netty-netty-codec-dns-4.1.32.Final.jar [23]
+- lib/io.netty-netty-codec-http-4.1.32.Final.jar [23]
+- lib/io.netty-netty-codec-http2-4.1.32.Final.jar [23]
+- lib/io.netty-netty-codec-socks-4.1.32.Final.jar [23]
+- lib/io.netty-netty-common-4.1.32.Final.jar [23]
+- lib/io.netty-netty-handler-4.1.32.Final.jar [23]
+- lib/io.netty-netty-handler-proxy-4.1.32.Final.jar [23]
+- lib/io.netty-netty-resolver-4.1.32.Final.jar [23]
+- lib/io.netty-netty-resolver-dns-4.1.32.Final.jar [23]
+- lib/io.netty-netty-tcnative-boringssl-static-2.0.20.Final.jar [23]
+- lib/io.netty-netty-transport-4.1.32.Final.jar [23]
+- lib/io.netty-netty-transport-native-epoll-4.1.32.Final.jar [23]
+- lib/io.netty-netty-transport-native-epoll-4.1.32.Final-linux-x86_64.jar [23]
+- lib/io.netty-netty-transport-native-unix-common-4.1.32.Final.jar [23]
 - lib/io.prometheus-simpleclient-0.0.21.jar [24]
 - lib/io.prometheus-simpleclient_common-0.0.21.jar [24]
 - lib/io.prometheus-simpleclient_hotspot-0.0.21.jar [24]
@@ -291,23 +291,23 @@ Apache Software License, Version 2.
 - lib/net.jpountz.lz4-lz4-1.3.0.jar [38]
 - lib/org.codehaus.jackson-jackson-core-asl-1.9.11.jar [39]
 - lib/org.codehaus.jackson-jackson-mapper-asl-1.9.11.jar [39]
-- lib/com.google.api.grpc-proto-google-common-protos-1.0.0.jar [40]
+- lib/com.google.api.grpc-proto-google-common-protos-1.12.0.jar [40]
 - lib/com.google.code.gson-gson-2.7.jar [41]
-- lib/io.opencensus-opencensus-api-0.11.0.jar [42]
-- lib/io.opencensus-opencensus-contrib-grpc-metrics-0.11.0.jar [42]
+- lib/io.opencensus-opencensus-api-0.18.0.jar [42]
+- lib/io.opencensus-opencensus-contrib-grpc-metrics-0.18.0.jar [42]
 - lib/com.squareup.okhttp-okhttp-2.5.0.jar [43]
 - lib/com.squareup.okio-okio-1.13.0.jar [44]
-- lib/io.grpc-grpc-all-1.12.0.jar [45]
-- lib/io.grpc-grpc-auth-1.12.0.jar [45]
-- lib/io.grpc-grpc-context-1.12.0.jar [45]
-- lib/io.grpc-grpc-core-1.12.0.jar [45]
-- lib/io.grpc-grpc-netty-1.12.0.jar [45]
-- lib/io.grpc-grpc-okhttp-1.12.0.jar [45]
-- lib/io.grpc-grpc-protobuf-1.12.0.jar [45]
-- lib/io.grpc-grpc-protobuf-lite-1.12.0.jar [45]
-- lib/io.grpc-grpc-protobuf-nano-1.12.0.jar [45]
-- lib/io.grpc-grpc-stub-1.12.0.jar [45]
-- lib/io.grpc-grpc-testing-1.12.0.jar [45]
+- lib/io.grpc-grpc-all-1.18.0.jar [45]
+- lib/io.grpc-grpc-auth-1.18.0.jar [45]
+- lib/io.grpc-grpc-context-1.18.0.jar [45]
+- lib/io.grpc-grpc-core-1.18.0.jar [45]
+- lib/io.grpc-grpc-netty-1.18.0.jar [45]
+- lib/io.grpc-grpc-okhttp-1.18.0.jar [45]
+- lib/io.grpc-grpc-protobuf-1.18.0.jar [45]
+- lib/io.grpc-grpc-protobuf-lite-1.18.0.jar [45]
+- lib/io.grpc-grpc-protobuf-nano-1.18.0.jar [45]
+- lib/io.grpc-grpc-stub-1.18.0.jar [45]
+- lib/io.grpc-grpc-testing-1.18.0.jar [45]
 - lib/org.apache.curator-curator-client-4.0.1.jar [46]
 - lib/org.apache.curator-curator-framework-4.0.1.jar [46]
 - lib/org.apache.curator-curator-recipes-4.0.1.jar [46]
@@ -338,7 +338,7 @@ Apache Software License, Version 2.
 [20] Source available at https://github.com/twitter/util/tree/util-6.43.0
 [21] Source available at https://github.com/dropwizard/metrics/tree/v3.1.0
 [22] Source available at https://bintray.com/netty/downloads/download_file?file_path=netty-3.10.1.Final-dist.tar.bz2
-[23] Source available at https://github.com/netty/netty/tree/netty-4.1.22.Final
+[23] Source available at https://github.com/netty/netty/tree/netty-4.1.32.Final
 [24] Source available at https://github.com/prometheus/client_java/tree/parent-0.0.21
 [25] Source available at https://github.com/vert-x3/vertx-auth/tree/3.4.1
 [26] Source available at https://github.com/eclipse/vert.x/tree/3.4.1
@@ -356,10 +356,10 @@ Apache Software License, Version 2.
 [39] Source available at https://github.com/codehaus/jackson/tree/d1c26ec538a8701cff7548009254fd6183b71873
 [40] Source available at https://github.com/googleapis/googleapis
 [41] Source available at https://github.com/google/gson/tree/gson-parent-2.7
-[42] Source available at https://github.com/census-instrumentation/opencensus-java/tree/v0.11.0
+[42] Source available at https://github.com/census-instrumentation/opencensus-java/tree/v0.18.0
 [43] Source available at https://github.com/square/okhttp/tree/parent-2.5.0
 [44] Source available at https://github.com/square/okio/tree/okio-parent-1.13.0
-[45] Source available at https://github.com/grpc/grpc-java/tree/v1.12.0
+[45] Source available at https://github.com/grpc/grpc-java/tree/v1.18.0
 [46] Source available at https://github.com/apache/curator/tree/apache-curator-4.0.1
 [47] Source available at https://github.com/inferred/FreeBuilder/tree/v1.14.9
 [48] Source available at https://github.com/google/error-prone/tree/v2.1.2
@@ -402,63 +402,63 @@ WebSocket and HTTP server:
     * https://github.com/joewalnes/webbit
 
 ------------------------------------------------------------------------------------
-lib/io.netty-netty-codec-4.1.31.Final.jar bundles some 3rd party dependencies
+lib/io.netty-netty-codec-4.1.32.Final.jar bundles some 3rd party dependencies
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains the extensions to Java Collections Framework which has
+lib/io.netty-netty-codec-4.1.32.Final.jar contains the extensions to Java Collections Framework which has
 been derived from the works by JSR-166 EG, Doug Lea, and Jason T. Greene:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.jsr166y.txt (Public Domain)
+    * deps/netty-4.1.32.Final/LICENSE.jsr166y.txt (Public Domain)
   * HOMEPAGE:
     * http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/
     * http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbosscache/experimental/jsr166/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified version of Robert Harder's Public Domain
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified version of Robert Harder's Public Domain
 Base64 Encoder and Decoder, which can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.base64.txt (Public Domain)
+    * deps/netty-4.1.32.Final/LICENSE.base64.txt (Public Domain)
   * HOMEPAGE:
     * http://iharder.sourceforge.net/current/java/base64/
 
-lib/io.netty-netty-common-4.1.31.Final.jar contains a modified portion of 'SLF4J', a simple logging
+lib/io.netty-netty-common-4.1.32.Final.jar contains a modified portion of 'SLF4J', a simple logging
 facade for Java, which can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.slf4j.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.slf4j.txt (MIT License)
   * HOMEPAGE:
     * http://www.slf4j.org/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of 'jbzip2', a Java bzip2 compression
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of 'jbzip2', a Java bzip2 compression
 and decompression library written by Matthew J. Francis. It can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.jbzip2.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.jbzip2.txt (MIT License)
   * HOMEPAGE:
     * https://code.google.com/p/jbzip2/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of 'libdivsufsort', a C API library to construct
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of 'libdivsufsort', a C API library to construct
 the suffix array and the Burrows-Wheeler transformed string for any input string of
 a constant-size alphabet written by Yuta Mori. It can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.libdivsufsort.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.libdivsufsort.txt (MIT License)
   * HOMEPAGE:
     * https://github.com/y-256/libdivsufsort
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of 'jfastlz', a Java port of FastLZ compression
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of 'jfastlz', a Java port of FastLZ compression
 and decompression library written by William Kinney. It can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.jfastlz.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.jfastlz.txt (MIT License)
   * HOMEPAGE:
     * https://code.google.com/p/jfastlz/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of and optionally depends on 'Protocol Buffers', Google's data
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of and optionally depends on 'Protocol Buffers', Google's data
 interchange format, which can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.protobuf.txt (New BSD License)
+    * deps/netty-4.1.32.Final/LICENSE.protobuf.txt (New BSD License)
   * HOMEPAGE:
     * https://github.com/google/protobuf
 
@@ -505,7 +505,6 @@ license.
 
 Bundled as
   - lib/com.google.protobuf-protobuf-java-3.5.1.jar
-  - lib/com.google.protobuf-protobuf-java-util-3.5.1.jar
 Source available at https://github.com/google/protobuf/tree/v3.5.1
 For details, see deps/protobuf-3.5.1/LICENSE.
 
@@ -563,3 +562,9 @@ license. For details, see deps/jline-2.11/LICENSE
 
 Bundled as
   - lib/jline-jline-2.11.jar
+------------------------------------------------------------------------------------
+This product uses the annotations from The Checker Framework, which are licensed under
+MIT License. For details, see deps/checker-compat-qual-2.5.2/LICENSE
+
+Bundles as
+  - lib/org.checkerframework-checker-compat-qual-2.5.2.jar
diff --git a/bookkeeper-dist/src/main/resources/LICENSE-bkctl.bin.txt b/bookkeeper-dist/src/main/resources/LICENSE-bkctl.bin.txt
index 692e9a0..aedc7e3 100644
--- a/bookkeeper-dist/src/main/resources/LICENSE-bkctl.bin.txt
+++ b/bookkeeper-dist/src/main/resources/LICENSE-bkctl.bin.txt
@@ -215,19 +215,19 @@ Apache Software License, Version 2.
 - lib/commons-io-commons-io-2.4.jar [8]
 - lib/commons-lang-commons-lang-2.6.jar [9]
 - lib/commons-logging-commons-logging-1.1.1.jar [10]
-- lib/io.netty-netty-buffer-4.1.31.Final.jar [11]
-- lib/io.netty-netty-codec-4.1.31.Final.jar [11]
-- lib/io.netty-netty-codec-http-4.1.31.Final.jar [11]
-- lib/io.netty-netty-codec-http2-4.1.31.Final.jar [11]
-- lib/io.netty-netty-codec-socks-4.1.31.Final.jar [11]
-- lib/io.netty-netty-common-4.1.31.Final.jar [11]
-- lib/io.netty-netty-handler-4.1.31.Final.jar [11]
-- lib/io.netty-netty-handler-proxy-4.1.31.Final.jar [11]
-- lib/io.netty-netty-resolver-4.1.31.Final.jar [11]
-- lib/io.netty-netty-tcnative-boringssl-static-2.0.19.Final.jar [11]
-- lib/io.netty-netty-transport-4.1.31.Final.jar [11]
-- lib/io.netty-netty-transport-native-epoll-4.1.31.Final.jar [11]
-- lib/io.netty-netty-transport-native-unix-common-4.1.31.Final.jar [11]
+- lib/io.netty-netty-buffer-4.1.32.Final.jar [11]
+- lib/io.netty-netty-codec-4.1.32.Final.jar [11]
+- lib/io.netty-netty-codec-http-4.1.32.Final.jar [11]
+- lib/io.netty-netty-codec-http2-4.1.32.Final.jar [11]
+- lib/io.netty-netty-codec-socks-4.1.32.Final.jar [11]
+- lib/io.netty-netty-common-4.1.32.Final.jar [11]
+- lib/io.netty-netty-handler-4.1.32.Final.jar [11]
+- lib/io.netty-netty-handler-proxy-4.1.32.Final.jar [11]
+- lib/io.netty-netty-resolver-4.1.32.Final.jar [11]
+- lib/io.netty-netty-tcnative-boringssl-static-2.0.20.Final.jar [11]
+- lib/io.netty-netty-transport-4.1.32.Final.jar [11]
+- lib/io.netty-netty-transport-native-epoll-4.1.32.Final.jar [11]
+- lib/io.netty-netty-transport-native-unix-common-4.1.32.Final.jar [11]
 - lib/log4j-log4j-1.2.17.jar [16]
 - lib/net.java.dev.jna-jna-3.2.7.jar [17]
 - lib/org.apache.commons-commons-collections4-4.1.jar [18]
@@ -235,23 +235,23 @@ Apache Software License, Version 2.
 - lib/org.apache.zookeeper-zookeeper-3.4.13.jar [20]
 - lib/com.beust-jcommander-1.48.jar [23]
 - lib/net.jpountz.lz4-lz4-1.3.0.jar [25]
-- lib/com.google.api.grpc-proto-google-common-protos-1.0.0.jar [27]
+- lib/com.google.api.grpc-proto-google-common-protos-1.12.0.jar [27]
 - lib/com.google.code.gson-gson-2.7.jar [28]
-- lib/io.opencensus-opencensus-api-0.11.0.jar [29]
-- lib/io.opencensus-opencensus-contrib-grpc-metrics-0.11.0.jar [29]
+- lib/io.opencensus-opencensus-api-0.18.0.jar [29]
+- lib/io.opencensus-opencensus-contrib-grpc-metrics-0.18.0.jar [29]
 - lib/com.squareup.okhttp-okhttp-2.5.0.jar [30]
 - lib/com.squareup.okio-okio-1.13.0.jar [31]
-- lib/io.grpc-grpc-all-1.12.0.jar [32]
-- lib/io.grpc-grpc-auth-1.12.0.jar [32]
-- lib/io.grpc-grpc-context-1.12.0.jar [32]
-- lib/io.grpc-grpc-core-1.12.0.jar [32]
-- lib/io.grpc-grpc-netty-1.12.0.jar [32]
-- lib/io.grpc-grpc-okhttp-1.12.0.jar [32]
-- lib/io.grpc-grpc-protobuf-1.12.0.jar [32]
-- lib/io.grpc-grpc-protobuf-lite-1.12.0.jar [32]
-- lib/io.grpc-grpc-protobuf-nano-1.12.0.jar [32]
-- lib/io.grpc-grpc-stub-1.12.0.jar [32]
-- lib/io.grpc-grpc-testing-1.12.0.jar [32]
+- lib/io.grpc-grpc-all-1.18.0.jar [32]
+- lib/io.grpc-grpc-auth-1.18.0.jar [32]
+- lib/io.grpc-grpc-context-1.18.0.jar [32]
+- lib/io.grpc-grpc-core-1.18.0.jar [32]
+- lib/io.grpc-grpc-netty-1.18.0.jar [32]
+- lib/io.grpc-grpc-okhttp-1.18.0.jar [32]
+- lib/io.grpc-grpc-protobuf-1.18.0.jar [32]
+- lib/io.grpc-grpc-protobuf-lite-1.18.0.jar [32]
+- lib/io.grpc-grpc-protobuf-nano-1.18.0.jar [32]
+- lib/io.grpc-grpc-stub-1.18.0.jar [32]
+- lib/io.grpc-grpc-testing-1.18.0.jar [32]
 - lib/org.apache.curator-curator-client-4.0.1.jar [33]
 - lib/org.apache.curator-curator-framework-4.0.1.jar [33]
 - lib/org.apache.curator-curator-recipes-4.0.1.jar [33]
@@ -270,7 +270,7 @@ Apache Software License, Version 2.
 [8] Source available at https://git-wip-us.apache.org/repos/asf?p=commons-io.git;a=tag;h=603579
 [9] Source available at https://git-wip-us.apache.org/repos/asf?p=commons-lang.git;a=tag;h=375459
 [10] Source available at http://svn.apache.org/viewvc/commons/proper/logging/tags/commons-logging-1.1.1/
-[11] Source available at https://github.com/netty/netty/tree/netty-4.1.31.Final
+[11] Source available at https://github.com/netty/netty/tree/netty-4.1.32.Final
 [16] Source available at http://logging.apache.org/log4j/1.2/download.html
 [17] Source available at https://github.com/java-native-access/jna/tree/3.2.7
 [18] Source available at https://git-wip-us.apache.org/repos/asf?p=commons-collections.git;a=tag;h=a3a5ad
@@ -280,10 +280,10 @@ Apache Software License, Version 2.
 [25] Source available at https://github.com/lz4/lz4-java/tree/1.3.0
 [27] Source available at https://github.com/googleapis/googleapis
 [28] Source available at https://github.com/google/gson/tree/gson-parent-2.7
-[29] Source available at https://github.com/census-instrumentation/opencensus-java/tree/v0.11.0
+[29] Source available at https://github.com/census-instrumentation/opencensus-java/tree/v0.18.0
 [30] Source available at https://github.com/square/okhttp/tree/parent-2.5.0
 [31] Source available at https://github.com/square/okio/tree/okio-parent-1.13.0
-[32] Source available at https://github.com/grpc/grpc-java/tree/v1.12.0
+[32] Source available at https://github.com/grpc/grpc-java/tree/v1.18.0
 [33] Source available at https://github.com/apache/curator/tree/apache-curator-4.0.1
 [34] Source available at https://github.com/inferred/FreeBuilder/tree/v1.14.9
 [35] Source available at https://github.com/google/error-prone/tree/v2.1.2
@@ -291,63 +291,63 @@ Apache Software License, Version 2.
 [37] Source available at https://github.com/JCTools/JCTools/tree/v2.1.2
 
 ------------------------------------------------------------------------------------
-lib/io.netty-netty-codec-4.1.31.Final.jar bundles some 3rd party dependencies
+lib/io.netty-netty-codec-4.1.32.Final.jar bundles some 3rd party dependencies
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains the extensions to Java Collections Framework which has
+lib/io.netty-netty-codec-4.1.32.Final.jar contains the extensions to Java Collections Framework which has
 been derived from the works by JSR-166 EG, Doug Lea, and Jason T. Greene:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.jsr166y.txt (Public Domain)
+    * deps/netty-4.1.32.Final/LICENSE.jsr166y.txt (Public Domain)
   * HOMEPAGE:
     * http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/
     * http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbosscache/experimental/jsr166/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified version of Robert Harder's Public Domain
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified version of Robert Harder's Public Domain
 Base64 Encoder and Decoder, which can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.base64.txt (Public Domain)
+    * deps/netty-4.1.32.Final/LICENSE.base64.txt (Public Domain)
   * HOMEPAGE:
     * http://iharder.sourceforge.net/current/java/base64/
 
-lib/io.netty-netty-common-4.1.31.Final.jar contains a modified portion of 'SLF4J', a simple logging
+lib/io.netty-netty-common-4.1.32.Final.jar contains a modified portion of 'SLF4J', a simple logging
 facade for Java, which can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.slf4j.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.slf4j.txt (MIT License)
   * HOMEPAGE:
     * http://www.slf4j.org/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of 'jbzip2', a Java bzip2 compression
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of 'jbzip2', a Java bzip2 compression
 and decompression library written by Matthew J. Francis. It can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.jbzip2.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.jbzip2.txt (MIT License)
   * HOMEPAGE:
     * https://code.google.com/p/jbzip2/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of 'libdivsufsort', a C API library to construct
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of 'libdivsufsort', a C API library to construct
 the suffix array and the Burrows-Wheeler transformed string for any input string of
 a constant-size alphabet written by Yuta Mori. It can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.libdivsufsort.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.libdivsufsort.txt (MIT License)
   * HOMEPAGE:
     * https://github.com/y-256/libdivsufsort
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of 'jfastlz', a Java port of FastLZ compression
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of 'jfastlz', a Java port of FastLZ compression
 and decompression library written by William Kinney. It can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.jfastlz.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.jfastlz.txt (MIT License)
   * HOMEPAGE:
     * https://code.google.com/p/jfastlz/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of and optionally depends on 'Protocol Buffers', Google's data
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of and optionally depends on 'Protocol Buffers', Google's data
 interchange format, which can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.protobuf.txt (New BSD License)
+    * deps/netty-4.1.32.Final/LICENSE.protobuf.txt (New BSD License)
   * HOMEPAGE:
     * https://github.com/google/protobuf
 
@@ -357,7 +357,6 @@ license.
 
 Bundled as
   - lib/com.google.protobuf-protobuf-java-3.5.1.jar
-  - lib/com.google.protobuf-protobuf-java-util-3.5.1.jar
 Source available at https://github.com/google/protobuf/tree/v3.5.1
 For details, see deps/protobuf-3.5.1/LICENSE.
 
@@ -385,3 +384,9 @@ license. For details, see deps/jline-2.11/LICENSE
 
 Bundled as
   - lib/jline-jline-2.11.jar
+------------------------------------------------------------------------------------
+This product uses the annotations from The Checker Framework, which are licensed under
+MIT License. For details, see deps/checker-compat-qual-2.5.2/LICENSE
+
+Bundles as
+  - lib/org.checkerframework-checker-compat-qual-2.5.2.jar
diff --git a/bookkeeper-dist/src/main/resources/LICENSE-server.bin.txt b/bookkeeper-dist/src/main/resources/LICENSE-server.bin.txt
index a8b5b88..44c1e47 100644
--- a/bookkeeper-dist/src/main/resources/LICENSE-server.bin.txt
+++ b/bookkeeper-dist/src/main/resources/LICENSE-server.bin.txt
@@ -215,21 +215,21 @@ Apache Software License, Version 2.
 - lib/commons-io-commons-io-2.4.jar [8]
 - lib/commons-lang-commons-lang-2.6.jar [9]
 - lib/commons-logging-commons-logging-1.1.1.jar [10]
-- lib/io.netty-netty-buffer-4.1.31.Final.jar [11]
-- lib/io.netty-netty-codec-4.1.31.Final.jar [11]
-- lib/io.netty-netty-codec-dns-4.1.31.Final.jar [11]
-- lib/io.netty-netty-codec-http-4.1.31.Final.jar [11]
-- lib/io.netty-netty-codec-http2-4.1.31.Final.jar [11]
-- lib/io.netty-netty-codec-socks-4.1.31.Final.jar [11]
-- lib/io.netty-netty-common-4.1.31.Final.jar [11]
-- lib/io.netty-netty-handler-4.1.31.Final.jar [11]
-- lib/io.netty-netty-handler-proxy-4.1.31.Final.jar [11]
-- lib/io.netty-netty-resolver-4.1.31.Final.jar [11]
-- lib/io.netty-netty-resolver-dns-4.1.31.Final.jar [11]
-- lib/io.netty-netty-tcnative-boringssl-static-2.0.19.Final.jar [11]
-- lib/io.netty-netty-transport-4.1.31.Final.jar [11]
-- lib/io.netty-netty-transport-native-epoll-4.1.31.Final.jar [11]
-- lib/io.netty-netty-transport-native-unix-common-4.1.31.Final.jar [11]
+- lib/io.netty-netty-buffer-4.1.32.Final.jar [11]
+- lib/io.netty-netty-codec-4.1.32.Final.jar [11]
+- lib/io.netty-netty-codec-dns-4.1.32.Final.jar [11]
+- lib/io.netty-netty-codec-http-4.1.32.Final.jar [11]
+- lib/io.netty-netty-codec-http2-4.1.32.Final.jar [11]
+- lib/io.netty-netty-codec-socks-4.1.32.Final.jar [11]
+- lib/io.netty-netty-common-4.1.32.Final.jar [11]
+- lib/io.netty-netty-handler-4.1.32.Final.jar [11]
+- lib/io.netty-netty-handler-proxy-4.1.32.Final.jar [11]
+- lib/io.netty-netty-resolver-4.1.32.Final.jar [11]
+- lib/io.netty-netty-resolver-dns-4.1.32.Final.jar [11]
+- lib/io.netty-netty-tcnative-boringssl-static-2.0.20.Final.jar [11]
+- lib/io.netty-netty-transport-4.1.32.Final.jar [11]
+- lib/io.netty-netty-transport-native-epoll-4.1.32.Final.jar [11]
+- lib/io.netty-netty-transport-native-unix-common-4.1.32.Final.jar [11]
 - lib/io.prometheus-simpleclient-0.0.21.jar [12]
 - lib/io.prometheus-simpleclient_common-0.0.21.jar [12]
 - lib/io.prometheus-simpleclient_hotspot-0.0.21.jar [12]
@@ -255,23 +255,23 @@ Apache Software License, Version 2.
 - lib/net.jpountz.lz4-lz4-1.3.0.jar [25]
 - lib/org.codehaus.jackson-jackson-core-asl-1.9.11.jar [26]
 - lib/org.codehaus.jackson-jackson-mapper-asl-1.9.11.jar [26]
-- lib/com.google.api.grpc-proto-google-common-protos-1.0.0.jar [27]
+- lib/com.google.api.grpc-proto-google-common-protos-1.12.0.jar [27]
 - lib/com.google.code.gson-gson-2.7.jar [28]
-- lib/io.opencensus-opencensus-api-0.11.0.jar [29]
-- lib/io.opencensus-opencensus-contrib-grpc-metrics-0.11.0.jar [29]
+- lib/io.opencensus-opencensus-api-0.18.0.jar [29]
+- lib/io.opencensus-opencensus-contrib-grpc-metrics-0.18.0.jar [29]
 - lib/com.squareup.okhttp-okhttp-2.5.0.jar [30]
 - lib/com.squareup.okio-okio-1.13.0.jar [31]
-- lib/io.grpc-grpc-all-1.12.0.jar [32]
-- lib/io.grpc-grpc-auth-1.12.0.jar [32]
-- lib/io.grpc-grpc-context-1.12.0.jar [32]
-- lib/io.grpc-grpc-core-1.12.0.jar [32]
-- lib/io.grpc-grpc-netty-1.12.0.jar [32]
-- lib/io.grpc-grpc-okhttp-1.12.0.jar [32]
-- lib/io.grpc-grpc-protobuf-1.12.0.jar [32]
-- lib/io.grpc-grpc-protobuf-lite-1.12.0.jar [32]
-- lib/io.grpc-grpc-protobuf-nano-1.12.0.jar [32]
-- lib/io.grpc-grpc-stub-1.12.0.jar [32]
-- lib/io.grpc-grpc-testing-1.12.0.jar [32]
+- lib/io.grpc-grpc-all-1.18.0.jar [32]
+- lib/io.grpc-grpc-auth-1.18.0.jar [32]
+- lib/io.grpc-grpc-context-1.18.0.jar [32]
+- lib/io.grpc-grpc-core-1.18.0.jar [32]
+- lib/io.grpc-grpc-netty-1.18.0.jar [32]
+- lib/io.grpc-grpc-okhttp-1.18.0.jar [32]
+- lib/io.grpc-grpc-protobuf-1.18.0.jar [32]
+- lib/io.grpc-grpc-protobuf-lite-1.18.0.jar [32]
+- lib/io.grpc-grpc-protobuf-nano-1.18.0.jar [32]
+- lib/io.grpc-grpc-stub-1.18.0.jar [32]
+- lib/io.grpc-grpc-testing-1.18.0.jar [32]
 - lib/org.apache.curator-curator-client-4.0.1.jar [33]
 - lib/org.apache.curator-curator-framework-4.0.1.jar [33]
 - lib/org.apache.curator-curator-recipes-4.0.1.jar [33]
@@ -290,7 +290,7 @@ Apache Software License, Version 2.
 [8] Source available at https://git-wip-us.apache.org/repos/asf?p=commons-io.git;a=tag;h=603579
 [9] Source available at https://git-wip-us.apache.org/repos/asf?p=commons-lang.git;a=tag;h=375459
 [10] Source available at http://svn.apache.org/viewvc/commons/proper/logging/tags/commons-logging-1.1.1/
-[11] Source available at https://github.com/netty/netty/tree/netty-4.1.31.Final
+[11] Source available at https://github.com/netty/netty/tree/netty-4.1.32.Final
 [12] Source available at https://github.com/prometheus/client_java/tree/parent-0.0.21
 [13] Source available at https://github.com/vert-x3/vertx-auth/tree/3.4.1
 [14] Source available at https://github.com/eclipse/vert.x/tree/3.4.1
@@ -308,10 +308,10 @@ Apache Software License, Version 2.
 [26] Source available at https://github.com/codehaus/jackson/tree/d1c26ec538a8701cff7548009254fd6183b71873
 [27] Source available at https://github.com/googleapis/googleapis
 [28] Source available at https://github.com/google/gson/tree/gson-parent-2.7
-[29] Source available at https://github.com/census-instrumentation/opencensus-java/tree/v0.11.0
+[29] Source available at https://github.com/census-instrumentation/opencensus-java/tree/v0.18.0
 [30] Source available at https://github.com/square/okhttp/tree/parent-2.5.0
 [31] Source available at https://github.com/square/okio/tree/okio-parent-1.13.0
-[32] Source available at https://github.com/grpc/grpc-java/tree/v1.12.0
+[32] Source available at https://github.com/grpc/grpc-java/tree/v1.18.0
 [33] Source available at https://github.com/apache/curator/tree/apache-curator-4.0.1
 [34] Source available at https://github.com/inferred/FreeBuilder/tree/v1.14.9
 [35] Source available at https://github.com/google/error-prone/tree/v2.1.2
@@ -319,63 +319,63 @@ Apache Software License, Version 2.
 [37] Source available at https://github.com/JCTools/JCTools/tree/v2.1.2
 
 ------------------------------------------------------------------------------------
-lib/io.netty-netty-codec-4.1.31.Final.jar bundles some 3rd party dependencies
+lib/io.netty-netty-codec-4.1.32.Final.jar bundles some 3rd party dependencies
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains the extensions to Java Collections Framework which has
+lib/io.netty-netty-codec-4.1.32.Final.jar contains the extensions to Java Collections Framework which has
 been derived from the works by JSR-166 EG, Doug Lea, and Jason T. Greene:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.jsr166y.txt (Public Domain)
+    * deps/netty-4.1.32.Final/LICENSE.jsr166y.txt (Public Domain)
   * HOMEPAGE:
     * http://gee.cs.oswego.edu/cgi-bin/viewcvs.cgi/jsr166/
     * http://viewvc.jboss.org/cgi-bin/viewvc.cgi/jbosscache/experimental/jsr166/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified version of Robert Harder's Public Domain
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified version of Robert Harder's Public Domain
 Base64 Encoder and Decoder, which can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.base64.txt (Public Domain)
+    * deps/netty-4.1.32.Final/LICENSE.base64.txt (Public Domain)
   * HOMEPAGE:
     * http://iharder.sourceforge.net/current/java/base64/
 
-lib/io.netty-netty-common-4.1.31.Final.jar contains a modified portion of 'SLF4J', a simple logging
+lib/io.netty-netty-common-4.1.32.Final.jar contains a modified portion of 'SLF4J', a simple logging
 facade for Java, which can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.slf4j.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.slf4j.txt (MIT License)
   * HOMEPAGE:
     * http://www.slf4j.org/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of 'jbzip2', a Java bzip2 compression
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of 'jbzip2', a Java bzip2 compression
 and decompression library written by Matthew J. Francis. It can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.jbzip2.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.jbzip2.txt (MIT License)
   * HOMEPAGE:
     * https://code.google.com/p/jbzip2/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of 'libdivsufsort', a C API library to construct
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of 'libdivsufsort', a C API library to construct
 the suffix array and the Burrows-Wheeler transformed string for any input string of
 a constant-size alphabet written by Yuta Mori. It can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.libdivsufsort.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.libdivsufsort.txt (MIT License)
   * HOMEPAGE:
     * https://github.com/y-256/libdivsufsort
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of 'jfastlz', a Java port of FastLZ compression
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of 'jfastlz', a Java port of FastLZ compression
 and decompression library written by William Kinney. It can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.jfastlz.txt (MIT License)
+    * deps/netty-4.1.32.Final/LICENSE.jfastlz.txt (MIT License)
   * HOMEPAGE:
     * https://code.google.com/p/jfastlz/
 
-lib/io.netty-netty-codec-4.1.31.Final.jar contains a modified portion of and optionally depends on 'Protocol Buffers', Google's data
+lib/io.netty-netty-codec-4.1.32.Final.jar contains a modified portion of and optionally depends on 'Protocol Buffers', Google's data
 interchange format, which can be obtained at:
 
   * LICENSE:
-    * deps/netty-4.1.31.Final/LICENSE.protobuf.txt (New BSD License)
+    * deps/netty-4.1.32.Final/LICENSE.protobuf.txt (New BSD License)
   * HOMEPAGE:
     * https://github.com/google/protobuf
 
@@ -416,7 +416,6 @@ license.
 
 Bundled as
   - lib/com.google.protobuf-protobuf-java-3.5.1.jar
-  - lib/com.google.protobuf-protobuf-java-util-3.5.1.jar
 Source available at https://github.com/google/protobuf/tree/v3.5.1
 For details, see deps/protobuf-3.5.1/LICENSE.
 
@@ -450,3 +449,9 @@ license. For details, see deps/jline-2.11/LICENSE
 
 Bundled as
   - lib/jline-jline-2.11.jar
+------------------------------------------------------------------------------------
+This product uses the annotations from The Checker Framework, which are licensed under
+MIT License. For details, see deps/checker-compat-qual-2.5.2/LICENSE
+
+Bundles as
+  - lib/org.checkerframework-checker-compat-qual-2.5.2.jar
diff --git a/bookkeeper-dist/src/main/resources/NOTICE-all.bin.txt b/bookkeeper-dist/src/main/resources/NOTICE-all.bin.txt
index c9a0255..6916fda 100644
--- a/bookkeeper-dist/src/main/resources/NOTICE-all.bin.txt
+++ b/bookkeeper-dist/src/main/resources/NOTICE-all.bin.txt
@@ -45,22 +45,22 @@ License for the specific language governing permissions and limitations
 under the License.
 
 ------------------------------------------------------------------------------------
-- lib/io.netty-netty-buffer-4.1.31.Final.jar
-- lib/io.netty-netty-codec-4.1.31.Final.jar
-- lib/io.netty-netty-codec-dns-4.1.31.Final.jar
-- lib/io.netty-netty-codec-http-4.1.31.Final.jar
-- lib/io.netty-netty-codec-http2-4.1.31.Final.jar
-- lib/io.netty-netty-codec-socks-4.1.31.Final.jar
-- lib/io.netty-netty-common-4.1.31.Final.jar
-- lib/io.netty-netty-handler-4.1.31.Final.jar
-- lib/io.netty-netty-handler-proxy-4.1.31.Final.jar
-- lib/io.netty-netty-resolver-4.1.31.Final.jar
-- lib/io.netty-netty-resolver-dns-4.1.31.Final.jar
-- lib/io.netty-netty-tcnative-boringssl-static-2.0.19.Final.jar
-- lib/io.netty-netty-transport-4.1.31.Final.jar
-- lib/io.netty-netty-transport-native-epoll-4.1.31.Final.jar
-- lib/io.netty-netty-transport-native-epoll-4.1.31.Final-linux-x86_64.jar
-- lib/io.netty-netty-transport-native-unix-common-4.1.31.Final.jar
+- lib/io.netty-netty-buffer-4.1.32.Final.jar
+- lib/io.netty-netty-codec-4.1.32.Final.jar
+- lib/io.netty-netty-codec-dns-4.1.32.Final.jar
+- lib/io.netty-netty-codec-http-4.1.32.Final.jar
+- lib/io.netty-netty-codec-http2-4.1.32.Final.jar
+- lib/io.netty-netty-codec-socks-4.1.32.Final.jar
+- lib/io.netty-netty-common-4.1.32.Final.jar
+- lib/io.netty-netty-handler-4.1.32.Final.jar
+- lib/io.netty-netty-handler-proxy-4.1.32.Final.jar
+- lib/io.netty-netty-resolver-4.1.32.Final.jar
+- lib/io.netty-netty-resolver-dns-4.1.32.Final.jar
+- lib/io.netty-netty-tcnative-boringssl-static-2.0.20.Final.jar
+- lib/io.netty-netty-transport-4.1.32.Final.jar
+- lib/io.netty-netty-transport-native-epoll-4.1.32.Final.jar
+- lib/io.netty-netty-transport-native-epoll-4.1.32.Final-linux-x86_64.jar
+- lib/io.netty-netty-transport-native-unix-common-4.1.32.Final.jar
 
 
                             The Netty Project
@@ -143,17 +143,17 @@ granted provided that the copyright notice appears in all copies.
 Copyright 2010 Cedric Beust cedric@beust.com
 
 ------------------------------------------------------------------------------------
-- lib/io.grpc-grpc-all-1.12.0.jar
-- lib/io.grpc-grpc-auth-1.12.0.jar
-- lib/io.grpc-grpc-context-1.12.0.jar
-- lib/io.grpc-grpc-core-1.12.0.jar
-- lib/io.grpc-grpc-netty-1.12.0.jar
-- lib/io.grpc-grpc-okhttp-1.12.0.jar
-- lib/io.grpc-grpc-protobuf-1.12.0.jar
-- lib/io.grpc-grpc-protobuf-lite-1.12.0.jar
-- lib/io.grpc-grpc-protobuf-nano-1.12.0.jar
-- lib/io.grpc-grpc-stub-1.12.0.jar
-- lib/io.grpc-grpc-testing-1.12.0.jar
+- lib/io.grpc-grpc-all-1.18.0.jar
+- lib/io.grpc-grpc-auth-1.18.0.jar
+- lib/io.grpc-grpc-context-1.18.0.jar
+- lib/io.grpc-grpc-core-1.18.0.jar
+- lib/io.grpc-grpc-netty-1.18.0.jar
+- lib/io.grpc-grpc-okhttp-1.18.0.jar
+- lib/io.grpc-grpc-protobuf-1.18.0.jar
+- lib/io.grpc-grpc-protobuf-lite-1.18.0.jar
+- lib/io.grpc-grpc-protobuf-nano-1.18.0.jar
+- lib/io.grpc-grpc-stub-1.18.0.jar
+- lib/io.grpc-grpc-testing-1.18.0.jar
 
 Copyright 2014, gRPC Authors All rights reserved.
 
diff --git a/bookkeeper-dist/src/main/resources/NOTICE-bkctl.bin.txt b/bookkeeper-dist/src/main/resources/NOTICE-bkctl.bin.txt
index 680a02d..d7f9330 100644
--- a/bookkeeper-dist/src/main/resources/NOTICE-bkctl.bin.txt
+++ b/bookkeeper-dist/src/main/resources/NOTICE-bkctl.bin.txt
@@ -5,19 +5,19 @@ This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
 
 ------------------------------------------------------------------------------------
-- lib/io.netty-netty-buffer-4.1.31.Final.jar
-- lib/io.netty-netty-codec-4.1.31.Final.jar
-- lib/io.netty-netty-codec-http-4.1.31.Final.jar
-- lib/io.netty-netty-codec-http2-4.1.31.Final.jar
-- lib/io.netty-netty-codec-socks-4.1.31.Final.jar
-- lib/io.netty-netty-common-4.1.31.Final.jar
-- lib/io.netty-netty-handler-4.1.31.Final.jar
-- lib/io.netty-netty-handler-proxy-4.1.31.Final.jar
-- lib/io.netty-netty-resolver-4.1.31.Final.jar
-- lib/io.netty-netty-tcnative-boringssl-static-2.0.19.Final.jar
-- lib/io.netty-netty-transport-4.1.31.Final.jar
-- lib/io.netty-netty-transport-native-epoll-4.1.31.Final.jar
-- lib/io.netty-netty-transport-native-unix-common-4.1.31.Final.jar
+- lib/io.netty-netty-buffer-4.1.32.Final.jar
+- lib/io.netty-netty-codec-4.1.32.Final.jar
+- lib/io.netty-netty-codec-http-4.1.32.Final.jar
+- lib/io.netty-netty-codec-http2-4.1.32.Final.jar
+- lib/io.netty-netty-codec-socks-4.1.32.Final.jar
+- lib/io.netty-netty-common-4.1.32.Final.jar
+- lib/io.netty-netty-handler-4.1.32.Final.jar
+- lib/io.netty-netty-handler-proxy-4.1.32.Final.jar
+- lib/io.netty-netty-resolver-4.1.32.Final.jar
+- lib/io.netty-netty-tcnative-boringssl-static-2.0.20.Final.jar
+- lib/io.netty-netty-transport-4.1.32.Final.jar
+- lib/io.netty-netty-transport-native-epoll-4.1.32.Final.jar
+- lib/io.netty-netty-transport-native-unix-common-4.1.32.Final.jar
 
 
                             The Netty Project
@@ -47,17 +47,17 @@ under the License.
 Copyright 2010 Cedric Beust cedric@beust.com
 
 ------------------------------------------------------------------------------------
-- lib/io.grpc-grpc-all-1.12.0.jar
-- lib/io.grpc-grpc-auth-1.12.0.jar
-- lib/io.grpc-grpc-context-1.12.0.jar
-- lib/io.grpc-grpc-core-1.12.0.jar
-- lib/io.grpc-grpc-netty-1.12.0.jar
-- lib/io.grpc-grpc-okhttp-1.12.0.jar
-- lib/io.grpc-grpc-protobuf-1.12.0.jar
-- lib/io.grpc-grpc-protobuf-lite-1.12.0.jar
-- lib/io.grpc-grpc-protobuf-nano-1.12.0.jar
-- lib/io.grpc-grpc-stub-1.12.0.jar
-- lib/io.grpc-grpc-testing-1.12.0.jar
+- lib/io.grpc-grpc-all-1.18.0.jar
+- lib/io.grpc-grpc-auth-1.18.0.jar
+- lib/io.grpc-grpc-context-1.18.0.jar
+- lib/io.grpc-grpc-core-1.18.0.jar
+- lib/io.grpc-grpc-netty-1.18.0.jar
+- lib/io.grpc-grpc-okhttp-1.18.0.jar
+- lib/io.grpc-grpc-protobuf-1.18.0.jar
+- lib/io.grpc-grpc-protobuf-lite-1.18.0.jar
+- lib/io.grpc-grpc-protobuf-nano-1.18.0.jar
+- lib/io.grpc-grpc-stub-1.18.0.jar
+- lib/io.grpc-grpc-testing-1.18.0.jar
 
 Copyright 2014, gRPC Authors All rights reserved.
 
diff --git a/bookkeeper-dist/src/main/resources/NOTICE-server.bin.txt b/bookkeeper-dist/src/main/resources/NOTICE-server.bin.txt
index c2dcf1d..cc2060e 100644
--- a/bookkeeper-dist/src/main/resources/NOTICE-server.bin.txt
+++ b/bookkeeper-dist/src/main/resources/NOTICE-server.bin.txt
@@ -5,21 +5,21 @@ This product includes software developed at
 The Apache Software Foundation (http://www.apache.org/).
 
 ------------------------------------------------------------------------------------
-- lib/io.netty-netty-buffer-4.1.31.Final.jar
-- lib/io.netty-netty-codec-4.1.31.Final.jar
-- lib/io.netty-netty-codec-dns-4.1.31.Final.jar
-- lib/io.netty-netty-codec-http-4.1.31.Final.jar
-- lib/io.netty-netty-codec-http2-4.1.31.Final.jar
-- lib/io.netty-netty-codec-socks-4.1.31.Final.jar
-- lib/io.netty-netty-common-4.1.31.Final.jar
-- lib/io.netty-netty-handler-4.1.31.Final.jar
-- lib/io.netty-netty-handler-proxy-4.1.31.Final.jar
-- lib/io.netty-netty-resolver-4.1.31.Final.jar
-- lib/io.netty-netty-resolver-dns-4.1.31.Final.jar
-- lib/io.netty-netty-tcnative-boringssl-static-2.0.19.Final.jar
-- lib/io.netty-netty-transport-4.1.31.Final.jar
-- lib/io.netty-netty-transport-native-epoll-4.1.31.Final.jar
-- lib/io.netty-netty-transport-native-unix-common-4.1.31.Final.jar
+- lib/io.netty-netty-buffer-4.1.32.Final.jar
+- lib/io.netty-netty-codec-4.1.32.Final.jar
+- lib/io.netty-netty-codec-dns-4.1.32.Final.jar
+- lib/io.netty-netty-codec-http-4.1.32.Final.jar
+- lib/io.netty-netty-codec-http2-4.1.32.Final.jar
+- lib/io.netty-netty-codec-socks-4.1.32.Final.jar
+- lib/io.netty-netty-common-4.1.32.Final.jar
+- lib/io.netty-netty-handler-4.1.32.Final.jar
+- lib/io.netty-netty-handler-proxy-4.1.32.Final.jar
+- lib/io.netty-netty-resolver-4.1.32.Final.jar
+- lib/io.netty-netty-resolver-dns-4.1.32.Final.jar
+- lib/io.netty-netty-tcnative-boringssl-static-2.0.20.Final.jar
+- lib/io.netty-netty-transport-4.1.32.Final.jar
+- lib/io.netty-netty-transport-native-epoll-4.1.32.Final.jar
+- lib/io.netty-netty-transport-native-unix-common-4.1.32.Final.jar
 
 
                             The Netty Project
@@ -102,17 +102,17 @@ granted provided that the copyright notice appears in all copies.
 Copyright 2010 Cedric Beust cedric@beust.com
 
 ------------------------------------------------------------------------------------
-- lib/io.grpc-grpc-all-1.12.0.jar
-- lib/io.grpc-grpc-auth-1.12.0.jar
-- lib/io.grpc-grpc-context-1.12.0.jar
-- lib/io.grpc-grpc-core-1.12.0.jar
-- lib/io.grpc-grpc-netty-1.12.0.jar
-- lib/io.grpc-grpc-okhttp-1.12.0.jar
-- lib/io.grpc-grpc-protobuf-1.12.0.jar
-- lib/io.grpc-grpc-protobuf-lite-1.12.0.jar
-- lib/io.grpc-grpc-protobuf-nano-1.12.0.jar
-- lib/io.grpc-grpc-stub-1.12.0.jar
-- lib/io.grpc-grpc-testing-1.12.0.jar
+- lib/io.grpc-grpc-all-1.18.0.jar
+- lib/io.grpc-grpc-auth-1.18.0.jar
+- lib/io.grpc-grpc-context-1.18.0.jar
+- lib/io.grpc-grpc-core-1.18.0.jar
+- lib/io.grpc-grpc-netty-1.18.0.jar
+- lib/io.grpc-grpc-okhttp-1.18.0.jar
+- lib/io.grpc-grpc-protobuf-1.18.0.jar
+- lib/io.grpc-grpc-protobuf-lite-1.18.0.jar
+- lib/io.grpc-grpc-protobuf-nano-1.18.0.jar
+- lib/io.grpc-grpc-stub-1.18.0.jar
+- lib/io.grpc-grpc-testing-1.18.0.jar
 
 Copyright 2014, gRPC Authors All rights reserved.
 
diff --git a/bookkeeper-dist/src/main/resources/deps/checker-compat-qual-2.5.2/LICENSE b/bookkeeper-dist/src/main/resources/deps/checker-compat-qual-2.5.2/LICENSE
new file mode 100644
index 0000000..7d67740
--- /dev/null
+++ b/bookkeeper-dist/src/main/resources/deps/checker-compat-qual-2.5.2/LICENSE
@@ -0,0 +1,413 @@
+The Checker Framework
+Copyright 2004-present by the Checker Framework developers
+
+
+Most of the Checker Framework is licensed under the GNU General Public
+License, version 2 (GPL2), with the classpath exception.  The text of this
+license appears below.  This is the same license used for OpenJDK.
+
+A few parts of the Checker Framework have more permissive licenses.
+
+ * The annotations are licensed under the MIT License.  (The text of this
+   license appears below.)  More specifically, all the parts of the Checker
+   Framework that you might want to include with your own program use the
+   MIT License.  This is the checker-qual.jar file and all the files that
+   appear in it:  every file in a qual/ directory, plus utility files such
+   as NullnessUtil.java, RegexUtil.java, SignednessUtil.java, etc.
+   In addition, the cleanroom implementations of third-party annotations,
+   which the Checker Framework recognizes as aliases for its own
+   annotations, are licensed under the MIT License.
+
+Some external libraries that are included with the Checker Framework have
+different licenses.
+
+ * javaparser is dual licensed under the LGPL or the Apache license -- you
+   may use it under whichever one you want.  (The javaparser source code
+   contains a file with the text of the GPL, but it is not clear why, since
+   javaparser does not use the GPL.)  See file stubparser/LICENSE
+   and the source code of all its files.
+
+ * JUnit is licensed under the Common Public License v1.0 (see
+   http://www.junit.org/license), with parts (Hamcrest) licensed under the
+   BSD License (see http://hamcrest.org/JavaHamcrest/).
+
+ * Libraries in plume-lib (https://github.com/plume-lib/) are licensed
+   under the MIT License.
+
+The Checker Framework includes annotations for the JDK in directory
+checker/jdk/, and for some other libraries.  Each annotated library uses
+the same license as the unannotated version of the library.
+
+===========================================================================
+
+The GNU General Public License (GPL)
+
+Version 2, June 1991
+
+Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+Everyone is permitted to copy and distribute verbatim copies of this license
+document, but changing it is not allowed.
+
+Preamble
+
+The licenses for most software are designed to take away your freedom to share
+and change it.  By contrast, the GNU General Public License is intended to
+guarantee your freedom to share and change free software--to make sure the
+software is free for all its users.  This General Public License applies to
+most of the Free Software Foundation's software and to any other program whose
+authors commit to using it.  (Some other Free Software Foundation software is
+covered by the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+When we speak of free software, we are referring to freedom, not price.  Our
+General Public Licenses are designed to make sure that you have the freedom to
+distribute copies of free software (and charge for this service if you wish),
+that you receive source code or can get it if you want it, that you can change
+the software or use pieces of it in new free programs; and that you know you
+can do these things.
+
+To protect your rights, we need to make restrictions that forbid anyone to deny
+you these rights or to ask you to surrender the rights.  These restrictions
+translate to certain responsibilities for you if you distribute copies of the
+software, or if you modify it.
+
+For example, if you distribute copies of such a program, whether gratis or for
+a fee, you must give the recipients all the rights that you have.  You must
+make sure that they, too, receive or can get the source code.  And you must
+show them these terms so they know their rights.
+
+We protect your rights with two steps: (1) copyright the software, and (2)
+offer you this license which gives you legal permission to copy, distribute
+and/or modify the software.
+
+Also, for each author's protection and ours, we want to make certain that
+everyone understands that there is no warranty for this free software.  If the
+software is modified by someone else and passed on, we want its recipients to
+know that what they have is not the original, so that any problems introduced
+by others will not reflect on the original authors' reputations.
+
+Finally, any free program is threatened constantly by software patents.  We
+wish to avoid the danger that redistributors of a free program will
+individually obtain patent licenses, in effect making the program proprietary.
+To prevent this, we have made it clear that any patent must be licensed for
+everyone's free use or not licensed at all.
+
+The precise terms and conditions for copying, distribution and modification
+follow.
+
+TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+0. This License applies to any program or other work which contains a notice
+placed by the copyright holder saying it may be distributed under the terms of
+this General Public License.  The "Program", below, refers to any such program
+or work, and a "work based on the Program" means either the Program or any
+derivative work under copyright law: that is to say, a work containing the
+Program or a portion of it, either verbatim or with modifications and/or
+translated into another language.  (Hereinafter, translation is included
+without limitation in the term "modification".) Each licensee is addressed as
+"you".
+
+Activities other than copying, distribution and modification are not covered by
+this License; they are outside its scope.  The act of running the Program is
+not restricted, and the output from the Program is covered only if its contents
+constitute a work based on the Program (independent of having been made by
+running the Program).  Whether that is true depends on what the Program does.
+
+1. You may copy and distribute verbatim copies of the Program's source code as
+you receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice and
+disclaimer of warranty; keep intact all the notices that refer to this License
+and to the absence of any warranty; and give any other recipients of the
+Program a copy of this License along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and you may
+at your option offer warranty protection in exchange for a fee.
+
+2. You may modify your copy or copies of the Program or any portion of it, thus
+forming a work based on the Program, and copy and distribute such modifications
+or work under the terms of Section 1 above, provided that you also meet all of
+these conditions:
+
+    a) You must cause the modified files to carry prominent notices stating
+    that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in whole or
+    in part contains or is derived from the Program or any part thereof, to be
+    licensed as a whole at no charge to all third parties under the terms of
+    this License.
+
+    c) If the modified program normally reads commands interactively when run,
+    you must cause it, when started running for such interactive use in the
+    most ordinary way, to print or display an announcement including an
+    appropriate copyright notice and a notice that there is no warranty (or
+    else, saying that you provide a warranty) and that users may redistribute
+    the program under these conditions, and telling the user how to view a copy
+    of this License.  (Exception: if the Program itself is interactive but does
+    not normally print such an announcement, your work based on the Program is
+    not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If identifiable
+sections of that work are not derived from the Program, and can be reasonably
+considered independent and separate works in themselves, then this License, and
+its terms, do not apply to those sections when you distribute them as separate
+works.  But when you distribute the same sections as part of a whole which is a
+work based on the Program, the distribution of the whole must be on the terms
+of this License, whose permissions for other licensees extend to the entire
+whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest your
+rights to work written entirely by you; rather, the intent is to exercise the
+right to control the distribution of derivative or collective works based on
+the Program.
+
+In addition, mere aggregation of another work not based on the Program with the
+Program (or with a work based on the Program) on a volume of a storage or
+distribution medium does not bring the other work under the scope of this
+License.
+
+3. You may copy and distribute the Program (or a work based on it, under
+Section 2) in object code or executable form under the terms of Sections 1 and
+2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable source
+    code, which must be distributed under the terms of Sections 1 and 2 above
+    on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three years, to
+    give any third party, for a charge no more than your cost of physically
+    performing source distribution, a complete machine-readable copy of the
+    corresponding source code, to be distributed under the terms of Sections 1
+    and 2 above on a medium customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer to
+    distribute corresponding source code.  (This alternative is allowed only
+    for noncommercial distribution and only if you received the program in
+    object code or executable form with such an offer, in accord with
+    Subsection b above.)
+
+The source code for a work means the preferred form of the work for making
+modifications to it.  For an executable work, complete source code means all
+the source code for all modules it contains, plus any associated interface
+definition files, plus the scripts used to control compilation and installation
+of the executable.  However, as a special exception, the source code
+distributed need not include anything that is normally distributed (in either
+source or binary form) with the major components (compiler, kernel, and so on)
+of the operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the source
+code from the same place counts as distribution of the source code, even though
+third parties are not compelled to copy the source along with the object code.
+
+4. You may not copy, modify, sublicense, or distribute the Program except as
+expressly provided under this License.  Any attempt otherwise to copy, modify,
+sublicense or distribute the Program is void, and will automatically terminate
+your rights under this License.  However, parties who have received copies, or
+rights, from you under this License will not have their licenses terminated so
+long as such parties remain in full compliance.
+
+5. You are not required to accept this License, since you have not signed it.
+However, nothing else grants you permission to modify or distribute the Program
+or its derivative works.  These actions are prohibited by law if you do not
+accept this License.  Therefore, by modifying or distributing the Program (or
+any work based on the Program), you indicate your acceptance of this License to
+do so, and all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+6. Each time you redistribute the Program (or any work based on the Program),
+the recipient automatically receives a license from the original licensor to
+copy, distribute or modify the Program subject to these terms and conditions.
+You may not impose any further restrictions on the recipients' exercise of the
+rights granted herein.  You are not responsible for enforcing compliance by
+third parties to this License.
+
+7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues), conditions
+are imposed on you (whether by court order, agreement or otherwise) that
+contradict the conditions of this License, they do not excuse you from the
+conditions of this License.  If you cannot distribute so as to satisfy
+simultaneously your obligations under this License and any other pertinent
+obligations, then as a consequence you may not distribute the Program at all.
+For example, if a patent license would not permit royalty-free redistribution
+of the Program by all those who receive copies directly or indirectly through
+you, then the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply and
+the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any patents or
+other property right claims or to contest validity of any such claims; this
+section has the sole purpose of protecting the integrity of the free software
+distribution system, which is implemented by public license practices.  Many
+people have made generous contributions to the wide range of software
+distributed through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing to
+distribute software through any other system and a licensee cannot impose that
+choice.
+
+This section is intended to make thoroughly clear what is believed to be a
+consequence of the rest of this License.
+
+8. If the distribution and/or use of the Program is restricted in certain
+countries either by patents or by copyrighted interfaces, the original
+copyright holder who places the Program under this License may add an explicit
+geographical distribution limitation excluding those countries, so that
+distribution is permitted only in or among countries not thus excluded.  In
+such case, this License incorporates the limitation as if written in the body
+of this License.
+
+9. The Free Software Foundation may publish revised and/or new versions of the
+General Public License from time to time.  Such new versions will be similar in
+spirit to the present version, but may differ in detail to address new problems
+or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any later
+version", you have the option of following the terms and conditions either of
+that version or of any later version published by the Free Software Foundation.
+If the Program does not specify a version number of this License, you may
+choose any version ever published by the Free Software Foundation.
+
+10. If you wish to incorporate parts of the Program into other free programs
+whose distribution conditions are different, write to the author to ask for
+permission.  For software which is copyrighted by the Free Software Foundation,
+write to the Free Software Foundation; we sometimes make exceptions for this.
+Our decision will be guided by the two goals of preserving the free status of
+all derivatives of our free software and of promoting the sharing and reuse of
+software generally.
+
+NO WARRANTY
+
+11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR
+THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN OTHERWISE
+STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE
+PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
+INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND
+PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE,
+YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL
+ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE
+PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR
+INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA
+BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER
+OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+END OF TERMS AND CONDITIONS
+
+How to Apply These Terms to Your New Programs
+
+If you develop a new program, and you want it to be of the greatest possible
+use to the public, the best way to achieve this is to make it free software
+which everyone can redistribute and change under these terms.
+
+To do so, attach the following notices to the program.  It is safest to attach
+them to the start of each source file to most effectively convey the exclusion
+of warranty; and each file should have at least the "copyright" line and a
+pointer to where the full notice is found.
+
+    One line to give the program's name and a brief idea of what it does.
+
+    Copyright (C) <year> <name of author>
+
+    This program is free software; you can redistribute it and/or modify it
+    under the terms of the GNU General Public License as published by the Free
+    Software Foundation; either version 2 of the License, or (at your option)
+    any later version.
+
+    This program is distributed in the hope that it will be useful, but WITHOUT
+    ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+    FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+    more details.
+
+    You should have received a copy of the GNU General Public License along
+    with this program; if not, write to the Free Software Foundation, Inc., 59
+    Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this when it
+starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year name of author Gnomovision comes
+    with ABSOLUTELY NO WARRANTY; for details type 'show w'.  This is free
+    software, and you are welcome to redistribute it under certain conditions;
+    type 'show c' for details.
+
+The hypothetical commands 'show w' and 'show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may be
+called something other than 'show w' and 'show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.  Here
+is a sample; alter the names:
+
+    Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+    'Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+    signature of Ty Coon, 1 April 1989
+
+    Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Library General Public
+License instead of this License.
+
+
+"CLASSPATH" EXCEPTION TO THE GPL
+
+Certain source files distributed by Oracle America and/or its affiliates are
+subject to the following clarification and special exception to the GPL, but
+only where Oracle has expressly included in the particular source file's header
+the words "Oracle designates this particular file as subject to the "Classpath"
+exception as provided by Oracle in the LICENSE file that accompanied this code."
+
+    Linking this library statically or dynamically with other modules is making
+    a combined work based on this library.  Thus, the terms and conditions of
+    the GNU General Public License cover the whole combination.
+
+    As a special exception, the copyright holders of this library give you
+    permission to link this library with independent modules to produce an
+    executable, regardless of the license terms of these independent modules,
+    and to copy and distribute the resulting executable under terms of your
+    choice, provided that you also meet, for each linked independent module,
+    the terms and conditions of the license of that module.  An independent
+    module is a module which is not derived from or based on this library.  If
+    you modify this library, you may extend this exception to your version of
+    the library, but you are not obligated to do so.  If you do not wish to do
+    so, delete this exception statement from your version.
+
+===========================================================================
+
+MIT License:
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+===========================================================================
diff --git a/bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.base64.txt b/bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.base64.txt
similarity index 100%
rename from bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.base64.txt
rename to bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.base64.txt
diff --git a/bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.jbzip2.txt b/bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.jbzip2.txt
similarity index 100%
rename from bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.jbzip2.txt
rename to bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.jbzip2.txt
diff --git a/bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.jfastlz.txt b/bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.jfastlz.txt
similarity index 100%
rename from bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.jfastlz.txt
rename to bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.jfastlz.txt
diff --git a/bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.jsr166y.txt b/bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.jsr166y.txt
similarity index 100%
rename from bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.jsr166y.txt
rename to bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.jsr166y.txt
diff --git a/bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.libdivsufsort.txt b/bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.libdivsufsort.txt
similarity index 100%
rename from bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.libdivsufsort.txt
rename to bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.libdivsufsort.txt
diff --git a/bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.protobuf.txt b/bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.protobuf.txt
similarity index 100%
rename from bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.protobuf.txt
rename to bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.protobuf.txt
diff --git a/bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.slf4j.txt b/bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.slf4j.txt
similarity index 100%
rename from bookkeeper-dist/src/main/resources/deps/netty-4.1.31.Final/LICENSE.slf4j.txt
rename to bookkeeper-dist/src/main/resources/deps/netty-4.1.32.Final/LICENSE.slf4j.txt
diff --git a/pom.xml b/pom.xml
index 935f0f4..fddb3ba 100644
--- a/pom.xml
+++ b/pom.xml
@@ -130,7 +130,7 @@
     <freebuilder.version>1.14.9</freebuilder.version>
     <google.code.version>3.0.2</google.code.version>
     <google.errorprone.version>2.1.2</google.errorprone.version>
-    <grpc.version>1.12.0</grpc.version>
+    <grpc.version>1.18.0</grpc.version>
     <guava.version>21.0</guava.version>
     <kerby.version>1.1.1</kerby.version>
     <hadoop.version>2.7.3</hadoop.version>
@@ -150,8 +150,8 @@
     <lombok.version>1.16.22</lombok.version>
     <lz4.version>1.3.0</lz4.version>
     <mockito.version>2.22.0</mockito.version>
-    <netty.version>4.1.31.Final</netty.version>
-    <netty-boringssl.version>2.0.19.Final</netty-boringssl.version>
+    <netty.version>4.1.32.Final</netty.version>
+    <netty-boringssl.version>2.0.20.Final</netty-boringssl.version>
     <ostrich.version>9.1.3</ostrich.version>
     <powermock.version>2.0.0-beta.5</powermock.version>
     <prometheus.version>0.0.21</prometheus.version>
diff --git a/stream/clients/java/base/src/main/java/org/apache/bookkeeper/clients/utils/GrpcUtils.java b/stream/clients/java/base/src/main/java/org/apache/bookkeeper/clients/utils/GrpcUtils.java
index e1d396a..02a202f 100644
--- a/stream/clients/java/base/src/main/java/org/apache/bookkeeper/clients/utils/GrpcUtils.java
+++ b/stream/clients/java/base/src/main/java/org/apache/bookkeeper/clients/utils/GrpcUtils.java
@@ -20,10 +20,8 @@ package org.apache.bookkeeper.clients.utils;
 
 import static org.apache.bookkeeper.clients.utils.ClientConstants.TOKEN;
 
-import io.grpc.Attributes;
-import io.grpc.CallCredentials;
+import io.grpc.CallCredentials2;
 import io.grpc.Metadata;
-import io.grpc.MethodDescriptor;
 import io.grpc.stub.AbstractStub;
 import java.util.Optional;
 import java.util.concurrent.CompletableFuture;
@@ -50,10 +48,9 @@ public final class GrpcUtils {
             Metadata metadata = new Metadata();
             Metadata.Key<String> tokenKey = Metadata.Key.of(TOKEN, Metadata.ASCII_STRING_MARSHALLER);
             metadata.put(tokenKey, t);
-            CallCredentials callCredentials = new CallCredentials() {
+            CallCredentials2 callCredentials = new CallCredentials2() {
                 @Override
-                public void applyRequestMetadata(MethodDescriptor<?, ?> method,
-                                                 Attributes attrs,
+                public void applyRequestMetadata(RequestInfo requestInfo,
                                                  Executor appExecutor,
                                                  MetadataApplier applier) {
                     applier.apply(metadata);