You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bookkeeper.apache.org by eo...@apache.org on 2020/10/20 09:17:18 UTC

[bookkeeper] branch asf-site updated: Updated site

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

eolivelli 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 4eb6065  Updated site
4eb6065 is described below

commit 4eb60653b1418b40daa2886eaae8193250703ee7
Author: Enrico Olivelli <eo...@apache.org>
AuthorDate: Tue Oct 20 11:09:22 2020 +0200

    Updated site
---
 content/bps/BP-41-bookieid/index.html              | 565 +++++++++++++++++++++
 content/bps/BP-42-new-api-list-ledgers/index.html  | 477 +++++++++++++++++
 content/community/bookkeeper_proposals/index.html  |   6 +-
 content/css/style.css                              |  14 +-
 content/docs/4.10.0/api/ledger-api/index.html      |   2 +-
 .../4.10.0/getting-started/concepts/index.html     |   2 +-
 content/docs/4.10.0/reference/cli/index.html       |  57 +--
 content/docs/4.11.0/api/ledger-api/index.html      |   2 +-
 .../4.11.0/getting-started/concepts/index.html     |   2 +-
 content/docs/4.11.0/reference/cli/index.html       |  57 +--
 content/docs/4.11.1/api/ledger-api/index.html      |   2 +-
 .../4.11.1/getting-started/concepts/index.html     |   2 +-
 content/docs/4.11.1/reference/cli/index.html       |  57 +--
 .../docs/4.5.0/getting-started/concepts/index.html |   2 +-
 content/docs/4.5.0/reference/cli/index.html        |  57 +--
 .../docs/4.5.1/getting-started/concepts/index.html |   2 +-
 content/docs/4.5.1/reference/cli/index.html        |  57 +--
 .../docs/4.6.0/getting-started/concepts/index.html |   2 +-
 content/docs/4.6.0/reference/cli/index.html        |  57 +--
 .../docs/4.6.1/getting-started/concepts/index.html |   2 +-
 content/docs/4.6.1/reference/cli/index.html        |  57 +--
 .../docs/4.6.2/getting-started/concepts/index.html |   2 +-
 content/docs/4.6.2/reference/cli/index.html        |  57 +--
 .../docs/4.7.0/getting-started/concepts/index.html |   2 +-
 content/docs/4.7.0/reference/cli/index.html        |  57 +--
 .../docs/4.7.1/getting-started/concepts/index.html |   2 +-
 content/docs/4.7.1/reference/cli/index.html        |  57 +--
 .../docs/4.7.2/getting-started/concepts/index.html |   2 +-
 content/docs/4.7.2/reference/cli/index.html        |  57 +--
 .../docs/4.7.3/getting-started/concepts/index.html |   2 +-
 content/docs/4.7.3/reference/cli/index.html        |  57 +--
 content/docs/4.8.0/api/ledger-api/index.html       |   2 +-
 .../docs/4.8.0/getting-started/concepts/index.html |   2 +-
 content/docs/4.8.0/reference/cli/index.html        |  57 +--
 content/docs/4.8.1/api/ledger-api/index.html       |   2 +-
 .../docs/4.8.1/getting-started/concepts/index.html |   2 +-
 content/docs/4.8.1/reference/cli/index.html        |  57 +--
 content/docs/4.8.2/api/ledger-api/index.html       |   2 +-
 .../docs/4.8.2/getting-started/concepts/index.html |   2 +-
 content/docs/4.8.2/reference/cli/index.html        |  57 +--
 content/docs/4.9.0/api/ledger-api/index.html       |   2 +-
 .../docs/4.9.0/getting-started/concepts/index.html |   2 +-
 content/docs/4.9.0/reference/cli/index.html        |  57 +--
 content/docs/4.9.1/api/ledger-api/index.html       |   2 +-
 .../docs/4.9.1/getting-started/concepts/index.html |   2 +-
 content/docs/4.9.1/reference/cli/index.html        |  57 +--
 content/docs/4.9.2/api/ledger-api/index.html       |   2 +-
 .../docs/4.9.2/getting-started/concepts/index.html |   2 +-
 content/docs/4.9.2/reference/cli/index.html        |  57 +--
 content/docs/latest/api/ledger-api/index.html      |   2 +-
 .../latest/getting-started/concepts/index.html     |   2 +-
 content/docs/latest/reference/cli/index.html       |  57 +--
 52 files changed, 1520 insertions(+), 683 deletions(-)

diff --git a/content/bps/BP-41-bookieid/index.html b/content/bps/BP-41-bookieid/index.html
new file mode 100644
index 0000000..bbaea58
--- /dev/null
+++ b/content/bps/BP-41-bookieid/index.html
@@ -0,0 +1,565 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Apache BookKeeper&trade; - BP-41: Separate BookieId from Bookie Network Address</title>
+
+<meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+
+<link rel="stylesheet" href="/css/normalize.css">
+<link rel="stylesheet" href="/css/tippy.css">
+<link rel="stylesheet" href="/css/style.css">
+
+<link rel="shortcut icon" href="/img/favicon.ico">
+
+<script src="/js/tippy.min.js"></script>
+
+<script type="text/javascript">
+  var shiftWindow = function() { scrollBy(0, -25); };
+  window.addEventListener("hashchange", shiftWindow);
+  window.addEventListener("pageshow", shiftWindow);
+  function load() { if (window.location.hash) shiftWindow(); }
+</script>
+  </head>
+  <body class="body">
+    <main class="main">
+      
+<nav class="navbar bk-topnav">
+  <div class="navbar-brand">
+    <a class="navbar-item bk-brand" href="/">
+      Apache BookKeeper&trade;
+    </a>
+
+    <div class="navbar-burger burger" data-target="bkNav">
+      <span></span>
+      <span></span>
+      <span></span>
+    </div>
+  </div>
+
+  <div id="bkNav" class="navbar-menu">
+    <div class="navbar-start">
+      <div class="navbar-item has-dropdown is-hoverable">
+        <a class="navbar-link">Documentation</a>
+        <div class="navbar-dropdown is-boxed">
+          <a class="navbar-item" href="/docs/latest/overview/overview">
+            Version 4.12.0-SNAPSHOT
+            <span class="tag is-warning">Development</span>
+          </a>
+          <a class="navbar-item" href="/docs/latest/api/javadoc">
+            <span class="icon bk-javadoc-icon">
+              <img src="/img/java-icon.svg">
+            </span>
+            Javadoc
+          </a>
+          <hr class="dropdown-divider">
+          
+          <a class="navbar-item" href="/docs/4.11.0/overview/overview">
+            Release 4.11.0
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.10.0/overview/overview">
+            Release 4.10.0
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.9.2/overview/overview">
+            Release 4.9.2
+            
+              <span class="tag is-success">Stable</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.9.1/overview/overview">
+            Release 4.9.1
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.9.0/overview/overview">
+            Release 4.9.0
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.8.2/overview/overview">
+            Release 4.8.2
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.8.1/overview/overview">
+            Release 4.8.1
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.8.0/overview/overview">
+            Release 4.8.0
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.7.3/overview/overview">
+            Release 4.7.3
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.7.2/overview/overview">
+            Release 4.7.2
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.7.1/overview/overview">
+            Release 4.7.1
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.7.0/overview/overview">
+            Release 4.7.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.6.2/overview/overview">
+            Release 4.6.2
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.6.1/overview/overview">
+            Release 4.6.1
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.6.0/overview/overview">
+            Release 4.6.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.5.1/overview/overview">
+            Release 4.5.1
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.5.0/overview/overview">
+            Release 4.5.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          
+          <a class="navbar-item" href="/archives/docs/r4.4.0">
+            Release 4.4.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.3.2">
+            Release 4.3.2
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.3.1">
+            Release 4.3.1
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.3.0">
+            Release 4.3.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.2.4">
+            Release 4.2.4
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.2.3">
+            Release 4.2.3
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.2.2">
+            Release 4.2.2
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.2.1">
+            Release 4.2.1
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.2.0">
+            Release 4.2.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.1.0">
+            Release 4.1.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.0.0">
+            Release 4.0.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+        </div>
+      </div>
+
+      <div class="navbar-item has-dropdown is-hoverable">
+        <a class="navbar-link">Community</a>
+        <div class="navbar-dropdown is-boxed">
+          <a class="navbar-item" href="/community/mailing-lists">Mailing lists</a>
+          <a class="navbar-item" href="/community/slack">Slack</a>
+          <a class="navbar-item" href="https://github.com/apache/bookkeeper/issues">Github Issues</a>
+          <a class="navbar-item" href="/community/releases">Release Management</a>
+          <a class="navbar-item" href="/community/meeting">Community Meetings</a>
+          <hr class="dropdown-divider">
+          <a class="navbar-item" href="/community/contributing">Contribution Guide</a>
+          <a class="navbar-item" href="/community/coding_guide">Coding Guide</a>
+          <a class="navbar-item" href="/community/testing">Testing Guide</a>
+          <a class="navbar-item" href="/community/issue-report">Issue Report Guide</a>
+          <a class="navbar-item" href="/community/release_guide">Release Guide</a>
+          <hr class="dropdown-divider">
+          <a class="navbar-item" href="/community/presentations">Presentations</a>
+          <a class="navbar-item" href="/community/bookkeeper_proposals">BookKeeper Proposals</a>
+        </div>
+      </div>
+
+      <div class="navbar-item has-dropdown is-hoverable">
+        <a class="navbar-link">Project</a>
+        <div class="navbar-dropdown is-boxed">
+          <a class="navbar-item" href="/project/who">Who are we?</a>
+          <a class="navbar-item" href="/project/bylaws">Bylaws</a>
+          <a class="navbar-item" href="http://www.apache.org/licenses/">License</a>
+          <hr class="dropdown-divider">
+          <a class="navbar-item" href="/project/privacy">Privacy policy</a>
+          <a class="navbar-item" href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a>
+          <a class="navbar-item" href="http://www.apache.org/foundation/thanks.html">Thanks</a>
+        </div>
+      </div>
+    </div>
+
+    <div class="navbar-end">
+      <div class="navbar-item">
+        <div class="field is-grouped">
+          <p class="control">
+            <a class="button bk-twitter" href="https://twitter.com/asfbookkeeper">
+              <span class="icon">
+                <i class="fa fa-twitter"></i>
+              </span>
+              <span>Twitter</span>
+            </a>
+          </p>
+          <p class="control">
+            <a class="button" href="https://github.com/apache/bookkeeper">
+              <span class="icon">
+                <i class="fa fa-github"></i>
+              </span>
+              <span>GitHub</span>
+            </a>
+          </p>
+          <p class="control">
+            <a class="button is-primary" href="/releases">
+              <span class="icon">
+                <i class="fa fa-download"></i>
+              </span>
+              <span>Download</span>
+            </a>
+          </p>
+        </div>
+      </div>
+    </div>
+  </div>
+</nav>
+
+
+      <div class="bk-community-container">
+  <div class="columns">
+    <div class="column is-12">
+      <header class="docs-title">
+        <nav class="level">
+          <div class="level-left">
+            <div class="level-item">
+              <h1 class="title">BP-41: Separate BookieId from Bookie Network Address</h1>
+            </div>
+          </div>
+          
+        </nav>
+
+        
+      </header>
+
+      <hr />
+
+      <div class="content is-medium">
+        <section class="bk-community-content">
+          <h3 id="motivation">Motivation</h3>
+
+<p>We want to separate the concepts of <strong>BookieId</strong> from <strong>BookieSocketAddress</strong>.</p>
+
+<p>Currently (up to 4.11.x) there is a too strict coupling from the ID of a Bookie (<strong>BookieId</strong>) and its network location (<strong>BookieSocketAddress</strong>).</p>
+
+<p>The <strong>LedgerMetadata</strong> structure contains the location of the entries of a ledger, and it stores BookieSocketAddresses (simply a hostname:port or ip:port pair).
+The client uses this information to connect to the bookies and retrieve ledger data.</p>
+
+<p>So <em>the identity of a bookie is bound to the network address</em> of the primary endpoint of the Bookie: the ‘<strong>bookie-rpc</strong>’ endpoint in terms of <a href="../BP-38-bookie-endpoint-discovery/">BP-38</a></p>
+
+<p>Limits of current version, because:</p>
+
+<ul>
+  <li>You cannot easily change the network address of a Bookie: a manual intervention is needed.</li>
+  <li>The Bookie cannot have a <strong>dynamic network address</strong> or DNS name.</li>
+  <li>You cannot use a custom Id for the bookie, something that is <strong>meaningful</strong> in the context of the deployment of the bookie.</li>
+  <li>In case of future implementations that will open <strong>multiple endpoints</strong> on the bookie it is not possible to decide which endpoint should be used as BookieId.</li>
+</ul>
+
+<p>This proposal addresses these problems by proposing to separate the concept of <strong>BookieId</strong> from <strong>BookieSocketAddress</strong>.</p>
+
+<p>We will have to introduce a little break in the Client API, in order to switch from using BookieSocketAddress to a more opaque BookieId.</p>
+
+<p>Fortunately we will be able to keep compatibility with old clients and old bookies are far as the Bookie continues to use a BookieId that looks like a BookieSocketAddress.
+See the paragraphs below for the details.</p>
+
+<h3 id="public-interfaces">Public Interfaces</h3>
+
+<p>We are introducing a new class BookieId that is simply a wrapper for a String.</p>
+
+<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>final class BookieId {
+    private final String bookieId;
+    public String toString() {
+         return bookieId;
+    }
+    public static BookieId parse(String bookieId) {
+         // validation omitted...
+         return new BookieId(bookieId);
+    }
+}
+</code></pre></div></div>
+
+<p>Having a class instead of a simple String is better because it provides a strongly typed API.</p>
+
+<p>The LedgerMetadata class will be changed to use BookieId instead of BookieSocketAddress.
+This will break source and binary compatibility for Java clients, applications that use LedgerMetadata (usually for debug or for tools) will have to be recompiled.</p>
+
+<p>The serialized representation of a BookieSocketAddress, both for LedgerMetadata and Bookie Registration, is a simple String on ZooKeeper: this change is not about the format of data stored on Metadata Service.</p>
+
+<p>It is simply a pure refactor of Java interfaces.</p>
+
+<p>We have to introduce an internal API, <strong>BookieAddressResolver</strong>, that maps a <em>BookieId</em> to a <em>BookieSocketAddress</em>: the the client connectes to a Bookie it looks up the <strong>current network address</strong> using BookieAddressResolver.</p>
+
+<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>interface BookieAddressResolver {
+    BookieSocketAddress resolve(BookieId id);
+}
+</code></pre></div></div>
+
+<p>Initially it is not expected that the user provides a custom implementation of BookieAddressResolver.</p>
+
+<p>It is expected that the implementation of this interface coordinates with the BookieWatcher and the RegistrationDriver in order to:</p>
+<ul>
+  <li>map BookieId to BookieSocketAddress using <code class="highlighter-rouge">getBookieServiceInfo(BookieId id)</code> API</li>
+  <li>cache efficiently this mapping in order to do not have a significant impact on the hot paths (reads and writes), and to save resources on the Metadata Service</li>
+</ul>
+
+<p>We provide an utility method BookieSocketAddress#toBookieId that helps particularly in test cases, this method simply returns a BookieId
+built by the serialized representation of the BookieSocketAddress (hostname:port or ip:port)</p>
+
+<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>final class BookieSocketAddress {
+    ....
+    BookieId toBookieId() {
+        return BookieId.parse(this.toString());
+    }
+}
+</code></pre></div></div>
+
+<p>The RegistrationClient and RegistrationManager interfaces will be refactored to use BookiId instead of String and BookieSocketAddress.</p>
+
+<p>The Bookie itself will expose an API to return the current BookieSocketAddress and current BookieId, this is useful for tests and for the RegistrationManager.</p>
+
+<p>The EnsemblePlacementPolicy and the BookieWatcher will deal with BookieIds and not with BookieSocketAddresses.</p>
+
+<p>The implementations of EnsemblePlacementPolicy that are aware of the network location of the Bookies will need to have access to the 
+BookieAddressResolver, in order to map a BookieId to the BookieSocketAddress and the BookieSocketAddress to the network location.</p>
+
+<h3 id="details-on-the-proposed-changes">Details on the proposed Changes</h3>
+
+<h4 id="bookieid-validation">BookieId validation</h4>
+
+<p>The BookieId is a non empty string that can contain:</p>
+<ul>
+  <li>ASCII digits and letters ([a-zA-Z9-0])</li>
+  <li>the colon character (‘:’)</li>
+  <li>the dash character (‘-‘)</li>
+  <li>the dot character (‘.’)</li>
+</ul>
+
+<h4 id="bookkeeper-client-side-changes">BookKeeper Client Side Changes</h4>
+
+<p>See the ‘Public interfaces’ section.</p>
+
+<p>On the client side code it will be clearer when we are dealing with BookieId, and basically the client API won’t deal with network addresses anymore.
+This change will be visible both on the legacy LedgerHandle API and on the new WriteHandle/ReadHandle API, basically because the new API is only a wrapper over the LedgerHandle API.</p>
+
+<p>When the BookKeeper client connects to a bookie (see <strong>PerChannelBookieClient</strong>) it uses the BookieAddressResolver interface to get the current BookieSocketAddress of the Bookie.
+The key of the Connection Pool inside the BookieClient will be BookieId and no more BookieSocketAddress.</p>
+
+<h4 id="disabling-bookieaddressresolver">Disabling BookieAddressResolver</h4>
+
+<p>Using the BookieServiceInfo abstraction needs additional accesses to the Metadata Service (usually ZooKeeper) and this comes with a cost especially during the bootstrap of the client, because you have to resolve the address of every Bookie you are going to write to or to read from.</p>
+
+<p>We add a flag to disable the BookieAddressResolver, without this feature the client will be able only to connect to Bookies with the legacy BookieId.
+In this case the BookieAddressResolver implementation will be a simple conversion from the BookieId, assuming the 4.11 format hostname:port.</p>
+
+<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>enableBookieAddressResolver=true
+</code></pre></div></div>
+<p>The <em>enableBookieAddressResolver</em> flag is used by the Client, by the Auditor and by all of the tools and it is enabled by default.</p>
+
+<h4 id="handling-the-local-bookie-node-in-ensembleplacementpolicy">Handling the Local Bookie Node in EnsemblePlacementPolicy</h4>
+<p>Unfortunately thru the codebase we used sometimes dummy BookieId that are not mapped to real Bookies, this happens in the EnsamblePlacementPolicies in which we create a BookieId for the ‘local node’ and using TCP port 0. In this case we have to implement a fallback dummy resolution that created a BookieSocketAddress without using the MetadataService</p>
+
+<h4 id="bookie-side-changes">Bookie Side Changes</h4>
+
+<p>On the Bookie we introduce <strong>a configuration option</strong> (bookieid) to set a custom bookie id. 
+If you set this option then the Bookie will advertise itself on MetadataService using the configured id, and publish the ‘bookie-rpc’ endpoint as configured by 
+the <strong>advertisedAddress</strong> configuration option and the other network related options.
+This BookieId will be present only in the configuration file and it is the key to lookup the <em>Cookie</em> on the MetadataService.
+Inadvertently changing the BookieId will prevent the Bookie to boot as it won’t find a matching Cookie.
+There is no need to store the BookieId on the cookie or persist it on the local storage (ledgers, indexes or journal directories).</p>
+
+<h4 id="auditor-and-replication-changes">Auditor and Replication Changes</h4>
+
+<p>The Auditor deals with LedgerMetadata and so it will simply work with BookieIds and not with BookieSocketAddress.
+When the Auditor needs to connect to a Bookie it will use the BookieAddressResolver to get the current address of the Bookie.</p>
+
+<h4 id="bookie-garbage-collection-changes">Bookie Garbage Collection Changes</h4>
+
+<p>The Bookie decides to reclaim space by looking into LedgerMetadata and checking that a given ledger does not exist anymore.
+It will use its own local BookieId instead of the BookieSocketAddress as expected.</p>
+
+<h4 id="tools-changes">Tools changes</h4>
+<p>All of the tools that deal with LedgerMetadata will use BookieId instead of BookieSocketAddress, in general this fact will allow to use free forn BookieIDs,
+instead of hostname:port pairs (we had validations on tools that helped the user to use always BookieIds in hostname:port form).</p>
+
+<h4 id="rest-api-changes">REST API Changes</h4>
+<p>In the REST API we will deal with BookieIds and not with BookieSocketAddresses anymore, the change will be straighforward and compatible with current API.
+When new custom BookieIDs will be used then they will appear on the REST API as well, but this will be expected by users.</p>
+
+<h3 id="compatibility-deprecation-and-migration-plan">Compatibility, Deprecation, and Migration Plan</h3>
+
+<p>The proposed change will be compatible with all existing clients and bookies as far as you still use BookieIds in the hostname:port form and to not use a custom BookieId.
+The Bookie by default will continue to use as BookieID a compatible value computed exactly as in version 4.11.
+Incompatibility will start as soon as you enable custom BookieIDs on the bookies, from that point clients and old Auditors won’t be able to deal with new bookies.
+New clients will always be able to connect and use legacy bookies.</p>
+
+<p>Custom EnsemblePlacementPolicies must be adapted to the new interfaces but the change will usually as simple as just replacing BookieSocketAdress with BookieId.
+No need to change address to rack mapping scripts, as they will still deal with raw DNS hostnames and not with BookieIds.</p>
+
+<h3 id="test-plan">Test Plan</h3>
+
+<p>New unit tests will be added to cover all of the code changes.
+No need for additional integration tests.</p>
+
+<h3 id="rejected-alternatives">Rejected Alternatives</h3>
+
+<h4 id="make-bookiesocketaddress-an-abstract-class">Make BookieSocketAddress an abstract class</h4>
+
+<p>In order to preserve most of the binary compatibility in the Java client we could still keep BookieSocketAddress class in LedgerMetadata and have some “GenericBookieSocketAddress” and “PhysicalBookieSocketAddress” implementations.
+But this way it won’t be easy to understand where we are using a “bookie id” and when we are referring to a network address.
+The BookieAddressResolver interface would be needed anyway and it should deal with pure BookieIds and BookieSocketAddress instance that are already resolved to
+a network address.</p>
+
+<h4 id="force-a-specific-format-like-uuid-to-custom-bookieid">Force a specific format (like UUID) to custom BookieId</h4>
+<p>The is no need to force the BookieId to use a fixed format, like a UUID or other form of standard ID scheme.
+Probably new IDs will include the region/availability zone information in order to simplify EnsemblePlacement policies (no more need to pass from DNS to switch mappers) and we cannot know now all of the usages of this parameter.</p>
+
+        </section>
+
+        
+      </div>
+    </div>
+  </div>
+</div>
+    </main>
+
+    <footer class="footer">
+  <div class="container">
+    <div class="content has-text-centered">
+      <p>
+        Copyright &copy; 2016 - 2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>,<br /> licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, version 2.0</a>.
+      </p>
+      <p>
+        Apache BookKeeper, BookKeeper®, Apache®, the Apache feature logo, and the Apache BookKeeper logo are either registered trademarks or trademarks of The Apache Software Foundation.
+      </p>
+    </div>
+  </div>
+</footer>
+
+  </body>
+
+  <script src="/js/app.js"></script>
+
+  
+  <!--
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+      http://www.apache.org/licenses/LICENSE-2.0
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+-->
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-104419626-1', 'auto');
+  ga('send', 'pageview');
+
+</script>
+
+  
+</html>
diff --git a/content/bps/BP-42-new-api-list-ledgers/index.html b/content/bps/BP-42-new-api-list-ledgers/index.html
new file mode 100644
index 0000000..dcbe112
--- /dev/null
+++ b/content/bps/BP-42-new-api-list-ledgers/index.html
@@ -0,0 +1,477 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Apache BookKeeper&trade; - BP-42: New Client API - list ledgers</title>
+
+<meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+
+<link rel="stylesheet" href="/css/normalize.css">
+<link rel="stylesheet" href="/css/tippy.css">
+<link rel="stylesheet" href="/css/style.css">
+
+<link rel="shortcut icon" href="/img/favicon.ico">
+
+<script src="/js/tippy.min.js"></script>
+
+<script type="text/javascript">
+  var shiftWindow = function() { scrollBy(0, -25); };
+  window.addEventListener("hashchange", shiftWindow);
+  window.addEventListener("pageshow", shiftWindow);
+  function load() { if (window.location.hash) shiftWindow(); }
+</script>
+  </head>
+  <body class="body">
+    <main class="main">
+      
+<nav class="navbar bk-topnav">
+  <div class="navbar-brand">
+    <a class="navbar-item bk-brand" href="/">
+      Apache BookKeeper&trade;
+    </a>
+
+    <div class="navbar-burger burger" data-target="bkNav">
+      <span></span>
+      <span></span>
+      <span></span>
+    </div>
+  </div>
+
+  <div id="bkNav" class="navbar-menu">
+    <div class="navbar-start">
+      <div class="navbar-item has-dropdown is-hoverable">
+        <a class="navbar-link">Documentation</a>
+        <div class="navbar-dropdown is-boxed">
+          <a class="navbar-item" href="/docs/latest/overview/overview">
+            Version 4.12.0-SNAPSHOT
+            <span class="tag is-warning">Development</span>
+          </a>
+          <a class="navbar-item" href="/docs/latest/api/javadoc">
+            <span class="icon bk-javadoc-icon">
+              <img src="/img/java-icon.svg">
+            </span>
+            Javadoc
+          </a>
+          <hr class="dropdown-divider">
+          
+          <a class="navbar-item" href="/docs/4.11.0/overview/overview">
+            Release 4.11.0
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.10.0/overview/overview">
+            Release 4.10.0
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.9.2/overview/overview">
+            Release 4.9.2
+            
+              <span class="tag is-success">Stable</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.9.1/overview/overview">
+            Release 4.9.1
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.9.0/overview/overview">
+            Release 4.9.0
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.8.2/overview/overview">
+            Release 4.8.2
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.8.1/overview/overview">
+            Release 4.8.1
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.8.0/overview/overview">
+            Release 4.8.0
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.7.3/overview/overview">
+            Release 4.7.3
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.7.2/overview/overview">
+            Release 4.7.2
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.7.1/overview/overview">
+            Release 4.7.1
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.7.0/overview/overview">
+            Release 4.7.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.6.2/overview/overview">
+            Release 4.6.2
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.6.1/overview/overview">
+            Release 4.6.1
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.6.0/overview/overview">
+            Release 4.6.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.5.1/overview/overview">
+            Release 4.5.1
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/docs/4.5.0/overview/overview">
+            Release 4.5.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          
+          <a class="navbar-item" href="/archives/docs/r4.4.0">
+            Release 4.4.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.3.2">
+            Release 4.3.2
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.3.1">
+            Release 4.3.1
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.3.0">
+            Release 4.3.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.2.4">
+            Release 4.2.4
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.2.3">
+            Release 4.2.3
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.2.2">
+            Release 4.2.2
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.2.1">
+            Release 4.2.1
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.2.0">
+            Release 4.2.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.1.0">
+            Release 4.1.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+          <a class="navbar-item" href="/archives/docs/r4.0.0">
+            Release 4.0.0
+            
+              <span class="tag is-warning">EOL</span>
+            
+          </a>
+          
+        </div>
+      </div>
+
+      <div class="navbar-item has-dropdown is-hoverable">
+        <a class="navbar-link">Community</a>
+        <div class="navbar-dropdown is-boxed">
+          <a class="navbar-item" href="/community/mailing-lists">Mailing lists</a>
+          <a class="navbar-item" href="/community/slack">Slack</a>
+          <a class="navbar-item" href="https://github.com/apache/bookkeeper/issues">Github Issues</a>
+          <a class="navbar-item" href="/community/releases">Release Management</a>
+          <a class="navbar-item" href="/community/meeting">Community Meetings</a>
+          <hr class="dropdown-divider">
+          <a class="navbar-item" href="/community/contributing">Contribution Guide</a>
+          <a class="navbar-item" href="/community/coding_guide">Coding Guide</a>
+          <a class="navbar-item" href="/community/testing">Testing Guide</a>
+          <a class="navbar-item" href="/community/issue-report">Issue Report Guide</a>
+          <a class="navbar-item" href="/community/release_guide">Release Guide</a>
+          <hr class="dropdown-divider">
+          <a class="navbar-item" href="/community/presentations">Presentations</a>
+          <a class="navbar-item" href="/community/bookkeeper_proposals">BookKeeper Proposals</a>
+        </div>
+      </div>
+
+      <div class="navbar-item has-dropdown is-hoverable">
+        <a class="navbar-link">Project</a>
+        <div class="navbar-dropdown is-boxed">
+          <a class="navbar-item" href="/project/who">Who are we?</a>
+          <a class="navbar-item" href="/project/bylaws">Bylaws</a>
+          <a class="navbar-item" href="http://www.apache.org/licenses/">License</a>
+          <hr class="dropdown-divider">
+          <a class="navbar-item" href="/project/privacy">Privacy policy</a>
+          <a class="navbar-item" href="http://www.apache.org/foundation/sponsorship.html">Sponsorship</a>
+          <a class="navbar-item" href="http://www.apache.org/foundation/thanks.html">Thanks</a>
+        </div>
+      </div>
+    </div>
+
+    <div class="navbar-end">
+      <div class="navbar-item">
+        <div class="field is-grouped">
+          <p class="control">
+            <a class="button bk-twitter" href="https://twitter.com/asfbookkeeper">
+              <span class="icon">
+                <i class="fa fa-twitter"></i>
+              </span>
+              <span>Twitter</span>
+            </a>
+          </p>
+          <p class="control">
+            <a class="button" href="https://github.com/apache/bookkeeper">
+              <span class="icon">
+                <i class="fa fa-github"></i>
+              </span>
+              <span>GitHub</span>
+            </a>
+          </p>
+          <p class="control">
+            <a class="button is-primary" href="/releases">
+              <span class="icon">
+                <i class="fa fa-download"></i>
+              </span>
+              <span>Download</span>
+            </a>
+          </p>
+        </div>
+      </div>
+    </div>
+  </div>
+</nav>
+
+
+      <div class="bk-community-container">
+  <div class="columns">
+    <div class="column is-12">
+      <header class="docs-title">
+        <nav class="level">
+          <div class="level-left">
+            <div class="level-item">
+              <h1 class="title">BP-42: New Client API - list ledgers</h1>
+            </div>
+          </div>
+          
+        </nav>
+
+        
+      </header>
+
+      <hr />
+
+      <div class="content is-medium">
+        <section class="bk-community-content">
+          <h3 id="motivation">Motivation</h3>
+
+<p>The new Client API (<code class="highlighter-rouge">org.apache.bookkeeper.client.api.BookKeeper</code>) aims to replace obsolete BookKeeper API but some features are not implemented yet, like the functionalities provided by <code class="highlighter-rouge">BookKeeperAdmin</code>. 
+For example, it does not expose a method to list available ledgers, comparable to <code class="highlighter-rouge">BookKeeperAdmin#listLedgers()</code>.</p>
+
+<h4 id="ledgers-listing">Ledgers listing</h4>
+<p>The goal here is to extend the Client API for listing ledgers. Moreover current method  <code class="highlighter-rouge">BookKeeperAdmin#listLedgers()</code> does not report errors from the metadata driver; for instance, if an IOException occurs during iterator flow, the error is not visible to the caller and the iteration is stopped (e.g. hasNext will return false). However there is no intention to change this behaviour in this proposal.</p>
+
+<h4 id="simpler-access-to-ledgermetadata">Simpler access to LedgerMetadata</h4>
+<p>The goal here is to streamline the access to <code class="highlighter-rouge">LedgerMetadata</code>, directly from BookKeeper interface.</p>
+
+<h4 id="ledger-id-inside-ledgermetadata">Ledger id inside LedgerMetadata</h4>
+<p>Currently there is no <code class="highlighter-rouge">ledgerId</code> property inside <code class="highlighter-rouge">LedgerMetadata</code> interface, this can be helpful in some contexts.</p>
+
+<h3 id="public-interfaces">Public Interfaces</h3>
+
+<p>This proposal adds new interfaces to <code class="highlighter-rouge">org.apache.bookkeeper.client.api</code> package, similar to <code class="highlighter-rouge">org.apache.bookkeeper.client.api.BookKeeper</code> methods.</p>
+
+<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>// new interface
+interface LedgersIterator {
+
+    boolean hasNext() throws IOException;
+
+    long next() throws IOException;
+}
+
+// new interface
+interface ListLedgersResult extends AutoCloseable {
+
+    LedgersIterator iterator();
+
+    Iterable&lt;Long&gt; toIterable();
+}
+
+// new interface
+interface ListLedgersResultBuilder extends OpBuilder&lt;Void&gt;{
+
+    // empty now, maybe some filters in future
+}
+
+interface BookKeeper {
+
+    ....
+
+    ListLedgersResultBuilder newListLedgersOp();
+
+    CompleatableFuture&lt;LedgerMetadata&gt; getLedgerMetadata(long ledgerId);
+
+}
+
+interface LedgerMetadata {
+    
+    ....
+
+    long getLedgerId();
+
+}
+</code></pre></div></div>
+
+<h3 id="proposed-changes">Proposed Changes</h3>
+
+<h4 id="ledgers-listing-1">Ledgers listing</h4>
+
+<p>The implementation is pretty similar to <code class="highlighter-rouge">BookKeeperAdmin#listLedgers()</code> but there are few enhancements:</p>
+<ul>
+  <li>Handle metadata driver errors, since the IOException is directly thrown up to caller, allowing user to handle network errors in a more suitable way.</li>
+  <li>Leave the possibility to restrict/filter returned ledgers in future, without API breaking changes</li>
+  <li>Dispose some resources needed to retrieve ledgers (<code class="highlighter-rouge">ListLedgersResult</code> extends <code class="highlighter-rouge">AutoCloseable</code>)) (will be empty for current implementations)</li>
+</ul>
+
+<p>The implementation will be the same used in BookKeeperAdmin, iterating over <code class="highlighter-rouge">LedgerRangeIterator</code>, which already handles ledgers search properly.</p>
+
+<h4 id="simpler-access-to-ledgermetadata-1">Simpler access to LedgerMetadata</h4>
+<p>The implementation will use LedgerManager to retrieve metadata for a specified ledgerId.</p>
+
+<h4 id="ledger-id-inside-ledgermetadata-1">Ledger id inside LedgerMetadata</h4>
+<p>Each time a LedgerMetadata instance is created, the ledgerId is known, so it is trivial to set it in the instance.</p>
+
+<h3 id="compatibility-deprecation-and-migration-plan">Compatibility, Deprecation, and Migration Plan</h3>
+
+<p>No impact for current API, the proposal does not aim to explicit deprecate <code class="highlighter-rouge">BookKeeperAdmin#listLedgers()</code> method.</p>
+
+<h3 id="test-plan">Test Plan</h3>
+
+<p>This proposal needs only new unit tests, other tests must continue pass without any changes.</p>
+
+<h3 id="rejected-alternatives">Rejected Alternatives</h3>
+
+<p>An alternative could be creates a new API similar to BookKeeperAdmin but it is better to invest enhancing <code class="highlighter-rouge">org.apache.bookkeeper.client.api.BookKeeper</code> API.</p>
+
+        </section>
+
+        
+      </div>
+    </div>
+  </div>
+</div>
+    </main>
+
+    <footer class="footer">
+  <div class="container">
+    <div class="content has-text-centered">
+      <p>
+        Copyright &copy; 2016 - 2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>,<br /> licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, version 2.0</a>.
+      </p>
+      <p>
+        Apache BookKeeper, BookKeeper®, Apache®, the Apache feature logo, and the Apache BookKeeper logo are either registered trademarks or trademarks of The Apache Software Foundation.
+      </p>
+    </div>
+  </div>
+</footer>
+
+  </body>
+
+  <script src="/js/app.js"></script>
+
+  
+  <!--
+    Licensed to the Apache Software Foundation (ASF) under one
+    or more contributor license agreements.  See the NOTICE file
+    distributed with this work for additional information
+    regarding copyright ownership.  The ASF licenses this file
+    to you under the Apache License, Version 2.0 (the
+    "License"); you may not use this file except in compliance
+    with the License.  You may obtain a copy of the License at
+      http://www.apache.org/licenses/LICENSE-2.0
+    Unless required by applicable law or agreed to in writing,
+    software distributed under the License is distributed on an
+    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+    KIND, either express or implied.  See the License for the
+    specific language governing permissions and limitations
+    under the License.
+-->
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
+
+  ga('create', 'UA-104419626-1', 'auto');
+  ga('send', 'pageview');
+
+</script>
+
+  
+</html>
diff --git a/content/community/bookkeeper_proposals/index.html b/content/community/bookkeeper_proposals/index.html
index b455853..ed7121b 100644
--- a/content/community/bookkeeper_proposals/index.html
+++ b/content/community/bookkeeper_proposals/index.html
@@ -453,7 +453,7 @@ of the thread is of the format <code class="highlighter-rouge">[DISCUSS] BP-&lt;
 
 <p>This section lists all the <em>bookkeeper proposals</em> made to BookKeeper.</p>
 
-<p><em>Next Proposal Number: 38</em></p>
+<p><em>Next Proposal Number: 41</em></p>
 
 <h3 id="inprogress">Inprogress</h3>
 
@@ -541,6 +541,10 @@ of the thread is of the format <code class="highlighter-rouge">[DISCUSS] BP-&lt;
       <td style="text-align: left"><a href="../../bps/BP-38-bookie-endpoint-discovery">BP-38: Publish Bookie Service Info on Metadata Service</a></td>
       <td style="text-align: left">Accepted</td>
     </tr>
+    <tr>
+      <td style="text-align: left"><a href="../../bps/BP-41-bookieid">BP-41: Separate BookieId from Separate BookieId from Bookie Network Address</a></td>
+      <td style="text-align: left">Draft</td>
+    </tr>
   </tbody>
 </table>
 
diff --git a/content/css/style.css b/content/css/style.css
index 814cdc3..f4e41f4 100644
--- a/content/css/style.css
+++ b/content/css/style.css
@@ -7419,7 +7419,7 @@ label.panel-block {
 
 .footer {
   background-color: whitesmoke;
-  padding: 3rem 1.5rem 6rem; }
+  padding: 6rem 1.5rem; }
 
 img.bk-javadoc-icon {
   margin-right: 1.5rem; }
@@ -7485,8 +7485,8 @@ footer.footer {
 .toc {
   overflow-y: scroll;
   bottom: 0;
-  top: 10rem;
-  position: fixed;
+  top: 5rem;
+  position: sticky;
   max-width: 20rem;
   padding: 0 0 5% 0; }
   .toc .section-nav .toc-entry.toc-h2 {
@@ -7539,17 +7539,17 @@ h2.bk-subtitle {
   width: 80%; }
   .bk-docs-container .bk-main-content {
     min-height: 70vh; }
+  .bk-docs-container .container {
+    top: 5rem;
+    position: sticky; }
 
 .bk-community-container {
   width: 60%; }
 
 aside.sidebar {
   width: 15rem;
-  position: fixed;
   overflow-y: scroll;
-  bottom: 0;
-  top: 10rem;
-  padding: 0 0 5% 0; }
+  bottom: 0; }
   aside.sidebar p + ul.sidebar-items {
     margin-top: 0.2rem; }
   aside.sidebar ul.sidebar-items {
diff --git a/content/docs/4.10.0/api/ledger-api/index.html b/content/docs/4.10.0/api/ledger-api/index.html
index f57ef50..c45b6b3 100644
--- a/content/docs/4.10.0/api/ledger-api/index.html
+++ b/content/docs/4.10.0/api/ledger-api/index.html
@@ -1373,7 +1373,7 @@ writing the entry to SO buffers without waiting for an fsync.
 In this case the LastAddConfirmed pointer is not advanced to the writer side neither is updated on the reader’s side, this is because <strong>there is some chance to lose the entry</strong>.
 Such entries will be still readable using readUnconfirmed() API, but they won’t be readable using Long Poll reads or regular read() API.</p>
 
-<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble ackknowledge the call after
+<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble acknowledge the call after
 performing an fsync to the disk which is storing the journal.
 This way the LastAddConfirmed pointer is advanced on the writer side and it will be eventually available to the readers.</p>
 
diff --git a/content/docs/4.10.0/getting-started/concepts/index.html b/content/docs/4.10.0/getting-started/concepts/index.html
index afd63df..f8f69fd 100644
--- a/content/docs/4.10.0/getting-started/concepts/index.html
+++ b/content/docs/4.10.0/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.10.0/reference/cli/index.html b/content/docs/4.10.0/reference/cli/index.html
index dd1f2ca..df1ba6e 100644
--- a/content/docs/4.10.0/reference/cli/index.html
+++ b/content/docs/4.10.0/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.11.0/api/ledger-api/index.html b/content/docs/4.11.0/api/ledger-api/index.html
index e41574b..8c7fcc8 100644
--- a/content/docs/4.11.0/api/ledger-api/index.html
+++ b/content/docs/4.11.0/api/ledger-api/index.html
@@ -1373,7 +1373,7 @@ writing the entry to SO buffers without waiting for an fsync.
 In this case the LastAddConfirmed pointer is not advanced to the writer side neither is updated on the reader’s side, this is because <strong>there is some chance to lose the entry</strong>.
 Such entries will be still readable using readUnconfirmed() API, but they won’t be readable using Long Poll reads or regular read() API.</p>
 
-<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble ackknowledge the call after
+<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble acknowledge the call after
 performing an fsync to the disk which is storing the journal.
 This way the LastAddConfirmed pointer is advanced on the writer side and it will be eventually available to the readers.</p>
 
diff --git a/content/docs/4.11.0/getting-started/concepts/index.html b/content/docs/4.11.0/getting-started/concepts/index.html
index 8426261..6d5b1ba 100644
--- a/content/docs/4.11.0/getting-started/concepts/index.html
+++ b/content/docs/4.11.0/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.11.0/reference/cli/index.html b/content/docs/4.11.0/reference/cli/index.html
index 64e19dc..dcde77c 100644
--- a/content/docs/4.11.0/reference/cli/index.html
+++ b/content/docs/4.11.0/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.11.1/api/ledger-api/index.html b/content/docs/4.11.1/api/ledger-api/index.html
index 2dbd743..07801f0 100644
--- a/content/docs/4.11.1/api/ledger-api/index.html
+++ b/content/docs/4.11.1/api/ledger-api/index.html
@@ -1373,7 +1373,7 @@ writing the entry to SO buffers without waiting for an fsync.
 In this case the LastAddConfirmed pointer is not advanced to the writer side neither is updated on the reader’s side, this is because <strong>there is some chance to lose the entry</strong>.
 Such entries will be still readable using readUnconfirmed() API, but they won’t be readable using Long Poll reads or regular read() API.</p>
 
-<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble ackknowledge the call after
+<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble acknowledge the call after
 performing an fsync to the disk which is storing the journal.
 This way the LastAddConfirmed pointer is advanced on the writer side and it will be eventually available to the readers.</p>
 
diff --git a/content/docs/4.11.1/getting-started/concepts/index.html b/content/docs/4.11.1/getting-started/concepts/index.html
index 6a48a0a..9cb6857 100644
--- a/content/docs/4.11.1/getting-started/concepts/index.html
+++ b/content/docs/4.11.1/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.11.1/reference/cli/index.html b/content/docs/4.11.1/reference/cli/index.html
index b4b3def..dea1eac 100644
--- a/content/docs/4.11.1/reference/cli/index.html
+++ b/content/docs/4.11.1/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.5.0/getting-started/concepts/index.html b/content/docs/4.5.0/getting-started/concepts/index.html
index 7f625be..8a8f0d7 100644
--- a/content/docs/4.5.0/getting-started/concepts/index.html
+++ b/content/docs/4.5.0/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.5.0/reference/cli/index.html b/content/docs/4.5.0/reference/cli/index.html
index bf3ef78..25aff3f 100644
--- a/content/docs/4.5.0/reference/cli/index.html
+++ b/content/docs/4.5.0/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.5.1/getting-started/concepts/index.html b/content/docs/4.5.1/getting-started/concepts/index.html
index cad0917..ddd119c 100644
--- a/content/docs/4.5.1/getting-started/concepts/index.html
+++ b/content/docs/4.5.1/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.5.1/reference/cli/index.html b/content/docs/4.5.1/reference/cli/index.html
index 4ed3e0b..535e0aa 100644
--- a/content/docs/4.5.1/reference/cli/index.html
+++ b/content/docs/4.5.1/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.6.0/getting-started/concepts/index.html b/content/docs/4.6.0/getting-started/concepts/index.html
index 4d93cbc..ae50ded 100644
--- a/content/docs/4.6.0/getting-started/concepts/index.html
+++ b/content/docs/4.6.0/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.6.0/reference/cli/index.html b/content/docs/4.6.0/reference/cli/index.html
index 19e7715..73333c5 100644
--- a/content/docs/4.6.0/reference/cli/index.html
+++ b/content/docs/4.6.0/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.6.1/getting-started/concepts/index.html b/content/docs/4.6.1/getting-started/concepts/index.html
index 0cd967b..cdeec84 100644
--- a/content/docs/4.6.1/getting-started/concepts/index.html
+++ b/content/docs/4.6.1/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.6.1/reference/cli/index.html b/content/docs/4.6.1/reference/cli/index.html
index 7a74f34..c1d202f 100644
--- a/content/docs/4.6.1/reference/cli/index.html
+++ b/content/docs/4.6.1/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.6.2/getting-started/concepts/index.html b/content/docs/4.6.2/getting-started/concepts/index.html
index 0560c8f..2ff4c26 100644
--- a/content/docs/4.6.2/getting-started/concepts/index.html
+++ b/content/docs/4.6.2/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.6.2/reference/cli/index.html b/content/docs/4.6.2/reference/cli/index.html
index d6eb9d2..d4d4b7e 100644
--- a/content/docs/4.6.2/reference/cli/index.html
+++ b/content/docs/4.6.2/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.7.0/getting-started/concepts/index.html b/content/docs/4.7.0/getting-started/concepts/index.html
index 6b238ba..f0ddc2c 100644
--- a/content/docs/4.7.0/getting-started/concepts/index.html
+++ b/content/docs/4.7.0/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.7.0/reference/cli/index.html b/content/docs/4.7.0/reference/cli/index.html
index a559ab8..f8493d8 100644
--- a/content/docs/4.7.0/reference/cli/index.html
+++ b/content/docs/4.7.0/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.7.1/getting-started/concepts/index.html b/content/docs/4.7.1/getting-started/concepts/index.html
index 09af031..aeec297 100644
--- a/content/docs/4.7.1/getting-started/concepts/index.html
+++ b/content/docs/4.7.1/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.7.1/reference/cli/index.html b/content/docs/4.7.1/reference/cli/index.html
index b07110c..9b7a205 100644
--- a/content/docs/4.7.1/reference/cli/index.html
+++ b/content/docs/4.7.1/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.7.2/getting-started/concepts/index.html b/content/docs/4.7.2/getting-started/concepts/index.html
index ff1b50f..287ada6 100644
--- a/content/docs/4.7.2/getting-started/concepts/index.html
+++ b/content/docs/4.7.2/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.7.2/reference/cli/index.html b/content/docs/4.7.2/reference/cli/index.html
index 18e85b6..5271069 100644
--- a/content/docs/4.7.2/reference/cli/index.html
+++ b/content/docs/4.7.2/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.7.3/getting-started/concepts/index.html b/content/docs/4.7.3/getting-started/concepts/index.html
index 0abbdab..079b159 100644
--- a/content/docs/4.7.3/getting-started/concepts/index.html
+++ b/content/docs/4.7.3/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.7.3/reference/cli/index.html b/content/docs/4.7.3/reference/cli/index.html
index ad7d7bd..a4ed1d2 100644
--- a/content/docs/4.7.3/reference/cli/index.html
+++ b/content/docs/4.7.3/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.8.0/api/ledger-api/index.html b/content/docs/4.8.0/api/ledger-api/index.html
index be2725d..300ec02 100644
--- a/content/docs/4.8.0/api/ledger-api/index.html
+++ b/content/docs/4.8.0/api/ledger-api/index.html
@@ -1373,7 +1373,7 @@ writing the entry to SO buffers without waiting for an fsync.
 In this case the LastAddConfirmed pointer is not advanced to the writer side neither is updated on the reader’s side, this is because <strong>there is some chance to lose the entry</strong>.
 Such entries will be still readable using readUnconfirmed() API, but they won’t be readable using Long Poll reads or regular read() API.</p>
 
-<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble ackknowledge the call after
+<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble acknowledge the call after
 performing an fsync to the disk which is storing the journal.
 This way the LastAddConfirmed pointer is advanced on the writer side and it will be eventually available to the readers.</p>
 
diff --git a/content/docs/4.8.0/getting-started/concepts/index.html b/content/docs/4.8.0/getting-started/concepts/index.html
index 8452ffc..8f953ee 100644
--- a/content/docs/4.8.0/getting-started/concepts/index.html
+++ b/content/docs/4.8.0/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.8.0/reference/cli/index.html b/content/docs/4.8.0/reference/cli/index.html
index 8e41436..11c1dac 100644
--- a/content/docs/4.8.0/reference/cli/index.html
+++ b/content/docs/4.8.0/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.8.1/api/ledger-api/index.html b/content/docs/4.8.1/api/ledger-api/index.html
index 532170f..7c6f59e 100644
--- a/content/docs/4.8.1/api/ledger-api/index.html
+++ b/content/docs/4.8.1/api/ledger-api/index.html
@@ -1373,7 +1373,7 @@ writing the entry to SO buffers without waiting for an fsync.
 In this case the LastAddConfirmed pointer is not advanced to the writer side neither is updated on the reader’s side, this is because <strong>there is some chance to lose the entry</strong>.
 Such entries will be still readable using readUnconfirmed() API, but they won’t be readable using Long Poll reads or regular read() API.</p>
 
-<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble ackknowledge the call after
+<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble acknowledge the call after
 performing an fsync to the disk which is storing the journal.
 This way the LastAddConfirmed pointer is advanced on the writer side and it will be eventually available to the readers.</p>
 
diff --git a/content/docs/4.8.1/getting-started/concepts/index.html b/content/docs/4.8.1/getting-started/concepts/index.html
index a632f37..6ea2acd 100644
--- a/content/docs/4.8.1/getting-started/concepts/index.html
+++ b/content/docs/4.8.1/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.8.1/reference/cli/index.html b/content/docs/4.8.1/reference/cli/index.html
index f2ec465..7a38b6b 100644
--- a/content/docs/4.8.1/reference/cli/index.html
+++ b/content/docs/4.8.1/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.8.2/api/ledger-api/index.html b/content/docs/4.8.2/api/ledger-api/index.html
index 7d1b414..c9af8ce 100644
--- a/content/docs/4.8.2/api/ledger-api/index.html
+++ b/content/docs/4.8.2/api/ledger-api/index.html
@@ -1373,7 +1373,7 @@ writing the entry to SO buffers without waiting for an fsync.
 In this case the LastAddConfirmed pointer is not advanced to the writer side neither is updated on the reader’s side, this is because <strong>there is some chance to lose the entry</strong>.
 Such entries will be still readable using readUnconfirmed() API, but they won’t be readable using Long Poll reads or regular read() API.</p>
 
-<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble ackknowledge the call after
+<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble acknowledge the call after
 performing an fsync to the disk which is storing the journal.
 This way the LastAddConfirmed pointer is advanced on the writer side and it will be eventually available to the readers.</p>
 
diff --git a/content/docs/4.8.2/getting-started/concepts/index.html b/content/docs/4.8.2/getting-started/concepts/index.html
index 7525077..1178408 100644
--- a/content/docs/4.8.2/getting-started/concepts/index.html
+++ b/content/docs/4.8.2/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.8.2/reference/cli/index.html b/content/docs/4.8.2/reference/cli/index.html
index 07fcbdc..02b5fe1 100644
--- a/content/docs/4.8.2/reference/cli/index.html
+++ b/content/docs/4.8.2/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.9.0/api/ledger-api/index.html b/content/docs/4.9.0/api/ledger-api/index.html
index 4224a97..bdc439a 100644
--- a/content/docs/4.9.0/api/ledger-api/index.html
+++ b/content/docs/4.9.0/api/ledger-api/index.html
@@ -1373,7 +1373,7 @@ writing the entry to SO buffers without waiting for an fsync.
 In this case the LastAddConfirmed pointer is not advanced to the writer side neither is updated on the reader’s side, this is because <strong>there is some chance to lose the entry</strong>.
 Such entries will be still readable using readUnconfirmed() API, but they won’t be readable using Long Poll reads or regular read() API.</p>
 
-<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble ackknowledge the call after
+<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble acknowledge the call after
 performing an fsync to the disk which is storing the journal.
 This way the LastAddConfirmed pointer is advanced on the writer side and it will be eventually available to the readers.</p>
 
diff --git a/content/docs/4.9.0/getting-started/concepts/index.html b/content/docs/4.9.0/getting-started/concepts/index.html
index af5d656..01738cf 100644
--- a/content/docs/4.9.0/getting-started/concepts/index.html
+++ b/content/docs/4.9.0/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.9.0/reference/cli/index.html b/content/docs/4.9.0/reference/cli/index.html
index 91fd13b..45828b2 100644
--- a/content/docs/4.9.0/reference/cli/index.html
+++ b/content/docs/4.9.0/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.9.1/api/ledger-api/index.html b/content/docs/4.9.1/api/ledger-api/index.html
index 1612a7f..daf7020 100644
--- a/content/docs/4.9.1/api/ledger-api/index.html
+++ b/content/docs/4.9.1/api/ledger-api/index.html
@@ -1373,7 +1373,7 @@ writing the entry to SO buffers without waiting for an fsync.
 In this case the LastAddConfirmed pointer is not advanced to the writer side neither is updated on the reader’s side, this is because <strong>there is some chance to lose the entry</strong>.
 Such entries will be still readable using readUnconfirmed() API, but they won’t be readable using Long Poll reads or regular read() API.</p>
 
-<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble ackknowledge the call after
+<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble acknowledge the call after
 performing an fsync to the disk which is storing the journal.
 This way the LastAddConfirmed pointer is advanced on the writer side and it will be eventually available to the readers.</p>
 
diff --git a/content/docs/4.9.1/getting-started/concepts/index.html b/content/docs/4.9.1/getting-started/concepts/index.html
index 585ed0d..da50ac5 100644
--- a/content/docs/4.9.1/getting-started/concepts/index.html
+++ b/content/docs/4.9.1/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.9.1/reference/cli/index.html b/content/docs/4.9.1/reference/cli/index.html
index eb3d222..af0bc0a 100644
--- a/content/docs/4.9.1/reference/cli/index.html
+++ b/content/docs/4.9.1/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/4.9.2/api/ledger-api/index.html b/content/docs/4.9.2/api/ledger-api/index.html
index 147622e..df65b30 100644
--- a/content/docs/4.9.2/api/ledger-api/index.html
+++ b/content/docs/4.9.2/api/ledger-api/index.html
@@ -1373,7 +1373,7 @@ writing the entry to SO buffers without waiting for an fsync.
 In this case the LastAddConfirmed pointer is not advanced to the writer side neither is updated on the reader’s side, this is because <strong>there is some chance to lose the entry</strong>.
 Such entries will be still readable using readUnconfirmed() API, but they won’t be readable using Long Poll reads or regular read() API.</p>
 
-<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble ackknowledge the call after
+<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble acknowledge the call after
 performing an fsync to the disk which is storing the journal.
 This way the LastAddConfirmed pointer is advanced on the writer side and it will be eventually available to the readers.</p>
 
diff --git a/content/docs/4.9.2/getting-started/concepts/index.html b/content/docs/4.9.2/getting-started/concepts/index.html
index b8cc187..60ea434 100644
--- a/content/docs/4.9.2/getting-started/concepts/index.html
+++ b/content/docs/4.9.2/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/4.9.2/reference/cli/index.html b/content/docs/4.9.2/reference/cli/index.html
index 17d2bc3..892c054 100644
--- a/content/docs/4.9.2/reference/cli/index.html
+++ b/content/docs/4.9.2/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>
 
diff --git a/content/docs/latest/api/ledger-api/index.html b/content/docs/latest/api/ledger-api/index.html
index ef58733..d93de32 100644
--- a/content/docs/latest/api/ledger-api/index.html
+++ b/content/docs/latest/api/ledger-api/index.html
@@ -1373,7 +1373,7 @@ writing the entry to SO buffers without waiting for an fsync.
 In this case the LastAddConfirmed pointer is not advanced to the writer side neither is updated on the reader’s side, this is because <strong>there is some chance to lose the entry</strong>.
 Such entries will be still readable using readUnconfirmed() API, but they won’t be readable using Long Poll reads or regular read() API.</p>
 
-<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble ackknowledge the call after
+<p>In order to get guarantees of durability the writer must use explicitly the <a href="../javadoc/org/apache/bookkeeper/client/api/ForceableHandle">force()</a> API which will return only after all the bookies in the ensemble acknowledge the call after
 performing an fsync to the disk which is storing the journal.
 This way the LastAddConfirmed pointer is advanced on the writer side and it will be eventually available to the readers.</p>
 
diff --git a/content/docs/latest/getting-started/concepts/index.html b/content/docs/latest/getting-started/concepts/index.html
index 3e70559..d048a81 100644
--- a/content/docs/latest/getting-started/concepts/index.html
+++ b/content/docs/latest/getting-started/concepts/index.html
@@ -641,7 +641,7 @@
   <li>at most once.</li>
 </ul>
 
-<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsbility of <a href="#clients">client applications</a>.</p>
+<p>This means that ledgers have <em>append-only</em> semantics. Entries cannot be modified once they’ve been written to a ledger. Determining the proper write order is the responsibility of <a href="#clients">client applications</a>.</p>
 
 <h2 id="clients-and-apis">Clients and APIs</h2>
 
diff --git a/content/docs/latest/reference/cli/index.html b/content/docs/latest/reference/cli/index.html
index 51337bd..cd2af91 100644
--- a/content/docs/latest/reference/cli/index.html
+++ b/content/docs/latest/reference/cli/index.html
@@ -1572,14 +1572,14 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
   <tbody>
     
     <tr>
-      <td><code>-srcBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-srcBookie BOOKIE_ID</code></td>
       <td>Source Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
-      <td><code>-destBookie <bookie-id>&lt;/code&gt;&lt;/td&gt;
+      <td><code>-destBookie BOOKIE_ID</code></td>
       <td>Destination Bookie Id</td>
-    &lt;/tr&gt;
+    </tr>
     
     <tr>
       <td><code>-updatespersec N</code></td>
@@ -1601,83 +1601,72 @@ Start the bookie process on dest-bookie and dest-bookie will serve copied ledger
       <td>Print messages on every configured seconds if verbose turned on (default 10 secs)</td>
     </tr>
     
-  &lt;/tbody&gt;
-&lt;/table&gt;
- <!-- if command.options -->
+  </tbody>
+</table>
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whoisauditor">whoisauditor</h3>
 
 <p>Print the node which holds the auditor lock</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whoisauditor
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whoisauditor
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-whatisinstanceid">whatisinstanceid</h3>
 
 <p>Print the instanceid of the cluster</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell whatisinstanceid
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell whatisinstanceid
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-db-storage">convert-to-db-storage</h3>
 
 <p>Convert bookie indexes from InterleavedStorage to DbLedgerStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-db-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-db-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-convert-to-interleaved-storage">convert-to-interleaved-storage</h3>
 
 <p>Convert bookie indexes from DbLedgerStorage to InterleavedStorage format</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell convert-to-interleaved-storage
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell convert-to-interleaved-storage
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 <hr />
 
 <h3 id="bookkeeper-shell-rebuild-db-ledger-locations-index">rebuild-db-ledger-locations-index</h3>
 
 <p>Rebuild DbLedgerStorage locations index</p>
 
-
 <h5>Usage</h5>
 
-```shell
-$ bin/bookkeeper shell rebuild-db-ledger-locations-index
-```
+<div class="language-shell highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nv">$ </span>bin/bookkeeper shell rebuild-db-ledger-locations-index
+</code></pre></div></div>
 
- <!-- if command.options -->
+<p><!-- if command.options --></p>
 
- <!-- for command in commands -->
+<p><!-- for command in commands --></p>
 
-</bookie-id></code></td></tr></bookie-id></code></td></tr></tbody></table>
 
         </section>