You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bookkeeper.apache.org by gi...@apache.org on 2018/03/28 06:36:51 UTC

[bookkeeper] branch asf-site updated: Updated site at revision c1947c7

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

git-site-role pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 7f452e0  Updated site at revision c1947c7
7f452e0 is described below

commit 7f452e0542af518996ff5d4dd08810bb0bab7863
Author: jenkins <bu...@apache.org>
AuthorDate: Wed Mar 28 06:36:49 2018 +0000

    Updated site at revision c1947c7
---
 content/docs/latest/api/javadoc/index-all.html     | 123 ++++++++---
 .../org/apache/bookkeeper/client/BookKeeper.html   |   2 +-
 .../org/apache/bookkeeper/client/LedgerHandle.html | 161 ++++++++-------
 .../apache/bookkeeper/client/LedgerHandleAdv.html  |  26 +--
 .../bookkeeper/client/ReadOnlyLedgerHandle.html    |  23 ++-
 .../apache/bookkeeper/client/api/BKException.html  |  15 +-
 .../org/apache/bookkeeper/client/api/Handle.html   |  50 ++---
 .../apache/bookkeeper/client/api/ReadHandle.html   | 226 +++++++++++++++++----
 .../bookkeeper/client/api/WriteAdvHandle.html      | 174 +++++++++++++---
 .../apache/bookkeeper/client/api/WriteHandle.html  | 220 +++++++++++++++++---
 .../client/api/class-use/BKException.html          | 112 +++++++++-
 .../api/class-use/LastConfirmedAndEntry.html       |  27 ++-
 .../client/api/class-use/LedgerEntries.html        |  39 +++-
 .../bookkeeper/client/class-use/BKException.html   |   2 +-
 14 files changed, 948 insertions(+), 252 deletions(-)

diff --git a/content/docs/latest/api/javadoc/index-all.html b/content/docs/latest/api/javadoc/index-all.html
index c15115a..17fedc9 100644
--- a/content/docs/latest/api/javadoc/index-all.html
+++ b/content/docs/latest/api/javadoc/index-all.html
@@ -241,21 +241,37 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteHandle.html#append-io.netty.buffer.ByteBuf-">append(ByteBuf)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></dt>
 <dd>
-<div class="block">Add entry asynchronously to an open ledger.</div>
+<div class="block">Add entry synchronously to an open ledger.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteHandle.html#append-java.nio.ByteBuffer-">append(ByteBuffer)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></dt>
 <dd>
-<div class="block">Add entry asynchronously to an open ledger.</div>
+<div class="block">Add entry synchronously to an open ledger.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-">append(byte[])</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></dt>
 <dd>
-<div class="block">Add an entry asynchronously to an open ledger.</div>
+<div class="block">Add an entry synchronously to an open ledger.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-int-int-">append(byte[], int, int)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></dt>
 <dd>
+<div class="block">Add an entry synchronously to an open ledger.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteHandle.html#appendAsync-io.netty.buffer.ByteBuf-">appendAsync(ByteBuf)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></dt>
+<dd>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteHandle.html#appendAsync-java.nio.ByteBuffer-">appendAsync(ByteBuffer)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></dt>
+<dd>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteHandle.html#appendAsync-byte:A-">appendAsync(byte[])</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></dt>
+<dd>
+<div class="block">Add an entry asynchronously to an open ledger.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteHandle.html#appendAsync-byte:A-int-int-">appendAsync(byte[], int, int)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></dt>
+<dd>
 <div class="block">Add an entry asynchronously to an open ledger.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#append-io.netty.buffer.ByteBuf-">append(ByteBuf)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#appendAsync-io.netty.buffer.ByteBuf-">appendAsync(ByteBuf)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
 <dd>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 </dd>
@@ -378,14 +394,6 @@
 <dd>
 <div class="block">Async Callback for recovering ledgers.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/Handle.html#asyncClose--">asyncClose()</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></dt>
-<dd>
-<div class="block">Asynchronous close, any adds in flight will return errors.</div>
-</dd>
-<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#asyncClose--">asyncClose()</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
-<dd>
-<div class="block">Asynchronous close, any adds in flight will return errors.</div>
-</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#asyncClose-org.apache.bookkeeper.client.AsyncCallback.CloseCallback-java.lang.Object-">asyncClose(AsyncCallback.CloseCallback, Object)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
 <dd>
 <div class="block">Asynchronous close, any adds in flight will return errors.</div>
@@ -1167,7 +1175,7 @@
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/Handle.html#close--">close()</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></dt>
 <dd>
-<div class="block">Close this ledger synchronously.</div>
+<div class="block">Close this handle synchronously.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html#close--">close()</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a></dt>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/LedgerEntries.html#close--">close()</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a></dt>
@@ -1175,6 +1183,10 @@
 <div class="block">Close to release the resources held by this instance.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/LedgerEntry.html#close--">close()</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/LedgerEntry.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntry</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteHandle.html#close--">close()</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></dt>
+<dd>
+<div class="block">Synchronous close the write handle, any adds in flight will return errors.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/BookKeeper.html#close--">close()</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/BookKeeper.html" title="class in org.apache.bookkeeper.client">BookKeeper</a></dt>
 <dd>
 <div class="block">Shuts down client.</div>
@@ -1189,7 +1201,7 @@
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/impl/LedgerEntryImpl.html#close--">close()</a></span> - Method in class org.apache.bookkeeper.client.impl.<a href="org/apache/bookkeeper/client/impl/LedgerEntryImpl.html" title="class in org.apache.bookkeeper.client.impl">LedgerEntryImpl</a></dt>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#close--">close()</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
 <dd>
-<div class="block">Close this ledger synchronously.</div>
+<div class="block">Synchronous close the write handle, any adds in flight will return errors.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerMetadata.html#close-long-">close(long)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerMetadata.html" title="class in org.apache.bookkeeper.client">LedgerMetadata</a></dt>
 <dd>&nbsp;</dd>
@@ -1199,6 +1211,18 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/ReadOnlyLedgerHandle.html#close--">close()</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/ReadOnlyLedgerHandle.html" title="class in org.apache.bookkeeper.client">ReadOnlyLedgerHandle</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/Handle.html#closeAsync--">closeAsync()</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></dt>
+<dd>
+<div class="block">Asynchronous close the handle.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteHandle.html#closeAsync--">closeAsync()</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></dt>
+<dd>
+<div class="block">Asynchronous close the write handle, any adds in flight will return errors.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#closeAsync--">closeAsync()</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
+<dd>
+<div class="block">Asynchronous close the write handle, any adds in flight will return errors.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/AsyncCallback.CloseCallback.html#closeComplete-int-org.apache.bookkeeper.client.LedgerHandle-java.lang.Object-">closeComplete(int, LedgerHandle, Object)</a></span> - Method in interface org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/AsyncCallback.CloseCallback.html" title="interface in org.apache.bookkeeper.client">AsyncCallback.CloseCallback</a></dt>
 <dd>
 <div class="block">Callback definition.</div>
@@ -3440,6 +3464,8 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/RegionAwareEnsemblePlacementPolicy.html#handleBookiesThatLeft-java.util.Set-">handleBookiesThatLeft(Set&lt;BookieSocketAddress&gt;)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/RegionAwareEnsemblePlacementPolicy.html" title="class in org.apache.bookkeeper.client">RegionAwareEnsemblePlacementPolicy</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/BKException.html#HANDLER">HANDLER</a></span> - Static variable in exception org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#handleUnrecoverableErrorDuringAdd-int-">handleUnrecoverableErrorDuringAdd(int)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html#hasEntry--">hasEntry()</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a></dt>
@@ -8088,11 +8114,7 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read(long, long)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></dt>
 <dd>
-<div class="block">Read a sequence of entries asynchronously.</div>
-</dd>
-<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#read-long-long-">read(long, long)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
-<dd>
-<div class="block">Read a sequence of entries asynchronously.</div>
+<div class="block">Read a sequence of entries synchronously.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/PendingReadOp.LedgerEntryRequest.html#read--">read()</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/PendingReadOp.LedgerEntryRequest.html" title="class in org.apache.bookkeeper.client">PendingReadOp.LedgerEntryRequest</a></dt>
 <dd>
@@ -8134,6 +8156,14 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/conf/ClientConfiguration.html#READ_TIMEOUT">READ_TIMEOUT</a></span> - Static variable in class org.apache.bookkeeper.conf.<a href="org/apache/bookkeeper/conf/ClientConfiguration.html" title="class in org.apache.bookkeeper.conf">ClientConfiguration</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/ReadHandle.html#readAsync-long-long-">readAsync(long, long)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></dt>
+<dd>
+<div class="block">Read a sequence of entries asynchronously.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#readAsync-long-long-">readAsync(long, long)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
+<dd>
+<div class="block">Read a sequence of entries asynchronously.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerRecoveryOp.html#readBatchSize">readBatchSize</a></span> - Variable in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerRecoveryOp.html" title="class in org.apache.bookkeeper.client">LedgerRecoveryOp</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerRecoveryOp.html#readBatchSize-int-">readBatchSize(int)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerRecoveryOp.html" title="class in org.apache.bookkeeper.client">LedgerRecoveryOp</a></dt>
@@ -8192,18 +8222,26 @@
 <dd>
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#readLastAddConfirmed--">readLastAddConfirmed()</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-">readLastAddConfirmedAndEntry(long, long, boolean)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></dt>
 <dd>
-<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
+<div class="block">Asynchronous read specific entry and the latest last add confirmed.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-">readLastAddConfirmedAndEntry(long, long, boolean)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntryAsync-long-long-boolean-">readLastAddConfirmedAndEntryAsync(long, long, boolean)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></dt>
 <dd>
 <div class="block">Asynchronous read specific entry and the latest last add confirmed.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-">readLastAddConfirmedAndEntry(long, long, boolean)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#readLastAddConfirmedAndEntryAsync-long-long-boolean-">readLastAddConfirmedAndEntryAsync(long, long, boolean)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
 <dd>
 <div class="block">Asynchronous read specific entry and the latest last add confirmed.</div>
 </dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAsync--">readLastAddConfirmedAsync()</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></dt>
+<dd>
+<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#readLastAddConfirmedAsync--">readLastAddConfirmedAsync()</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
+<dd>
+<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
+</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#readLastConfirmed--">readLastConfirmed()</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
 <dd>
 <div class="block">Obtains synchronously the last confirmed write from a quorum of bookies.</div>
@@ -8279,9 +8317,13 @@
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmed-long-long-">readUnconfirmed(long, long)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></dt>
 <dd>
+<div class="block">Read a sequence of entries synchronously.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmedAsync-long-long-">readUnconfirmedAsync(long, long)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></dt>
+<dd>
 <div class="block">Read a sequence of entries asynchronously, allowing to read after the LastAddConfirmed range.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#readUnconfirmed-long-long-">readUnconfirmed(long, long)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#readUnconfirmedAsync-long-long-">readUnconfirmedAsync(long, long)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
 <dd>
 <div class="block">Read a sequence of entries asynchronously, allowing to read after the LastAddConfirmed range.</div>
 </dd>
@@ -10265,7 +10307,12 @@
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies
  but it doesn't wait all the responses from the quorum.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#tryReadLastAddConfirmed--">tryReadLastAddConfirmed()</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/ReadHandle.html#tryReadLastAddConfirmedAsync--">tryReadLastAddConfirmedAsync()</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></dt>
+<dd>
+<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies
+ but it doesn't wait all the responses from the quorum.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandle.html#tryReadLastAddConfirmedAsync--">tryReadLastAddConfirmedAsync()</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></dt>
 <dd>
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies
  but it doesn't wait all the responses from the quorum.</div>
@@ -10574,22 +10621,20 @@ the order they are declared.</div>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-java.nio.ByteBuffer-">write(long, ByteBuffer)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteAdvHandle</a></dt>
 <dd>
-<div class="block">Add entry asynchronously to an open ledger.</div>
+<div class="block">Add entry synchronously to an open ledger.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-byte:A-">write(long, byte[])</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteAdvHandle</a></dt>
 <dd>
-<div class="block">Add entry asynchronously to an open ledger.</div>
+<div class="block">Add entry synchronously to an open ledger.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-byte:A-int-int-">write(long, byte[], int, int)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteAdvHandle</a></dt>
 <dd>
-<div class="block">Add entry asynchronously to an open ledger.</div>
+<div class="block">Add entry synchronously to an open ledger.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-io.netty.buffer.ByteBuf-">write(long, ByteBuf)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteAdvHandle</a></dt>
 <dd>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 </dd>
-<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandleAdv.html#write-long-io.netty.buffer.ByteBuf-">write(long, ByteBuf)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandleAdv.html" title="class in org.apache.bookkeeper.client">LedgerHandleAdv</a></dt>
-<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/conf/ServerConfiguration.html#WRITE_BUFFER_SIZE">WRITE_BUFFER_SIZE</a></span> - Static variable in class org.apache.bookkeeper.conf.<a href="org/apache/bookkeeper/conf/ServerConfiguration.html" title="class in org.apache.bookkeeper.conf">ServerConfiguration</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/BookKeeperClientStats.html#WRITE_LAC_OP">WRITE_LAC_OP</a></span> - Static variable in interface org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/BookKeeperClientStats.html" title="interface in org.apache.bookkeeper.client">BookKeeperClientStats</a></dt>
@@ -10600,6 +10645,24 @@ the order they are declared.</div>
 </dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/stats/prometheus/PrometheusMetricsProvider.html#writeAllMetrics-java.io.Writer-">writeAllMetrics(Writer)</a></span> - Method in class org.apache.bookkeeper.stats.prometheus.<a href="org/apache/bookkeeper/stats/prometheus/PrometheusMetricsProvider.html" title="class in org.apache.bookkeeper.stats.prometheus">PrometheusMetricsProvider</a></dt>
 <dd>&nbsp;</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html#writeAsync-long-java.nio.ByteBuffer-">writeAsync(long, ByteBuffer)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteAdvHandle</a></dt>
+<dd>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html#writeAsync-long-byte:A-">writeAsync(long, byte[])</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteAdvHandle</a></dt>
+<dd>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html#writeAsync-long-byte:A-int-int-">writeAsync(long, byte[], int, int)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteAdvHandle</a></dt>
+<dd>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html#writeAsync-long-io.netty.buffer.ByteBuf-">writeAsync(long, ByteBuf)</a></span> - Method in interface org.apache.bookkeeper.client.api.<a href="org/apache/bookkeeper/client/api/WriteAdvHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteAdvHandle</a></dt>
+<dd>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</dd>
+<dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerHandleAdv.html#writeAsync-long-io.netty.buffer.ByteBuf-">writeAsync(long, ByteBuf)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerHandleAdv.html" title="class in org.apache.bookkeeper.client">LedgerHandleAdv</a></dt>
+<dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/PendingAddOp.html#writeComplete-int-long-long-org.apache.bookkeeper.net.BookieSocketAddress-java.lang.Object-">writeComplete(int, long, long, BookieSocketAddress, Object)</a></span> - Method in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/PendingAddOp.html" title="class in org.apache.bookkeeper.client">PendingAddOp</a></dt>
 <dd>&nbsp;</dd>
 <dt><span class="memberNameLink"><a href="org/apache/bookkeeper/client/LedgerRecoveryOp.html#writeCount">writeCount</a></span> - Variable in class org.apache.bookkeeper.client.<a href="org/apache/bookkeeper/client/LedgerRecoveryOp.html" title="class in org.apache.bookkeeper.client">LedgerRecoveryOp</a></dt>
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/BookKeeper.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/BookKeeper.html
index d942548..06099f1 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/BookKeeper.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/BookKeeper.html
@@ -1827,7 +1827,7 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/BookKeeper.html
 <dd><code>passwd</code> - password</dd>
 <dd><code>ctx</code> - optional control object</dd>
 <dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncClose--"><code>LedgerHandle.asyncClose()</code></a></dd>
+<dd><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncClose-org.apache.bookkeeper.client.AsyncCallback.CloseCallback-java.lang.Object-"><code>LedgerHandle.asyncClose(org.apache.bookkeeper.client.AsyncCallback.CloseCallback, java.lang.Object)</code></a></dd>
 </dl>
 </li>
 </ul>
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/LedgerHandle.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/LedgerHandle.html
index f051789..e93ae92 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/LedgerHandle.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/LedgerHandle.html
@@ -350,7 +350,7 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 </tr>
 <tr id="i5" class="rowColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#append-io.netty.buffer.ByteBuf-">append</a></span>(io.netty.buffer.ByteBuf&nbsp;data)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#appendAsync-io.netty.buffer.ByteBuf-">appendAsync</a></span>(io.netty.buffer.ByteBuf&nbsp;data)</code>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 </td>
 </tr>
@@ -410,25 +410,19 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 </td>
 </tr>
 <tr id="i12" class="altColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncClose--">asyncClose</a></span>()</code>
-<div class="block">Asynchronous close, any adds in flight will return errors.</div>
-</td>
-</tr>
-<tr id="i13" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncClose-org.apache.bookkeeper.client.AsyncCallback.CloseCallback-java.lang.Object-">asyncClose</a></span>(<a href="../../../../org/apache/bookkeeper/client/AsyncCallback.CloseCallback.html" title="interface in org.apache.bookkeeper.client">AsyncCallback.CloseCallback</a>&nbsp;cb,
           <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;ctx)</code>
 <div class="block">Asynchronous close, any adds in flight will return errors.</div>
 </td>
 </tr>
-<tr id="i14" class="altColor">
+<tr id="i13" class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncCloseInternal-org.apache.bookkeeper.client.AsyncCallback.CloseCallback-java.lang.Object-int-">asyncCloseInternal</a></span>(<a href="../../../../org/apache/bookkeeper/client/AsyncCallback.CloseCallback.html" title="interface in org.apache.bookkeeper.client">AsyncCallback.CloseCallback</a>&nbsp;cb,
                   <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;ctx,
                   int&nbsp;rc)</code>&nbsp;</td>
 </tr>
-<tr id="i15" class="rowColor">
+<tr id="i14" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncReadEntries-long-long-org.apache.bookkeeper.client.AsyncCallback.ReadCallback-java.lang.Object-">asyncReadEntries</a></span>(long&nbsp;firstEntry,
                 long&nbsp;lastEntry,
@@ -437,7 +431,7 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 <div class="block">Read a sequence of entries asynchronously.</div>
 </td>
 </tr>
-<tr id="i16" class="altColor">
+<tr id="i15" class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncReadEntriesInternal-long-long-org.apache.bookkeeper.client.AsyncCallback.ReadCallback-java.lang.Object-boolean-">asyncReadEntriesInternal</a></span>(long&nbsp;firstEntry,
                         long&nbsp;lastEntry,
@@ -445,7 +439,7 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
                         <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;ctx,
                         boolean&nbsp;isRecoveryRead)</code>&nbsp;</td>
 </tr>
-<tr id="i17" class="rowColor">
+<tr id="i16" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncReadExplicitLastConfirmed-org.apache.bookkeeper.client.AsyncCallback.ReadLastConfirmedCallback-java.lang.Object-">asyncReadExplicitLastConfirmed</a></span>(<a href="../../../../org/apache/bookkeeper/client/AsyncCallback.ReadLastConfirmedCallback.html" title="interface in org.apache.bookkeeper.client">AsyncCallback.ReadLastConfirmedCallback</a>&nbsp;cb,
                               <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;ctx)</code>
@@ -453,14 +447,14 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
  bookies.</div>
 </td>
 </tr>
-<tr id="i18" class="altColor">
+<tr id="i17" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncReadLastConfirmed-org.apache.bookkeeper.client.AsyncCallback.ReadLastConfirmedCallback-java.lang.Object-">asyncReadLastConfirmed</a></span>(<a href="../../../../org/apache/bookkeeper/client/AsyncCallback.ReadLastConfirmedCallback.html" title="interface in org.apache.bookkeeper.client">AsyncCallback.ReadLastConfirmedCallback</a>&nbsp;cb,
                       <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;ctx)</code>
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
 </td>
 </tr>
-<tr id="i19" class="rowColor">
+<tr id="i18" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncReadLastConfirmedAndEntry-long-long-boolean-org.apache.bookkeeper.client.AsyncCallback.ReadLastConfirmedAndEntryCallback-java.lang.Object-">asyncReadLastConfirmedAndEntry</a></span>(long&nbsp;entryId,
                               long&nbsp;timeOutInMillis,
@@ -470,12 +464,12 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 <div class="block">Asynchronous read next entry and the latest last add confirmed.</div>
 </td>
 </tr>
-<tr id="i20" class="altColor">
+<tr id="i19" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncReadLastEntry-org.apache.bookkeeper.client.AsyncCallback.ReadCallback-java.lang.Object-">asyncReadLastEntry</a></span>(<a href="../../../../org/apache/bookkeeper/client/AsyncCallback.ReadCallback.html" title="interface in org.apache.bookkeeper.client">AsyncCallback.ReadCallback</a>&nbsp;cb,
                   <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;ctx)</code>&nbsp;</td>
 </tr>
-<tr id="i21" class="rowColor">
+<tr id="i20" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncReadUnconfirmedEntries-long-long-org.apache.bookkeeper.client.AsyncCallback.ReadCallback-java.lang.Object-">asyncReadUnconfirmedEntries</a></span>(long&nbsp;firstEntry,
                            long&nbsp;lastEntry,
@@ -484,7 +478,7 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 <div class="block">Read a sequence of entries asynchronously, allowing to read after the LastAddConfirmed range.</div>
 </td>
 </tr>
-<tr id="i22" class="altColor">
+<tr id="i21" class="rowColor">
 <td class="colFirst"><code>(package private) void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncRecoveryAddEntry-byte:A-int-int-org.apache.bookkeeper.client.AsyncCallback.AddCallback-java.lang.Object-">asyncRecoveryAddEntry</a></span>(byte[]&nbsp;data,
                      int&nbsp;offset,
@@ -494,17 +488,23 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 <div class="block">Make a recovery add entry request.</div>
 </td>
 </tr>
-<tr id="i23" class="rowColor">
+<tr id="i22" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#asyncTryReadLastConfirmed-org.apache.bookkeeper.client.AsyncCallback.ReadLastConfirmedCallback-java.lang.Object-">asyncTryReadLastConfirmed</a></span>(<a href="../../../../org/apache/bookkeeper/client/AsyncCallback.ReadLastConfirmedCallback.html" title="interface in org.apache.bookkeeper.client">AsyncCallback.ReadLastConfirmedCallback</a>&nbsp;cb,
                          <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;ctx)</code>
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
 </td>
 </tr>
-<tr id="i24" class="altColor">
+<tr id="i23" class="rowColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#close--">close</a></span>()</code>
-<div class="block">Close this ledger synchronously.</div>
+<div class="block">Synchronous close the write handle, any adds in flight will return errors.</div>
+</td>
+</tr>
+<tr id="i24" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#closeAsync--">closeAsync</a></span>()</code>
+<div class="block">Asynchronous close the write handle, any adds in flight will return errors.</div>
 </td>
 </tr>
 <tr id="i25" class="rowColor">
@@ -642,8 +642,8 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 </tr>
 <tr id="i49" class="rowColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#read-long-long-">read</a></span>(long&nbsp;firstEntry,
-    long&nbsp;lastEntry)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#readAsync-long-long-">readAsync</a></span>(long&nbsp;firstEntry,
+         long&nbsp;lastEntry)</code>
 <div class="block">Read a sequence of entries asynchronously.</div>
 </td>
 </tr>
@@ -665,17 +665,17 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#readExplicitLastConfirmed--">readExplicitLastConfirmed</a></span>()</code>&nbsp;</td>
 </tr>
 <tr id="i53" class="rowColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#readLastAddConfirmed--">readLastAddConfirmed</a></span>()</code>
-<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#readLastAddConfirmedAndEntryAsync-long-long-boolean-">readLastAddConfirmedAndEntryAsync</a></span>(long&nbsp;entryId,
+                                 long&nbsp;timeOutInMillis,
+                                 boolean&nbsp;parallel)</code>
+<div class="block">Asynchronous read specific entry and the latest last add confirmed.</div>
 </td>
 </tr>
 <tr id="i54" class="altColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-">readLastAddConfirmedAndEntry</a></span>(long&nbsp;entryId,
-                            long&nbsp;timeOutInMillis,
-                            boolean&nbsp;parallel)</code>
-<div class="block">Asynchronous read specific entry and the latest last add confirmed.</div>
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#readLastAddConfirmedAsync--">readLastAddConfirmedAsync</a></span>()</code>
+<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
 </td>
 </tr>
 <tr id="i55" class="rowColor">
@@ -690,8 +690,8 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 </tr>
 <tr id="i57" class="rowColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#readUnconfirmed-long-long-">readUnconfirmed</a></span>(long&nbsp;firstEntry,
-               long&nbsp;lastEntry)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#readUnconfirmedAsync-long-long-">readUnconfirmedAsync</a></span>(long&nbsp;firstEntry,
+                    long&nbsp;lastEntry)</code>
 <div class="block">Read a sequence of entries asynchronously, allowing to read after the LastAddConfirmed range.</div>
 </td>
 </tr>
@@ -740,7 +740,7 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 </tr>
 <tr id="i66" class="altColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#tryReadLastAddConfirmed--">tryReadLastAddConfirmed</a></span>()</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#tryReadLastAddConfirmedAsync--">tryReadLastAddConfirmedAsync</a></span>()</code>
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies
  but it doesn't wait all the responses from the quorum.</div>
 </td>
@@ -777,7 +777,14 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></h3>
-<code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-int-int-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-java.nio.ByteBuffer-">append</a></code></li>
+<code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-int-int-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-io.netty.buffer.ByteBuf-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-java.nio.ByteBuffer-">append</a>, <a href="../../../../org/apache/bookkeeper/client/ap [...]
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.bookkeeper.client.api.ReadHandle">
+<!--   -->
+</a>
+<h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></h3>
+<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmed--">readLastAddConfirmed</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-">readLastAddConfirmedAndEntry</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmed-long-long-">readUnconfirmed</a [...]
 </ul>
 </li>
 </ul>
@@ -1344,39 +1351,45 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 <pre>public&nbsp;void&nbsp;close()
            throws <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a>,
                   <a href="../../../../org/apache/bookkeeper/client/BKException.html" title="class in org.apache.bookkeeper.client">BKException</a></pre>
-<div class="block">Close this ledger synchronously.</div>
+<div class="block">Synchronous close the write handle, any adds in flight will return errors.
+
+ <p>Closing a ledger will ensure that all clients agree on what the last
+ entry of the ledger is. Once the ledger has been closed, all reads from the
+ ledger will return the same set of entries.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></code></dd>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#close--">close</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></code></dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
 <dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
 <dd><code><a href="../../../../org/apache/bookkeeper/client/BKException.html" title="class in org.apache.bookkeeper.client">BKException</a></code></dd>
 <dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../../../org/apache/bookkeeper/client/api/Handle.html#asyncClose--"><code>Handle.asyncClose()</code></a></dd>
+<dd><a href="../../../../org/apache/bookkeeper/client/api/Handle.html#closeAsync--"><code>Handle.closeAsync()</code></a></dd>
 </dl>
 </li>
 </ul>
-<a name="asyncClose--">
+<a name="closeAsync--">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>asyncClose</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;asyncClose()</pre>
-<div class="block">Asynchronous close, any adds in flight will return errors.
+<h4>closeAsync</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;closeAsync()</pre>
+<div class="block">Asynchronous close the write handle, any adds in flight will return errors.
 
  <p>Closing a ledger will ensure that all clients agree on what the last
- entry of the ledger is. This ensures that, once the ledger has been closed,
- all reads from the ledger will return the same set of entries.</div>
+ entry of the ledger is. Once the ledger has been closed, all reads from the
+ ledger will return the same set of entries.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../../../org/apache/bookkeeper/client/api/Handle.html#asyncClose--">asyncClose</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></code></dd>
+<dd><code><a href="../../../../org/apache/bookkeeper/client/api/Handle.html#closeAsync--">closeAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></code></dd>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#closeAsync--">closeAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>an handle to access the result of the operation</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><code>to have a simple method to access the result</code></dd>
 </dl>
 </li>
 </ul>
@@ -1409,7 +1422,7 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 <pre>public&nbsp;boolean&nbsp;isClosed()</pre>
 <div class="block">Returns whether the ledger is sealed or not.
 
- <p>A ledger is sealed when either the client explicitly closes it (<a href="../../../../org/apache/bookkeeper/client/api/Handle.html#close--"><code>Handle.close()</code></a> or
+ <p>A ledger is sealed when either the client explicitly closes it (<a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#close--"><code>WriteHandle.close()</code></a> or
  <a href="../../../../org/apache/bookkeeper/client/api/Handle.html#close--"><code>Handle.close()</code></a>) or another client explicitly open and recovery it
  <a href="../../../../org/apache/bookkeeper/client/api/OpenBuilder.html#withRecovery-boolean-"><code>OpenBuilder.withRecovery(boolean)</code></a>.
 
@@ -1559,18 +1572,18 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 </dl>
 </li>
 </ul>
-<a name="read-long-long-">
+<a name="readAsync-long-long-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>read</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;&nbsp;read(long&nbsp;firstEntry,
-                                             long&nbsp;lastEntry)</pre>
+<h4>readAsync</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;&nbsp;readAsync(long&nbsp;firstEntry,
+                                                  long&nbsp;lastEntry)</pre>
 <div class="block">Read a sequence of entries asynchronously.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></code></dd>
+<dd><code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readAsync-long-long-">readAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>firstEntry</code> - id of first entry of sequence</dd>
 <dd><code>lastEntry</code> - id of last entry of sequence</dd>
@@ -1579,14 +1592,14 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 </dl>
 </li>
 </ul>
-<a name="readUnconfirmed-long-long-">
+<a name="readUnconfirmedAsync-long-long-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>readUnconfirmed</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;&nbsp;readUnconfirmed(long&nbsp;firstEntry,
-                                                        long&nbsp;lastEntry)</pre>
+<h4>readUnconfirmedAsync</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;&nbsp;readUnconfirmedAsync(long&nbsp;firstEntry,
+                                                             long&nbsp;lastEntry)</pre>
 <div class="block">Read a sequence of entries asynchronously, allowing to read after the LastAddConfirmed range.
  <br>This is the same of
  <code>#asyncReadEntries(long, long, ReadCallback, Object) </code>
@@ -1601,7 +1614,7 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
  the expected consistency will be as described above for each subrange of ids.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmed-long-long-">readUnconfirmed</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></code></dd>
+<dd><code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmedAsync-long-long-">readUnconfirmedAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>firstEntry</code> - id of first entry of sequence</dd>
 <dd><code>lastEntry</code> - id of last entry of sequence</dd>
@@ -1685,17 +1698,17 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 </dl>
 </li>
 </ul>
-<a name="append-io.netty.buffer.ByteBuf-">
+<a name="appendAsync-io.netty.buffer.ByteBuf-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>append</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;append(io.netty.buffer.ByteBuf&nbsp;data)</pre>
+<h4>appendAsync</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;appendAsync(io.netty.buffer.ByteBuf&nbsp;data)</pre>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-io.netty.buffer.ByteBuf-">append</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></code></dd>
+<dd><code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#appendAsync-io.netty.buffer.ByteBuf-">appendAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>data</code> - a bytebuf to be written. The bytebuf's reference count will be decremented by 1 after the
              completable future is returned</dd>
@@ -1997,33 +2010,31 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 </dl>
 </li>
 </ul>
-<a name="tryReadLastAddConfirmed--">
+<a name="tryReadLastAddConfirmedAsync--">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>tryReadLastAddConfirmed</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;tryReadLastAddConfirmed()</pre>
+<h4>tryReadLastAddConfirmedAsync</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;tryReadLastAddConfirmedAsync()</pre>
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies
  but it doesn't wait all the responses from the quorum. It would callback
  immediately if it received a LAC which is larger than current LAC.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#tryReadLastAddConfirmed--">tryReadLastAddConfirmed</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></code></dd>
+<dd><code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#tryReadLastAddConfirmedAsync--">tryReadLastAddConfirmedAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>an handle to the result of the operation</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#tryReadLastAddConfirmed--"><code>ReadHandle.tryReadLastAddConfirmed()</code></a></dd>
 </dl>
 </li>
 </ul>
-<a name="readLastAddConfirmed--">
+<a name="readLastAddConfirmedAsync--">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>readLastAddConfirmed</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;readLastAddConfirmed()</pre>
+<h4>readLastAddConfirmedAsync</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;readLastAddConfirmedAsync()</pre>
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies. This
  call obtains the the last add confirmed each bookie has received for this ledger
  and returns the maximum. If the ledger has been closed, the value returned by this
@@ -2033,7 +2044,7 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
  of the ledger handle.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmed--">readLastAddConfirmed</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></code></dd>
+<dd><code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAsync--">readLastAddConfirmedAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></code></dd>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>an handle to the result of the operation</dd>
 <dt><span class="seeLabel">See Also:</span></dt>
@@ -2041,22 +2052,22 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.htm
 </dl>
 </li>
 </ul>
-<a name="readLastAddConfirmedAndEntry-long-long-boolean-">
+<a name="readLastAddConfirmedAndEntryAsync-long-long-boolean-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>readLastAddConfirmedAndEntry</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&gt;&nbsp;readLastAddConfirmedAndEntry(long&nbsp;entryId,
-                                                                             long&nbsp;timeOutInMillis,
-                                                                             boolean&nbsp;parallel)</pre>
+<h4>readLastAddConfirmedAndEntryAsync</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&gt;&nbsp;readLastAddConfirmedAndEntryAsync(long&nbsp;entryId,
+                                                                                  long&nbsp;timeOutInMillis,
+                                                                                  boolean&nbsp;parallel)</pre>
 <div class="block">Asynchronous read specific entry and the latest last add confirmed.
  If the next entryId is less than known last add confirmed, the call will read next entry directly.
  If the next entryId is ahead of known last add confirmed, the call will issue a long poll read
  to wait for the next entry <i>entryId</i>.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-">readLastAddConfirmedAndEntry</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></code></dd>
+<dd><code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntryAsync-long-long-boolean-">readLastAddConfirmedAndEntryAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>entryId</code> - next entry id to read</dd>
 <dd><code>timeOutInMillis</code> - timeout period to wait for the entry id to be available (for long poll only)
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/LedgerHandleAdv.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/LedgerHandleAdv.html
index ee11513..00526a9 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/LedgerHandleAdv.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/LedgerHandleAdv.html
@@ -289,8 +289,8 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.
 </tr>
 <tr id="i8" class="altColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandleAdv.html#write-long-io.netty.buffer.ByteBuf-">write</a></span>(long&nbsp;entryId,
-     io.netty.buffer.ByteBuf&nbsp;data)</code>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/LedgerHandleAdv.html#writeAsync-long-io.netty.buffer.ByteBuf-">writeAsync</a></span>(long&nbsp;entryId,
+          io.netty.buffer.ByteBuf&nbsp;data)</code>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 </td>
 </tr>
@@ -300,7 +300,7 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.bookkeeper.client.<a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></h3>
-<code><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addEntry-byte:A-">addEntry</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addEntry-byte:A-int-int-">addEntry</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addToLength-long-">addToLength</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#append-io.netty.buffer.ByteBuf-">append</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandl [...]
+<code><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addEntry-byte:A-">addEntry</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addEntry-byte:A-int-int-">addEntry</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addToLength-long-">addToLength</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#appendAsync-io.netty.buffer.ByteBuf-">appendAsync</a>, <a href="../../../../org/apache/bookkeeper/client/L [...]
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
@@ -314,28 +314,28 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteAdvHandle</a></h3>
-<code><a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-byte:A-">write</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-byte:A-int-int-">write</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-java.nio.ByteBuffer-">write</a></code></li>
+<code><a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-byte:A-">write</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-byte:A-int-int-">write</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-io.netty.buffer.ByteBuf-">write</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-java.nio.ByteBuffer-">write</a>, <a href="../../../../org/apa [...]
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.bookkeeper.client.api.ReadHandle">
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></h3>
-<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLastAddConfirmed--">getLastAddConfirmed</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLength--">getLength</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#isClosed--">isClosed</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLas [...]
+<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLastAddConfirmed--">getLastAddConfirmed</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLength--">getLength</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#isClosed--">isClosed</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readAsy [...]
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.bookkeeper.client.api.Handle">
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></h3>
-<code><a href="../../../../org/apache/bookkeeper/client/api/Handle.html#asyncClose--">asyncClose</a>, <a href="../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a>, <a href="../../../../org/apache/bookkeeper/client/api/Handle.html#getId--">getId</a>, <a href="../../../../org/apache/bookkeeper/client/api/Handle.html#getLedgerMetadata--">getLedgerMetadata</a></code></li>
+<code><a href="../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a>, <a href="../../../../org/apache/bookkeeper/client/api/Handle.html#closeAsync--">closeAsync</a>, <a href="../../../../org/apache/bookkeeper/client/api/Handle.html#getId--">getId</a>, <a href="../../../../org/apache/bookkeeper/client/api/Handle.html#getLedgerMetadata--">getLedgerMetadata</a></code></li>
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.bookkeeper.client.api.WriteHandle">
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></h3>
-<code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-int-int-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-java.nio.ByteBuffer-">append</a></code></li>
+<code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-int-int-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-io.netty.buffer.ByteBuf-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-java.nio.ByteBuffer-">append</a>, <a href="../../../../org/apache/bookkeeper/client/ap [...]
 </ul>
 </li>
 </ul>
@@ -547,19 +547,19 @@ implements <a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.
 </dl>
 </li>
 </ul>
-<a name="write-long-io.netty.buffer.ByteBuf-">
+<a name="writeAsync-long-io.netty.buffer.ByteBuf-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>write</h4>
-<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;write(long&nbsp;entryId,
-                                     io.netty.buffer.ByteBuf&nbsp;data)</pre>
-<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-io.netty.buffer.ByteBuf-">WriteAdvHandle</a></code></span></div>
+<h4>writeAsync</h4>
+<pre>public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;writeAsync(long&nbsp;entryId,
+                                          io.netty.buffer.ByteBuf&nbsp;data)</pre>
+<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#writeAsync-long-io.netty.buffer.ByteBuf-">WriteAdvHandle</a></code></span></div>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
-<dd><code><a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-io.netty.buffer.ByteBuf-">write</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteAdvHandle</a></code></dd>
+<dd><code><a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#writeAsync-long-io.netty.buffer.ByteBuf-">writeAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteAdvHandle</a></code></dd>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>entryId</code> - entryId to be added</dd>
 <dd><code>data</code> - array of bytes to be written</dd>
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/ReadOnlyLedgerHandle.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/ReadOnlyLedgerHandle.html
index 690b230..c56dc91 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/ReadOnlyLedgerHandle.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/ReadOnlyLedgerHandle.html
@@ -253,7 +253,7 @@ implements org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.LedgerMetadat
 <tr id="i6" class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/bookkeeper/client/ReadOnlyLedgerHandle.html#close--">close</a></span>()</code>
-<div class="block">Close this ledger synchronously.</div>
+<div class="block">Synchronous close the write handle, any adds in flight will return errors.</div>
 </td>
 </tr>
 <tr id="i7" class="rowColor">
@@ -281,7 +281,7 @@ implements org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.LedgerMetadat
 <!--   -->
 </a>
 <h3>Methods inherited from class&nbsp;org.apache.bookkeeper.client.<a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></h3>
-<code><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addEntry-long-byte:A-">addEntry</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addEntry-long-byte:A-int-int-">addEntry</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addToLength-long-">addToLength</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#append-io.netty.buffer.ByteBuf-">append</a>, <a href="../../../../org/apache/bookkeeper/client/L [...]
+<code><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addEntry-long-byte:A-">addEntry</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addEntry-long-byte:A-int-int-">addEntry</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#addToLength-long-">addToLength</a>, <a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#appendAsync-io.netty.buffer.ByteBuf-">appendAsync</a>, <a href="../../../../org/apache/bookkeepe [...]
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
@@ -295,7 +295,14 @@ implements org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.LedgerMetadat
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></h3>
-<code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-int-int-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-java.nio.ByteBuffer-">append</a></code></li>
+<code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-int-int-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-io.netty.buffer.ByteBuf-">append</a>, <a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-java.nio.ByteBuffer-">append</a>, <a href="../../../../org/apache/bookkeeper/client/ap [...]
+</ul>
+<ul class="blockList">
+<li class="blockList"><a name="methods.inherited.from.class.org.apache.bookkeeper.client.api.ReadHandle">
+<!--   -->
+</a>
+<h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></h3>
+<code><a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmed--">readLastAddConfirmed</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-">readLastAddConfirmedAndEntry</a>, <a href="../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmed-long-long-">readUnconfirmed</a [...]
 </ul>
 </li>
 </ul>
@@ -350,19 +357,25 @@ implements org.apache.bookkeeper.proto.BookkeeperInternalCallbacks.LedgerMetadat
            throws <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a>,
                   <a href="../../../../org/apache/bookkeeper/client/BKException.html" title="class in org.apache.bookkeeper.client">BKException</a></pre>
 <div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#close--">LedgerHandle</a></code></span></div>
-<div class="block">Close this ledger synchronously.</div>
+<div class="block">Synchronous close the write handle, any adds in flight will return errors.
+
+ <p>Closing a ledger will ensure that all clients agree on what the last
+ entry of the ledger is. Once the ledger has been closed, all reads from the
+ ledger will return the same set of entries.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></code></dd>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html#close--">close</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/api/WriteHandle.html" title="interface in org.apache.bookkeeper.client.api">WriteHandle</a></code></dd>
 <dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
 <dd><code><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html#close--">close</a></code>&nbsp;in class&nbsp;<code><a href="../../../../org/apache/bookkeeper/client/LedgerHandle.html" title="class in org.apache.bookkeeper.client">LedgerHandle</a></code></dd>
 <dt><span class="throwsLabel">Throws:</span></dt>
 <dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
 <dd><code><a href="../../../../org/apache/bookkeeper/client/BKException.html" title="class in org.apache.bookkeeper.client">BKException</a></code></dd>
 <dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../../../org/apache/bookkeeper/client/api/Handle.html#asyncClose--"><code>Handle.asyncClose()</code></a></dd>
+<dd><a href="../../../../org/apache/bookkeeper/client/api/Handle.html#closeAsync--"><code>Handle.closeAsync()</code></a></dd>
 </dl>
 </li>
 </ul>
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/BKException.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/BKException.html
index d0ae128..06f52fc 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/BKException.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/BKException.html
@@ -129,7 +129,7 @@ var activeTableTab = "activeTableTab";
 <br>
 <pre><a href="../../../../../org/apache/bookkeeper/common/annotation/InterfaceAudience.Public.html" title="annotation in org.apache.bookkeeper.common.annotation">@InterfaceAudience.Public</a>
  <a href="../../../../../org/apache/bookkeeper/common/annotation/InterfaceStability.Unstable.html" title="annotation in org.apache.bookkeeper.common.annotation">@InterfaceStability.Unstable</a>
-public abstract class <span class="typeNameLabel">BKException</span>
+public class <span class="typeNameLabel">BKException</span>
 extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
 <div class="block">Super class for all errors which occur using BookKeeper client.</div>
 <dl>
@@ -181,6 +181,10 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Exception.ht
 <td class="colFirst"><code>protected int</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html#code">code</a></span></code>&nbsp;</td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code>(package private) static <a href="http://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>,<a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BK [...]
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html#HANDLER">HANDLER</a></span></code>&nbsp;</td>
+</tr>
 </table>
 </li>
 </ul>
@@ -262,6 +266,15 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Exception.ht
 <!--   -->
 </a>
 <h3>Field Detail</h3>
+<a name="HANDLER">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>HANDLER</h4>
+<pre>static final&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>,<a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>&gt; HANDLER</pre>
+</li>
+</ul>
 <a name="code">
 <!--   -->
 </a>
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/Handle.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/Handle.html
index bb3e242..272b68c 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/Handle.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/Handle.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":6,"i1":18,"i2":6,"i3":6};
+var methods = {"i0":18,"i1":6,"i2":6,"i3":6};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],16:["t5","Default Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -141,15 +141,15 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseabl
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#asyncClose--">asyncClose</a></span>()</code>
-<div class="block">Asynchronous close, any adds in flight will return errors.</div>
+<td class="colFirst"><code>default void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a></span>()</code>
+<div class="block">Close this handle synchronously.</div>
 </td>
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><code>default void</code></td>
-<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a></span>()</code>
-<div class="block">Close this ledger synchronously.</div>
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#closeAsync--">closeAsync</a></span>()</code>
+<div class="block">Asynchronous close the handle.</div>
 </td>
 </tr>
 <tr id="i2" class="altColor">
@@ -202,7 +202,7 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseabl
 <pre>default&nbsp;void&nbsp;close()
             throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
                    <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
-<div class="block">Close this ledger synchronously.</div>
+<div class="block">Close this handle synchronously.</div>
 <dl>
 <dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
 <dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
@@ -210,45 +210,39 @@ extends <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseabl
 <dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
 <dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
 <dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#asyncClose--"><code>asyncClose()</code></a></dd>
+<dd><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#closeAsync--"><code>closeAsync()</code></a></dd>
 </dl>
 </li>
 </ul>
-<a name="getLedgerMetadata--">
+<a name="closeAsync--">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>getLedgerMetadata</h4>
-<pre><a href="../../../../../org/apache/bookkeeper/client/api/LedgerMetadata.html" title="interface in org.apache.bookkeeper.client.api">LedgerMetadata</a>&nbsp;getLedgerMetadata()</pre>
-<div class="block">Returns the metadata of this ledger.
-
- <p>This call only retrieves the metadata cached locally. If there is any metadata updated, the read
- handle will receive the metadata updates and update the metadata locally. The metadata notification
- can be deplayed, so it is possible you can receive a stale copy of ledger metadata from this call.</div>
+<h4>closeAsync</h4>
+<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;closeAsync()</pre>
+<div class="block">Asynchronous close the handle.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>the metadata of this ledger.</dd>
+<dd>an handle to access the result of the operation</dd>
 </dl>
 </li>
 </ul>
-<a name="asyncClose--">
+<a name="getLedgerMetadata--">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
-<h4>asyncClose</h4>
-<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;asyncClose()</pre>
-<div class="block">Asynchronous close, any adds in flight will return errors.
+<h4>getLedgerMetadata</h4>
+<pre><a href="../../../../../org/apache/bookkeeper/client/api/LedgerMetadata.html" title="interface in org.apache.bookkeeper.client.api">LedgerMetadata</a>&nbsp;getLedgerMetadata()</pre>
+<div class="block">Returns the metadata of this ledger.
 
- <p>Closing a ledger will ensure that all clients agree on what the last
- entry of the ledger is. This ensures that, once the ledger has been closed,
- all reads from the ledger will return the same set of entries.</div>
+ <p>This call only retrieves the metadata cached locally. If there is any metadata updated, the read
+ handle will receive the metadata updates and update the metadata locally. The metadata notification
+ can be deplayed, so it is possible you can receive a stale copy of ledger metadata from this call.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>an handle to access the result of the operation</dd>
-<dt><span class="seeLabel">See Also:</span></dt>
-<dd><code>to have a simple method to access the result</code></dd>
+<dd>the metadata of this ledger.</dd>
 </dl>
 </li>
 </ul>
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/ReadHandle.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/ReadHandle.html
index b866b79..af8323c 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/ReadHandle.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/ReadHandle.html
@@ -18,8 +18,8 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6};
-var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
+var methods = {"i0":6,"i1":6,"i2":6,"i3":18,"i4":6,"i5":18,"i6":18,"i7":6,"i8":6,"i9":18,"i10":6,"i11":18,"i12":6};
+var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],16:["t5","Default Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
 var tableTab = "tableTab";
@@ -135,7 +135,7 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" ti
 </a>
 <h3>Method Summary</h3>
 <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
-<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
+<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t5" class="tableTab"><span><a href="javascript:show(16);">Default Methods</a></span><span class="tabE [...]
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Method and Description</th>
@@ -159,47 +159,82 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" ti
 </td>
 </tr>
 <tr id="i3" class="rowColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
+<td class="colFirst"><code>default <a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a></span>(long&nbsp;firstEntry,
     long&nbsp;lastEntry)</code>
-<div class="block">Read a sequence of entries asynchronously.</div>
+<div class="block">Read a sequence of entries synchronously.</div>
 </td>
 </tr>
 <tr id="i4" class="altColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readAsync-long-long-">readAsync</a></span>(long&nbsp;firstEntry,
+         long&nbsp;lastEntry)</code>
+<div class="block">Read a sequence of entries asynchronously.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>default long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmed--">readLastAddConfirmed</a></span>()</code>
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
 </td>
 </tr>
-<tr id="i5" class="rowColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&gt;</code></td>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code>default <a href="../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-">readLastAddConfirmedAndEntry</a></span>(long&nbsp;entryId,
                             long&nbsp;timeOutInMillis,
                             boolean&nbsp;parallel)</code>
 <div class="block">Asynchronous read specific entry and the latest last add confirmed.</div>
 </td>
 </tr>
-<tr id="i6" class="altColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntryAsync-long-long-boolean-">readLastAddConfirmedAndEntryAsync</a></span>(long&nbsp;entryId,
+                                 long&nbsp;timeOutInMillis,
+                                 boolean&nbsp;parallel)</code>
+<div class="block">Asynchronous read specific entry and the latest last add confirmed.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAsync--">readLastAddConfirmedAsync</a></span>()</code>
+<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code>default <a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a></code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmed-long-long-">readUnconfirmed</a></span>(long&nbsp;firstEntry,
                long&nbsp;lastEntry)</code>
+<div class="block">Read a sequence of entries synchronously.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmedAsync-long-long-">readUnconfirmedAsync</a></span>(long&nbsp;firstEntry,
+                    long&nbsp;lastEntry)</code>
 <div class="block">Read a sequence of entries asynchronously, allowing to read after the LastAddConfirmed range.</div>
 </td>
 </tr>
-<tr id="i7" class="rowColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<tr id="i11" class="rowColor">
+<td class="colFirst"><code>default long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#tryReadLastAddConfirmed--">tryReadLastAddConfirmed</a></span>()</code>
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies
  but it doesn't wait all the responses from the quorum.</div>
 </td>
 </tr>
+<tr id="i12" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#tryReadLastAddConfirmedAsync--">tryReadLastAddConfirmedAsync</a></span>()</code>
+<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies
+ but it doesn't wait all the responses from the quorum.</div>
+</td>
+</tr>
 </table>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.bookkeeper.client.api.Handle">
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></h3>
-<code><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#asyncClose--">asyncClose</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getId--">getId</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getLedgerMetadata--">getLedgerMetadata</a></code></li>
+<code><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#closeAsync--">closeAsync</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getId--">getId</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getLedgerMetadata--">getLedgerMetadata</a></code></li>
 </ul>
 </li>
 </ul>
@@ -215,14 +250,14 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" ti
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a name="read-long-long-">
+<a name="readAsync-long-long-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>read</h4>
-<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;&nbsp;read(long&nbsp;firstEntry,
-                                      long&nbsp;lastEntry)</pre>
+<h4>readAsync</h4>
+<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;&nbsp;readAsync(long&nbsp;firstEntry,
+                                           long&nbsp;lastEntry)</pre>
 <div class="block">Read a sequence of entries asynchronously.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -233,14 +268,37 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" ti
 </dl>
 </li>
 </ul>
-<a name="readUnconfirmed-long-long-">
+<a name="read-long-long-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>readUnconfirmed</h4>
-<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;&nbsp;readUnconfirmed(long&nbsp;firstEntry,
-                                                 long&nbsp;lastEntry)</pre>
+<h4>read</h4>
+<pre>default&nbsp;<a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&nbsp;read(long&nbsp;firstEntry,
+                           long&nbsp;lastEntry)
+                    throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                           <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Read a sequence of entries synchronously.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>firstEntry</code> - id of first entry of sequence</dd>
+<dd><code>lastEntry</code> - id of last entry of sequence, inclusive</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the result of the operation</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="readUnconfirmedAsync-long-long-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>readUnconfirmedAsync</h4>
+<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;&nbsp;readUnconfirmedAsync(long&nbsp;firstEntry,
+                                                      long&nbsp;lastEntry)</pre>
 <div class="block">Read a sequence of entries asynchronously, allowing to read after the LastAddConfirmed range.
  <br>This is the same of
  <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-"><code>read(long, long)</code></a>
@@ -260,18 +318,43 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" ti
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>an handle to the result of the operation</dd>
 <dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-"><code>read(long, long)</code></a>, 
-<a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmed--"><code>readLastAddConfirmed()</code></a></dd>
+<dd><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readAsync-long-long-"><code>readAsync(long, long)</code></a>, 
+<a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAsync--"><code>readLastAddConfirmedAsync()</code></a></dd>
 </dl>
 </li>
 </ul>
-<a name="readLastAddConfirmed--">
+<a name="readUnconfirmed-long-long-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>readLastAddConfirmed</h4>
-<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;readLastAddConfirmed()</pre>
+<h4>readUnconfirmed</h4>
+<pre>default&nbsp;<a href="../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&nbsp;readUnconfirmed(long&nbsp;firstEntry,
+                                      long&nbsp;lastEntry)
+                               throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                                      <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Read a sequence of entries synchronously.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>firstEntry</code> - id of first entry of sequence</dd>
+<dd><code>lastEntry</code> - id of last entry of sequence, inclusive</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an handle to the result of the operation</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmedAsync-long-long-"><code>readUnconfirmedAsync(long, long)</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="readLastAddConfirmedAsync--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>readLastAddConfirmedAsync</h4>
+<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;readLastAddConfirmedAsync()</pre>
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies. This
  call obtains the the last add confirmed each bookie has received for this ledger
  and returns the maximum. If the ledger has been closed, the value returned by this
@@ -287,21 +370,62 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" ti
 </dl>
 </li>
 </ul>
-<a name="tryReadLastAddConfirmed--">
+<a name="readLastAddConfirmed--">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>tryReadLastAddConfirmed</h4>
-<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;tryReadLastAddConfirmed()</pre>
+<h4>readLastAddConfirmed</h4>
+<pre>default&nbsp;long&nbsp;readLastAddConfirmed()
+                           throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                                  <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the result of the operation</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAsync--"><code>readLastAddConfirmedAsync()</code></a></dd>
+</dl>
+</li>
+</ul>
+<a name="tryReadLastAddConfirmedAsync--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>tryReadLastAddConfirmedAsync</h4>
+<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;tryReadLastAddConfirmedAsync()</pre>
 <div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies
  but it doesn't wait all the responses from the quorum. It would callback
  immediately if it received a LAC which is larger than current LAC.</div>
 <dl>
 <dt><span class="returnLabel">Returns:</span></dt>
 <dd>an handle to the result of the operation</dd>
+</dl>
+</li>
+</ul>
+<a name="tryReadLastAddConfirmed--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>tryReadLastAddConfirmed</h4>
+<pre>default&nbsp;long&nbsp;tryReadLastAddConfirmed()
+                              throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                                     <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies
+ but it doesn't wait all the responses from the quorum.</div>
+<dl>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the result of the operation</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
 <dt><span class="seeLabel">See Also:</span></dt>
-<dd><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#tryReadLastAddConfirmed--"><code>tryReadLastAddConfirmed()</code></a></dd>
+<dd><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#tryReadLastAddConfirmedAsync--"><code>tryReadLastAddConfirmedAsync()</code></a></dd>
 </dl>
 </li>
 </ul>
@@ -348,7 +472,7 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" ti
 <pre>boolean&nbsp;isClosed()</pre>
 <div class="block">Returns whether the ledger is sealed or not.
 
- <p>A ledger is sealed when either the client explicitly closes it (<a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#close--"><code>Handle.close()</code></a> or
+ <p>A ledger is sealed when either the client explicitly closes it (<a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#close--"><code>WriteHandle.close()</code></a> or
  <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#close--"><code>Handle.close()</code></a>) or another client explicitly open and recovery it
  <a href="../../../../../org/apache/bookkeeper/client/api/OpenBuilder.html#withRecovery-boolean-"><code>OpenBuilder.withRecovery(boolean)</code></a>.
 
@@ -360,15 +484,15 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" ti
 </dl>
 </li>
 </ul>
-<a name="readLastAddConfirmedAndEntry-long-long-boolean-">
+<a name="readLastAddConfirmedAndEntryAsync-long-long-boolean-">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
-<h4>readLastAddConfirmedAndEntry</h4>
-<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&gt;&nbsp;readLastAddConfirmedAndEntry(long&nbsp;entryId,
-                                                                      long&nbsp;timeOutInMillis,
-                                                                      boolean&nbsp;parallel)</pre>
+<h4>readLastAddConfirmedAndEntryAsync</h4>
+<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&gt;&nbsp;readLastAddConfirmedAndEntryAsync(long&nbsp;entryId,
+                                                                           long&nbsp;timeOutInMillis,
+                                                                           boolean&nbsp;parallel)</pre>
 <div class="block">Asynchronous read specific entry and the latest last add confirmed.
  If the next entryId is less than known last add confirmed, the call will read next entry directly.
  If the next entryId is ahead of known last add confirmed, the call will issue a long poll read
@@ -384,6 +508,34 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" ti
 </dl>
 </li>
 </ul>
+<a name="readLastAddConfirmedAndEntry-long-long-boolean-">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>readLastAddConfirmedAndEntry</h4>
+<pre>default&nbsp;<a href="../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&nbsp;readLastAddConfirmedAndEntry(long&nbsp;entryId,
+                                                           long&nbsp;timeOutInMillis,
+                                                           boolean&nbsp;parallel)
+                                                    throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                                                           <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Asynchronous read specific entry and the latest last add confirmed.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>entryId</code> - next entry id to read</dd>
+<dd><code>timeOutInMillis</code> - timeout period to wait for the entry id to be available (for long poll only)
+          if timeout for get the entry, it will return null entry.</dd>
+<dd><code>parallel</code> - whether to issue the long poll reads in parallel</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the result of the operation</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-"><code>readLastAddConfirmedAndEntry(long, long, boolean)</code></a></dd>
+</dl>
+</li>
+</ul>
 </li>
 </ul>
 </li>
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/WriteAdvHandle.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/WriteAdvHandle.html
index 76cb7aa..c93ac8b 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/WriteAdvHandle.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/WriteAdvHandle.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":18,"i1":18,"i2":6,"i3":18};
+var methods = {"i0":18,"i1":18,"i2":18,"i3":18,"i4":18,"i5":18,"i6":6,"i7":18};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],16:["t5","Default Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -141,32 +141,62 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colFirst"><code>default long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-byte:A-">write</a></span>(long&nbsp;entryId,
      byte[]&nbsp;data)</code>
-<div class="block">Add entry asynchronously to an open ledger.</div>
+<div class="block">Add entry synchronously to an open ledger.</div>
 </td>
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colFirst"><code>default long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-byte:A-int-int-">write</a></span>(long&nbsp;entryId,
      byte[]&nbsp;data,
      int&nbsp;offset,
      int&nbsp;length)</code>
-<div class="block">Add entry asynchronously to an open ledger.</div>
+<div class="block">Add entry synchronously to an open ledger.</div>
 </td>
 </tr>
 <tr id="i2" class="altColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colFirst"><code>default long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-io.netty.buffer.ByteBuf-">write</a></span>(long&nbsp;entryId,
      io.netty.buffer.ByteBuf&nbsp;data)</code>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 </td>
 </tr>
 <tr id="i3" class="rowColor">
-<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colFirst"><code>default long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-java.nio.ByteBuffer-">write</a></span>(long&nbsp;entryId,
      <a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;data)</code>
+<div class="block">Add entry synchronously to an open ledger.</div>
+</td>
+</tr>
+<tr id="i4" class="altColor">
+<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#writeAsync-long-byte:A-">writeAsync</a></span>(long&nbsp;entryId,
+          byte[]&nbsp;data)</code>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#writeAsync-long-byte:A-int-int-">writeAsync</a></span>(long&nbsp;entryId,
+          byte[]&nbsp;data,
+          int&nbsp;offset,
+          int&nbsp;length)</code>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#writeAsync-long-io.netty.buffer.ByteBuf-">writeAsync</a></span>(long&nbsp;entryId,
+          io.netty.buffer.ByteBuf&nbsp;data)</code>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#writeAsync-long-java.nio.ByteBuffer-">writeAsync</a></span>(long&nbsp;entryId,
+          <a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;data)</code>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 </td>
 </tr>
@@ -176,14 +206,14 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></h3>
-<code><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLastAddConfirmed--">getLastAddConfirmed</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLength--">getLength</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#isClosed--">isClosed</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHand [...]
+<code><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLastAddConfirmed--">getLastAddConfirmed</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLength--">getLength</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#isClosed--">isClosed</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHand [...]
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.bookkeeper.client.api.Handle">
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></h3>
-<code><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#asyncClose--">asyncClose</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getId--">getId</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getLedgerMetadata--">getLedgerMetadata</a></code></li>
+<code><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#closeAsync--">closeAsync</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getId--">getId</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getLedgerMetadata--">getLedgerMetadata</a></code></li>
 </ul>
 </li>
 </ul>
@@ -199,14 +229,14 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a name="write-long-java.nio.ByteBuffer-">
+<a name="writeAsync-long-java.nio.ByteBuffer-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>write</h4>
-<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;write(long&nbsp;entryId,
-                                      <a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;data)</pre>
+<h4>writeAsync</h4>
+<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;writeAsync(long&nbsp;entryId,
+                                           <a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;data)</pre>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -217,14 +247,37 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 </dl>
 </li>
 </ul>
-<a name="write-long-byte:A-">
+<a name="write-long-java.nio.ByteBuffer-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>write</h4>
-<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;write(long&nbsp;entryId,
-                                      byte[]&nbsp;data)</pre>
+<pre>default&nbsp;long&nbsp;write(long&nbsp;entryId,
+                   <a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;data)
+            throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                   <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Add entry synchronously to an open ledger.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>entryId</code> - entryId to be added</dd>
+<dd><code>data</code> - array of bytes to be written</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the same value of param entryId.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="writeAsync-long-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>writeAsync</h4>
+<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;writeAsync(long&nbsp;entryId,
+                                           byte[]&nbsp;data)</pre>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -235,16 +288,39 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 </dl>
 </li>
 </ul>
-<a name="write-long-byte:A-int-int-">
+<a name="write-long-byte:A-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>write</h4>
-<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;write(long&nbsp;entryId,
-                                      byte[]&nbsp;data,
-                                      int&nbsp;offset,
-                                      int&nbsp;length)</pre>
+<pre>default&nbsp;long&nbsp;write(long&nbsp;entryId,
+                   byte[]&nbsp;data)
+            throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                   <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Add entry synchronously to an open ledger.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>entryId</code> - entryId to be added.</dd>
+<dd><code>data</code> - array of bytes to be written</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>same value of param <code>entryId</code>.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="writeAsync-long-byte:A-int-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>writeAsync</h4>
+<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;writeAsync(long&nbsp;entryId,
+                                           byte[]&nbsp;data,
+                                           int&nbsp;offset,
+                                           int&nbsp;length)</pre>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -257,21 +333,71 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 </dl>
 </li>
 </ul>
+<a name="write-long-byte:A-int-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>write</h4>
+<pre>default&nbsp;long&nbsp;write(long&nbsp;entryId,
+                   byte[]&nbsp;data,
+                   int&nbsp;offset,
+                   int&nbsp;length)
+            throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                   <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Add entry synchronously to an open ledger.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>entryId</code> - entryId to  be added.</dd>
+<dd><code>data</code> - array of bytes to be written</dd>
+<dd><code>offset</code> - the offset of the bytes array</dd>
+<dd><code>length</code> - the length to data to write</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the same value of param <code>entryId</code>.</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="writeAsync-long-io.netty.buffer.ByteBuf-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>writeAsync</h4>
+<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;writeAsync(long&nbsp;entryId,
+                                   io.netty.buffer.ByteBuf&nbsp;data)</pre>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>entryId</code> - entryId to be added</dd>
+<dd><code>data</code> - array of bytes to be written</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an handle to the result, in case of success it will return the same value of param entryId</dd>
+</dl>
+</li>
+</ul>
 <a name="write-long-io.netty.buffer.ByteBuf-">
 <!--   -->
 </a>
 <ul class="blockListLast">
 <li class="blockList">
 <h4>write</h4>
-<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;write(long&nbsp;entryId,
-                              io.netty.buffer.ByteBuf&nbsp;data)</pre>
+<pre>default&nbsp;long&nbsp;write(long&nbsp;entryId,
+                   io.netty.buffer.ByteBuf&nbsp;data)
+            throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                   <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
 <dd><code>entryId</code> - entryId to be added</dd>
 <dd><code>data</code> - array of bytes to be written</dd>
 <dt><span class="returnLabel">Returns:</span></dt>
-<dd>an handle to the result, in case of success it will return the same value of param entryId</dd>
+<dd>the same value of param entryId</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
 </dl>
 </li>
 </ul>
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/WriteHandle.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/WriteHandle.html
index eaa3721..cc102de 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/WriteHandle.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/WriteHandle.html
@@ -18,7 +18,7 @@
     catch(err) {
     }
 //-->
-var methods = {"i0":18,"i1":18,"i2":6,"i3":18,"i4":6};
+var methods = {"i0":18,"i1":18,"i2":18,"i3":18,"i4":18,"i5":18,"i6":6,"i7":18,"i8":18,"i9":6,"i10":6};
 var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],16:["t5","Default Methods"]};
 var altColor = "altColor";
 var rowColor = "rowColor";
@@ -139,32 +139,70 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tr id="i0" class="altColor">
-<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colFirst"><code>default long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-">append</a></span>(byte[]&nbsp;data)</code>
-<div class="block">Add an entry asynchronously to an open ledger.</div>
+<div class="block">Add an entry synchronously to an open ledger.</div>
 </td>
 </tr>
 <tr id="i1" class="rowColor">
-<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colFirst"><code>default long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-int-int-">append</a></span>(byte[]&nbsp;data,
       int&nbsp;offset,
       int&nbsp;length)</code>
-<div class="block">Add an entry asynchronously to an open ledger.</div>
+<div class="block">Add an entry synchronously to an open ledger.</div>
 </td>
 </tr>
 <tr id="i2" class="altColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colFirst"><code>default long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-io.netty.buffer.ByteBuf-">append</a></span>(io.netty.buffer.ByteBuf&nbsp;data)</code>
-<div class="block">Add entry asynchronously to an open ledger.</div>
+<div class="block">Add entry synchronously to an open ledger.</div>
 </td>
 </tr>
 <tr id="i3" class="rowColor">
-<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colFirst"><code>default long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-java.nio.ByteBuffer-">append</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;data)</code>
-<div class="block">Add entry asynchronously to an open ledger.</div>
+<div class="block">Add entry synchronously to an open ledger.</div>
 </td>
 </tr>
 <tr id="i4" class="altColor">
+<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#appendAsync-byte:A-">appendAsync</a></span>(byte[]&nbsp;data)</code>
+<div class="block">Add an entry asynchronously to an open ledger.</div>
+</td>
+</tr>
+<tr id="i5" class="rowColor">
+<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#appendAsync-byte:A-int-int-">appendAsync</a></span>(byte[]&nbsp;data,
+           int&nbsp;offset,
+           int&nbsp;length)</code>
+<div class="block">Add an entry asynchronously to an open ledger.</div>
+</td>
+</tr>
+<tr id="i6" class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#appendAsync-io.netty.buffer.ByteBuf-">appendAsync</a></span>(io.netty.buffer.ByteBuf&nbsp;data)</code>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</td>
+</tr>
+<tr id="i7" class="rowColor">
+<td class="colFirst"><code>default <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#appendAsync-java.nio.ByteBuffer-">appendAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;data)</code>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</td>
+</tr>
+<tr id="i8" class="altColor">
+<td class="colFirst"><code>default void</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#close--">close</a></span>()</code>
+<div class="block">Synchronous close the write handle, any adds in flight will return errors.</div>
+</td>
+</tr>
+<tr id="i9" class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
+<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#closeAsync--">closeAsync</a></span>()</code>
+<div class="block">Asynchronous close the write handle, any adds in flight will return errors.</div>
+</td>
+</tr>
+<tr id="i10" class="altColor">
 <td class="colFirst"><code>long</code></td>
 <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#getLastAddPushed--">getLastAddPushed</a></span>()</code>
 <div class="block">Get the entry id of the last entry that has been enqueued for addition (but
@@ -177,14 +215,14 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html" title="interface in org.apache.bookkeeper.client.api">ReadHandle</a></h3>
-<code><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLastAddConfirmed--">getLastAddConfirmed</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLength--">getLength</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#isClosed--">isClosed</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHand [...]
+<code><a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLastAddConfirmed--">getLastAddConfirmed</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#getLength--">getLength</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#isClosed--">isClosed</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a>, <a href="../../../../../org/apache/bookkeeper/client/api/ReadHand [...]
 </ul>
 <ul class="blockList">
 <li class="blockList"><a name="methods.inherited.from.class.org.apache.bookkeeper.client.api.Handle">
 <!--   -->
 </a>
 <h3>Methods inherited from interface&nbsp;org.apache.bookkeeper.client.api.<a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></h3>
-<code><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#asyncClose--">asyncClose</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getId--">getId</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getLedgerMetadata--">getLedgerMetadata</a></code></li>
+<code><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getId--">getId</a>, <a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#getLedgerMetadata--">getLedgerMetadata</a></code></li>
 </ul>
 </li>
 </ul>
@@ -200,13 +238,13 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 <!--   -->
 </a>
 <h3>Method Detail</h3>
-<a name="append-io.netty.buffer.ByteBuf-">
+<a name="appendAsync-io.netty.buffer.ByteBuf-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
-<h4>append</h4>
-<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;append(io.netty.buffer.ByteBuf&nbsp;data)</pre>
+<h4>appendAsync</h4>
+<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;appendAsync(io.netty.buffer.ByteBuf&nbsp;data)</pre>
 <div class="block">Add entry asynchronously to an open ledger.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -217,13 +255,35 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 </dl>
 </li>
 </ul>
-<a name="append-java.nio.ByteBuffer-">
+<a name="append-io.netty.buffer.ByteBuf-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>append</h4>
-<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;append(<a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">B [...]
+<pre>default&nbsp;long&nbsp;append(io.netty.buffer.ByteBuf&nbsp;data)
+             throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                    <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Add entry synchronously to an open ledger.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>data</code> - a bytebuf to be written. The bytebuf's reference count will be decremented by 1 after the
+             call completes.</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the id of the newly appended entry</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="appendAsync-java.nio.ByteBuffer-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>appendAsync</h4>
+<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;appendAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.n [...]
 <div class="block">Add entry asynchronously to an open ledger.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -233,13 +293,34 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 </dl>
 </li>
 </ul>
-<a name="append-byte:A-">
+<a name="append-java.nio.ByteBuffer-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>append</h4>
-<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;append(byte[]&nbsp;data)</pre>
+<pre>default&nbsp;long&nbsp;append(<a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;data)
+             throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                    <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Add entry synchronously to an open ledger.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>data</code> - array of bytes to be written</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the id of the newly appended entry</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="appendAsync-byte:A-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>appendAsync</h4>
+<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;appendAsync(byte[]&nbsp;data)</pre>
 <div class="block">Add an entry asynchronously to an open ledger.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -250,15 +331,36 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 </dl>
 </li>
 </ul>
-<a name="append-byte:A-int-int-">
+<a name="append-byte:A-">
 <!--   -->
 </a>
 <ul class="blockList">
 <li class="blockList">
 <h4>append</h4>
-<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;append(byte[]&nbsp;data,
-                                       int&nbsp;offset,
-                                       int&nbsp;length)</pre>
+<pre>default&nbsp;long&nbsp;append(byte[]&nbsp;data)
+             throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                    <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Add an entry synchronously to an open ledger.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>data</code> - array of bytes to be written</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the entry id of this newly appended entry</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
+<a name="appendAsync-byte:A-int-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>appendAsync</h4>
+<pre>default&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;appendAsync(byte[]&nbsp;data,
+                                            int&nbsp;offset,
+                                            int&nbsp;length)</pre>
 <div class="block">Add an entry asynchronously to an open ledger.</div>
 <dl>
 <dt><span class="paramLabel">Parameters:</span></dt>
@@ -271,10 +373,35 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 </dl>
 </li>
 </ul>
+<a name="append-byte:A-int-int-">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>append</h4>
+<pre>default&nbsp;long&nbsp;append(byte[]&nbsp;data,
+                    int&nbsp;offset,
+                    int&nbsp;length)
+             throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                    <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Add an entry synchronously to an open ledger.</div>
+<dl>
+<dt><span class="paramLabel">Parameters:</span></dt>
+<dd><code>data</code> - array of bytes to be written</dd>
+<dd><code>offset</code> - the offset in the bytes array</dd>
+<dd><code>length</code> - the length of the bytes to be appended</dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>the entry id of this newly appended entry</dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+</dl>
+</li>
+</ul>
 <a name="getLastAddPushed--">
 <!--   -->
 </a>
-<ul class="blockListLast">
+<ul class="blockList">
 <li class="blockList">
 <h4>getLastAddPushed</h4>
 <pre>long&nbsp;getLastAddPushed()</pre>
@@ -286,6 +413,53 @@ extends <a href="../../../../../org/apache/bookkeeper/client/api/ReadHandle.html
 </dl>
 </li>
 </ul>
+<a name="closeAsync--">
+<!--   -->
+</a>
+<ul class="blockList">
+<li class="blockList">
+<h4>closeAsync</h4>
+<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;closeAsync()</pre>
+<div class="block">Asynchronous close the write handle, any adds in flight will return errors.
+
+ <p>Closing a ledger will ensure that all clients agree on what the last
+ entry of the ledger is. Once the ledger has been closed, all reads from the
+ ledger will return the same set of entries.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#closeAsync--">closeAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></code></dd>
+<dt><span class="returnLabel">Returns:</span></dt>
+<dd>an handle to access the result of the operation</dd>
+</dl>
+</li>
+</ul>
+<a name="close--">
+<!--   -->
+</a>
+<ul class="blockListLast">
+<li class="blockList">
+<h4>close</h4>
+<pre>default&nbsp;void&nbsp;close()
+            throws <a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a>,
+                   <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></pre>
+<div class="block">Synchronous close the write handle, any adds in flight will return errors.
+
+ <p>Closing a ledger will ensure that all clients agree on what the last
+ entry of the ledger is. Once the ledger has been closed, all reads from the
+ ledger will return the same set of entries.</div>
+<dl>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
+<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html" title="interface in org.apache.bookkeeper.client.api">Handle</a></code></dd>
+<dt><span class="throwsLabel">Throws:</span></dt>
+<dd><code><a href="../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></code></dd>
+<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/InterruptedException.html?is-external=true" title="class or interface in java.lang">InterruptedException</a></code></dd>
+<dt><span class="seeLabel">See Also:</span></dt>
+<dd><a href="../../../../../org/apache/bookkeeper/client/api/Handle.html#closeAsync--"><code>Handle.closeAsync()</code></a></dd>
+</dl>
+</li>
+</ul>
 </li>
 </ul>
 </li>
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/BKException.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/BKException.html
index dd6dd7c..a948930 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/BKException.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/BKException.html
@@ -327,6 +327,19 @@
 <!--   -->
 </a>
 <h3>Uses of <a href="../../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a> in <a href="../../../../../../org/apache/bookkeeper/client/api/package-summary.html">org.apache.bookkeeper.client.api</a></h3>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing fields, and an explanation">
+<caption><span>Fields in <a href="../../../../../../org/apache/bookkeeper/client/api/package-summary.html">org.apache.bookkeeper.client.api</a> with type parameters of type <a href="../../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Field and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code>(package private) static <a href="http://docs.oracle.com/javase/8/docs/api/java/util/function/Function.html?is-external=true" title="class or interface in java.util.function">Function</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>,<a href="../../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api" [...]
+<td class="colLast"><span class="typeNameLabel">BKException.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/BKException.html#HANDLER">HANDLER</a></span></code>&nbsp;</td>
+</tr>
+</tbody>
+</table>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
 <caption><span>Methods in <a href="../../../../../../org/apache/bookkeeper/client/api/package-summary.html">org.apache.bookkeeper.client.api</a> that throw <a href="../../../../../../org/apache/bookkeeper/client/api/BKException.html" title="class in org.apache.bookkeeper.client.api">BKException</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
@@ -335,6 +348,32 @@
 </tr>
 <tbody>
 <tr class="altColor">
+<td class="colFirst"><code>default long</code></td>
+<td class="colLast"><span class="typeNameLabel">WriteHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-">append</a></span>(byte[]&nbsp;data)</code>
+<div class="block">Add an entry synchronously to an open ledger.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>default long</code></td>
+<td class="colLast"><span class="typeNameLabel">WriteHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-byte:A-int-int-">append</a></span>(byte[]&nbsp;data,
+      int&nbsp;offset,
+      int&nbsp;length)</code>
+<div class="block">Add an entry synchronously to an open ledger.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>default long</code></td>
+<td class="colLast"><span class="typeNameLabel">WriteHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-io.netty.buffer.ByteBuf-">append</a></span>(io.netty.buffer.ByteBuf&nbsp;data)</code>
+<div class="block">Add entry synchronously to an open ledger.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>default long</code></td>
+<td class="colLast"><span class="typeNameLabel">WriteHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#append-java.nio.ByteBuffer-">append</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;data)</code>
+<div class="block">Add entry synchronously to an open ledger.</div>
+</td>
+</tr>
+<tr class="altColor">
 <td class="colFirst"><code><a href="../../../../../../org/apache/bookkeeper/client/api/BookKeeper.html" title="interface in org.apache.bookkeeper.client.api">BookKeeper</a></code></td>
 <td class="colLast"><span class="typeNameLabel">BookKeeperBuilder.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/BookKeeperBuilder.html#build--">build</a></span>()</code>
 <div class="block">Start and initialize a new BookKeeper client.</div>
@@ -348,8 +387,79 @@
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code>default void</code></td>
+<td class="colLast"><span class="typeNameLabel">WriteHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/WriteHandle.html#close--">close</a></span>()</code>
+<div class="block">Synchronous close the write handle, any adds in flight will return errors.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>default void</code></td>
 <td class="colLast"><span class="typeNameLabel">Handle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/Handle.html#close--">close</a></span>()</code>
-<div class="block">Close this ledger synchronously.</div>
+<div class="block">Close this handle synchronously.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReadHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a></span>(long&nbsp;firstEntry,
+    long&nbsp;lastEntry)</code>
+<div class="block">Read a sequence of entries synchronously.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>default long</code></td>
+<td class="colLast"><span class="typeNameLabel">ReadHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmed--">readLastAddConfirmed</a></span>()</code>
+<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReadHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-">readLastAddConfirmedAndEntry</a></span>(long&nbsp;entryId,
+                            long&nbsp;timeOutInMillis,
+                            boolean&nbsp;parallel)</code>
+<div class="block">Asynchronous read specific entry and the latest last add confirmed.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a></code></td>
+<td class="colLast"><span class="typeNameLabel">ReadHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmed-long-long-">readUnconfirmed</a></span>(long&nbsp;firstEntry,
+               long&nbsp;lastEntry)</code>
+<div class="block">Read a sequence of entries synchronously.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>default long</code></td>
+<td class="colLast"><span class="typeNameLabel">ReadHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#tryReadLastAddConfirmed--">tryReadLastAddConfirmed</a></span>()</code>
+<div class="block">Obtains asynchronously the last confirmed write from a quorum of bookies
+ but it doesn't wait all the responses from the quorum.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>default long</code></td>
+<td class="colLast"><span class="typeNameLabel">WriteAdvHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-byte:A-">write</a></span>(long&nbsp;entryId,
+     byte[]&nbsp;data)</code>
+<div class="block">Add entry synchronously to an open ledger.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>default long</code></td>
+<td class="colLast"><span class="typeNameLabel">WriteAdvHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-byte:A-int-int-">write</a></span>(long&nbsp;entryId,
+     byte[]&nbsp;data,
+     int&nbsp;offset,
+     int&nbsp;length)</code>
+<div class="block">Add entry synchronously to an open ledger.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code>default long</code></td>
+<td class="colLast"><span class="typeNameLabel">WriteAdvHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-io.netty.buffer.ByteBuf-">write</a></span>(long&nbsp;entryId,
+     io.netty.buffer.ByteBuf&nbsp;data)</code>
+<div class="block">Add entry asynchronously to an open ledger.</div>
+</td>
+</tr>
+<tr class="altColor">
+<td class="colFirst"><code>default long</code></td>
+<td class="colLast"><span class="typeNameLabel">WriteAdvHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/WriteAdvHandle.html#write-long-java.nio.ByteBuffer-">write</a></span>(long&nbsp;entryId,
+     <a href="http://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a>&nbsp;data)</code>
+<div class="block">Add entry synchronously to an open ledger.</div>
 </td>
 </tr>
 </tbody>
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/LastConfirmedAndEntry.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/LastConfirmedAndEntry.html
index 0636b85..ef2b662 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/LastConfirmedAndEntry.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/LastConfirmedAndEntry.html
@@ -118,9 +118,9 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">LedgerHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/LedgerHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-">readLastAddConfirmedAndEntry</a></span>(long&nbsp;entryId,
-                            long&nbsp;timeOutInMillis,
-                            boolean&nbsp;parallel)</code>
+<td class="colLast"><span class="typeNameLabel">LedgerHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/LedgerHandle.html#readLastAddConfirmedAndEntryAsync-long-long-boolean-">readLastAddConfirmedAndEntryAsync</a></span>(long&nbsp;entryId,
+                                 long&nbsp;timeOutInMillis,
+                                 boolean&nbsp;parallel)</code>
 <div class="block">Asynchronous read specific entry and the latest last add confirmed.</div>
 </td>
 </tr>
@@ -132,14 +132,14 @@
 </a>
 <h3>Uses of <a href="../../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a> in <a href="../../../../../../org/apache/bookkeeper/client/api/package-summary.html">org.apache.bookkeeper.client.api</a></h3>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
-<caption><span>Methods in <a href="../../../../../../org/apache/bookkeeper/client/api/package-summary.html">org.apache.bookkeeper.client.api</a> that return types with arguments of type <a href="../../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Methods in <a href="../../../../../../org/apache/bookkeeper/client/api/package-summary.html">org.apache.bookkeeper.client.api</a> that return <a href="../../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&gt;</code></td>
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReadHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntry-long-long-boolean-">readLastAddConfirmedAndEntry</a></span>(long&nbsp;entryId,
                             long&nbsp;timeOutInMillis,
                             boolean&nbsp;parallel)</code>
@@ -148,6 +148,23 @@
 </tr>
 </tbody>
 </table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../../org/apache/bookkeeper/client/api/package-summary.html">org.apache.bookkeeper.client.api</a> that return types with arguments of type <a href="../../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/bookkeeper/client/api/LastConfirmedAndEntry.html" title="interface in org.apache.bookkeeper.client.api">LastConfirmedAndEntry</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ReadHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readLastAddConfirmedAndEntryAsync-long-long-boolean-">readLastAddConfirmedAndEntryAsync</a></span>(long&nbsp;entryId,
+                                 long&nbsp;timeOutInMillis,
+                                 boolean&nbsp;parallel)</code>
+<div class="block">Asynchronous read specific entry and the latest last add confirmed.</div>
+</td>
+</tr>
+</tbody>
+</table>
 </li>
 <li class="blockList"><a name="org.apache.bookkeeper.client.impl">
 <!--   -->
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/LedgerEntries.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/LedgerEntries.html
index 84a89c1..6cb2bb2 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/LedgerEntries.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/api/class-use/LedgerEntries.html
@@ -122,8 +122,8 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">LedgerHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/LedgerHandle.html#read-long-long-">read</a></span>(long&nbsp;firstEntry,
-    long&nbsp;lastEntry)</code>
+<td class="colLast"><span class="typeNameLabel">LedgerHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/LedgerHandle.html#readAsync-long-long-">readAsync</a></span>(long&nbsp;firstEntry,
+         long&nbsp;lastEntry)</code>
 <div class="block">Read a sequence of entries asynchronously.</div>
 </td>
 </tr>
@@ -135,8 +135,8 @@
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
-<td class="colLast"><span class="typeNameLabel">LedgerHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/LedgerHandle.html#readUnconfirmed-long-long-">readUnconfirmed</a></span>(long&nbsp;firstEntry,
-               long&nbsp;lastEntry)</code>
+<td class="colLast"><span class="typeNameLabel">LedgerHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/LedgerHandle.html#readUnconfirmedAsync-long-long-">readUnconfirmedAsync</a></span>(long&nbsp;firstEntry,
+                    long&nbsp;lastEntry)</code>
 <div class="block">Read a sequence of entries asynchronously, allowing to read after the LastAddConfirmed range.</div>
 </td>
 </tr>
@@ -148,23 +148,46 @@
 </a>
 <h3>Uses of <a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a> in <a href="../../../../../../org/apache/bookkeeper/client/api/package-summary.html">org.apache.bookkeeper.client.api</a></h3>
 <table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
-<caption><span>Methods in <a href="../../../../../../org/apache/bookkeeper/client/api/package-summary.html">org.apache.bookkeeper.client.api</a> that return types with arguments of type <a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a></span><span class="tabEnd">&nbsp;</span></caption>
+<caption><span>Methods in <a href="../../../../../../org/apache/bookkeeper/client/api/package-summary.html">org.apache.bookkeeper.client.api</a> that return <a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a></span><span class="tabEnd">&nbsp;</span></caption>
 <tr>
 <th class="colFirst" scope="col">Modifier and Type</th>
 <th class="colLast" scope="col">Method and Description</th>
 </tr>
 <tbody>
 <tr class="altColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReadHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#read-long-long-">read</a></span>(long&nbsp;firstEntry,
     long&nbsp;lastEntry)</code>
-<div class="block">Read a sequence of entries asynchronously.</div>
+<div class="block">Read a sequence of entries synchronously.</div>
 </td>
 </tr>
 <tr class="rowColor">
-<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
+<td class="colFirst"><code>default <a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a></code></td>
 <td class="colLast"><span class="typeNameLabel">ReadHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmed-long-long-">readUnconfirmed</a></span>(long&nbsp;firstEntry,
                long&nbsp;lastEntry)</code>
+<div class="block">Read a sequence of entries synchronously.</div>
+</td>
+</tr>
+</tbody>
+</table>
+<table class="useSummary" border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
+<caption><span>Methods in <a href="../../../../../../org/apache/bookkeeper/client/api/package-summary.html">org.apache.bookkeeper.client.api</a> that return types with arguments of type <a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a></span><span class="tabEnd">&nbsp;</span></caption>
+<tr>
+<th class="colFirst" scope="col">Modifier and Type</th>
+<th class="colLast" scope="col">Method and Description</th>
+</tr>
+<tbody>
+<tr class="altColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ReadHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readAsync-long-long-">readAsync</a></span>(long&nbsp;firstEntry,
+         long&nbsp;lastEntry)</code>
+<div class="block">Read a sequence of entries asynchronously.</div>
+</td>
+</tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/CompletableFuture.html?is-external=true" title="class or interface in java.util.concurrent">CompletableFuture</a>&lt;<a href="../../../../../../org/apache/bookkeeper/client/api/LedgerEntries.html" title="interface in org.apache.bookkeeper.client.api">LedgerEntries</a>&gt;</code></td>
+<td class="colLast"><span class="typeNameLabel">ReadHandle.</span><code><span class="memberNameLink"><a href="../../../../../../org/apache/bookkeeper/client/api/ReadHandle.html#readUnconfirmedAsync-long-long-">readUnconfirmedAsync</a></span>(long&nbsp;firstEntry,
+                    long&nbsp;lastEntry)</code>
 <div class="block">Read a sequence of entries asynchronously, allowing to read after the LastAddConfirmed range.</div>
 </td>
 </tr>
diff --git a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/class-use/BKException.html b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/class-use/BKException.html
index ae49af8..992402f 100644
--- a/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/class-use/BKException.html
+++ b/content/docs/latest/api/javadoc/org/apache/bookkeeper/client/class-use/BKException.html
@@ -395,7 +395,7 @@
 <tr class="altColor">
 <td class="colFirst"><code>void</code></td>
 <td class="colLast"><span class="typeNameLabel">LedgerHandle.</span><code><span class="memberNameLink"><a href="../../../../../org/apache/bookkeeper/client/LedgerHandle.html#close--">close</a></span>()</code>
-<div class="block">Close this ledger synchronously.</div>
+<div class="block">Synchronous close the write handle, any adds in flight will return errors.</div>
 </td>
 </tr>
 <tr class="rowColor">

-- 
To stop receiving notification emails like this one, please contact
git-site-role@apache.org.