You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2013/04/06 08:08:58 UTC

svn commit: r1465200 [21/21] - in /hbase/hbase.apache.org/trunk: ./ book/ case_studies/ community/ configuration/ css/ developer/ getting_started/ images/ ops_mgt/ performance/ rpc/ schema_design/ security/ shell/ troubleshooting/ upgrading/

Modified: hbase/hbase.apache.org/trunk/upgrading/upgrade0.92.html
URL: http://svn.apache.org/viewvc/hbase/hbase.apache.org/trunk/upgrading/upgrade0.92.html?rev=1465200&r1=1465199&r2=1465200&view=diff
==============================================================================
--- hbase/hbase.apache.org/trunk/upgrading/upgrade0.92.html (original)
+++ hbase/hbase.apache.org/trunk/upgrading/upgrade0.92.html Sat Apr  6 06:08:56 2013
@@ -14,46 +14,46 @@ There’s a separate tarball for sec
 If -XX:MaxDirectMemorySize is set in your hbase-env.sh, it’s going to enable the experimental off-heap cache (You may not want this).
 </li></ol></div><p>
 </p></div><p>
-</p><div class="section" title="1.4.1.&nbsp;You can&#8217;t go back!"><div class="titlepage"><div><div><h3 class="title"><a name="d67e67"></a>1.4.1.&nbsp;You can&#8217;t go back!
+</p><div class="section" title="1.4.1.&nbsp;You can&#8217;t go back!"><div class="titlepage"><div><div><h3 class="title"><a name="d67e90"></a>1.4.1.&nbsp;You can&#8217;t go back!
 </h3></div></div></div><p>To move to 0.92.0, all you need to do is shutdown your cluster, replace your hbase 0.90.x with hbase 0.92.0 binaries (be sure you clear out all 0.90.x instances) and restart (You cannot do a rolling restart from 0.90.x to 0.92.x -- you must restart).
 On startup, the <code class="varname">.META.</code> table content is rewritten removing the table schema from the <code class="varname">info:regioninfo</code> column.
 Also, any flushes done post first startup will write out data in the new 0.92.0 file format, <a class="link" href="http://hbase.apache.org/book.html#hfilev2" target="_top">HFile V2</a>.
 This means you cannot go back to 0.90.x once you&#8217;ve started HBase 0.92.0 over your HBase data directory.
-</p></div><div class="section" title="1.4.2.&nbsp;MSLAB is ON by default"><div class="titlepage"><div><div><h3 class="title"><a name="d67e81"></a>1.4.2.&nbsp;MSLAB is ON by default
+</p></div><div class="section" title="1.4.2.&nbsp;MSLAB is ON by default"><div class="titlepage"><div><div><h3 class="title"><a name="d67e104"></a>1.4.2.&nbsp;MSLAB is ON by default
 </h3></div></div></div><p>In 0.92.0, the <a class="link" href="http://hbase.apache.org/book.html#hbase.hregion.memstore.mslab.enabled" target="_top">hbase.hregion.memstore.mslab.enabled</a> flag is set to true
 (See <a class="xref" href="">???</a>).  In 0.90.x it was <code class="constant">false</code>.  When it is enabled, memstores will step allocate memory in MSLAB 2MB chunks even if the
 memstore has zero or just a few small elements.  This is fine usually but if you had lots of regions per regionserver in a 0.90.x cluster (and MSLAB was off),
 you may find yourself OOME'ing on upgrade because the <span class="mathphrase">thousands of regions * number of column families * 2MB MSLAB (at a minimum)</span>
 puts your heap over the top.  Set <code class="varname">hbase.hregion.memstore.mslab.enabled</code> to
 <code class="constant">false</code> or set the MSLAB size down from 2MB by setting <code class="varname">hbase.hregion.memstore.mslab.chunksize</code> to something less.
-</p></div><div class="section" title="1.4.3.&nbsp;Distributed splitting is on by default"><div class="titlepage"><div><div><h3 class="title"><a name="d67e106"></a>1.4.3.&nbsp;Distributed splitting is on by default
+</p></div><div class="section" title="1.4.3.&nbsp;Distributed splitting is on by default"><div class="titlepage"><div><div><h3 class="title"><a name="d67e129"></a>1.4.3.&nbsp;Distributed splitting is on by default
 </h3></div></div></div><p>Previous, WAL logs on crash were split by the Master alone.  In 0.92.0, log splitting is done by the cluster (See See &#8220;HBASE-1364 [performance] Distributed splitting of regionserver commit logs&#8221;).  This should cut down significantly on the amount of time it takes splitting logs and getting regions back online again.
-</p></div><div class="section" title="1.4.4.&nbsp;Memory accounting is different now"><div class="titlepage"><div><div><h3 class="title"><a name="d67e111"></a>1.4.4.&nbsp;Memory accounting is different now
+</p></div><div class="section" title="1.4.4.&nbsp;Memory accounting is different now"><div class="titlepage"><div><div><h3 class="title"><a name="d67e134"></a>1.4.4.&nbsp;Memory accounting is different now
 </h3></div></div></div><p>In 0.92.0, <a class="xref" href="">???</a> indices and bloom filters take up residence in the same LRU used caching blocks that come from the filesystem.
 In 0.90.x, the HFile v1 indices lived outside of the LRU so they took up space even if the index was on a &#8216;cold&#8217; file, one that wasn&#8217;t being actively used.  With the indices now in the LRU, you may find you
 have less space for block caching.  Adjust your block cache accordingly.  See the <a class="xref" href="">???</a> for more detail.
 The block size default size has been changed in 0.92.0 from 0.2 (20 percent of heap) to 0.25.
-</p></div><div class="section" title="1.4.5.&nbsp;On the Hadoop version to use"><div class="titlepage"><div><div><h3 class="title"><a name="d67e120"></a>1.4.5.&nbsp;On the Hadoop version to use
+</p></div><div class="section" title="1.4.5.&nbsp;On the Hadoop version to use"><div class="titlepage"><div><div><h3 class="title"><a name="d67e143"></a>1.4.5.&nbsp;On the Hadoop version to use
 </h3></div></div></div><p>Run 0.92.0 on Hadoop 1.0.x (or CDH3u3 when it ships).  The performance benefits are worth making the move.  Otherwise, our Hadoop prescription is as it has been; you need an Hadoop that supports a working sync.  See <a class="xref" href="">???</a>.
 </p><p>If running on Hadoop 1.0.x (or CDH3u3), enable local read.  See <a class="link" href="http://files.meetup.com/1350427/hug_ebay_jdcryans.pdf" target="_top">Practical Caching</a> presentation for ruminations on the performance benefits &#8216;going local&#8217; (and for how to enable local reads).
-</p></div><div class="section" title="1.4.6.&nbsp;HBase 0.92.0 ships with ZooKeeper 3.4.2"><div class="titlepage"><div><div><h3 class="title"><a name="d67e132"></a>1.4.6.&nbsp;HBase 0.92.0 ships with ZooKeeper 3.4.2
+</p></div><div class="section" title="1.4.6.&nbsp;HBase 0.92.0 ships with ZooKeeper 3.4.2"><div class="titlepage"><div><div><h3 class="title"><a name="d67e155"></a>1.4.6.&nbsp;HBase 0.92.0 ships with ZooKeeper 3.4.2
 </h3></div></div></div><p>If you can, upgrade your zookeeper.  If you can&#8217;t, 3.4.2 clients should work against 3.3.X ensembles (HBase makes use of 3.4.2 API).
-</p></div><div class="section" title="1.4.7.&nbsp;Online alter is off by default"><div class="titlepage"><div><div><h3 class="title"><a name="d67e137"></a>1.4.7.&nbsp;Online alter is off by default
+</p></div><div class="section" title="1.4.7.&nbsp;Online alter is off by default"><div class="titlepage"><div><div><h3 class="title"><a name="d67e160"></a>1.4.7.&nbsp;Online alter is off by default
 </h3></div></div></div><p>In 0.92.0, we&#8217;ve added an experimental online schema alter facility  (See <a class="xref" href="">???</a>).  Its off by default.  Enable it at your own risk.  Online alter and splitting tables do not play well together so be sure your cluster quiescent using this feature (for now).
-</p></div><div class="section" title="1.4.8.&nbsp;WebUI"><div class="titlepage"><div><div><h3 class="title"><a name="d67e144"></a>1.4.8.&nbsp;WebUI
+</p></div><div class="section" title="1.4.8.&nbsp;WebUI"><div class="titlepage"><div><div><h3 class="title"><a name="d67e167"></a>1.4.8.&nbsp;WebUI
 </h3></div></div></div><p>The webui has had a few additions made in 0.92.0.  It now shows a list of the regions currently transitioning, recent compactions/flushes, and a process list of running processes (usually empty if all is well and requests are being handled promptly).  Other additions including requests by region, a debugging servlet dump, etc.
-</p></div><div class="section" title="1.4.9.&nbsp;Security tarball"><div class="titlepage"><div><div><h3 class="title"><a name="d67e149"></a>1.4.9.&nbsp;Security tarball
+</p></div><div class="section" title="1.4.9.&nbsp;Security tarball"><div class="titlepage"><div><div><h3 class="title"><a name="d67e172"></a>1.4.9.&nbsp;Security tarball
 </h3></div></div></div><p>We now ship with two tarballs; secure and insecure HBase.  Documentation on how to setup a secure HBase is on the way.
-</p></div><div class="section" title="1.4.10.&nbsp;Experimental off-heap cache"><div class="titlepage"><div><div><h3 class="title"><a name="d67e154"></a>1.4.10.&nbsp;Experimental off-heap cache
+</p></div><div class="section" title="1.4.10.&nbsp;Experimental off-heap cache"><div class="titlepage"><div><div><h3 class="title"><a name="d67e177"></a>1.4.10.&nbsp;Experimental off-heap cache
 </h3></div></div></div><p>
 A new cache was contributed to 0.92.0 to act as a solution between using the &#8220;on-heap&#8221; cache which is the current LRU cache the region servers have and the operating system cache which is out of our control.
 To enable, set &#8220;-XX:MaxDirectMemorySize&#8221; in hbase-env.sh to the value for maximum direct memory size and specify hbase.offheapcache.percentage in hbase-site.xml with the percentage that you want to dedicate to off-heap cache. This should only be set for servers and not for clients. Use at your own risk.
 See this blog post for additional information on this new experimental feature: http://www.cloudera.com/blog/2012/01/caching-in-hbase-slabcache/
-</p></div><div class="section" title="1.4.11.&nbsp;Changes in HBase replication"><div class="titlepage"><div><div><h3 class="title"><a name="d67e159"></a>1.4.11.&nbsp;Changes in HBase replication
+</p></div><div class="section" title="1.4.11.&nbsp;Changes in HBase replication"><div class="titlepage"><div><div><h3 class="title"><a name="d67e182"></a>1.4.11.&nbsp;Changes in HBase replication
 </h3></div></div></div><p>0.92.0 adds two new features: multi-slave and multi-master replication. The way to enable this is the same as adding a new peer, so in order to have multi-master you would just run add_peer for each cluster that acts as a master to the other slave clusters. Collisions are handled at the timestamp level which may or may not be what you want, this needs to be evaluated on a per use case basis. Replication is still experimental in 0.92 and is disabled by default, run it at your own risk.
-</p></div><div class="section" title="1.4.12.&nbsp;RegionServer now aborts if OOME"><div class="titlepage"><div><div><h3 class="title"><a name="d67e164"></a>1.4.12.&nbsp;RegionServer now aborts if OOME
+</p></div><div class="section" title="1.4.12.&nbsp;RegionServer now aborts if OOME"><div class="titlepage"><div><div><h3 class="title"><a name="d67e187"></a>1.4.12.&nbsp;RegionServer now aborts if OOME
 </h3></div></div></div><p>If an OOME, we now have the JVM kill -9 the regionserver process so it goes down fast.  Previous, a RegionServer might stick around after incurring an OOME limping along in some wounded state.  To disable this facility, and recommend you leave it in place, you&#8217;d need to edit the bin/hbase file.  Look for the addition of the -XX:OnOutOfMemoryError="kill -9 %p" arguments (See [HBASE-4769] - &#8216;Abort RegionServer Immediately on OOME&#8217;)
-</p></div><div class="section" title="1.4.13.&nbsp;HFile V2 and the &#8220;Bigger, Fewer&#8221; Tendency"><div class="titlepage"><div><div><h3 class="title"><a name="d67e169"></a>1.4.13.&nbsp;HFile V2 and the &#8220;Bigger, Fewer&#8221; Tendency
+</p></div><div class="section" title="1.4.13.&nbsp;HFile V2 and the &#8220;Bigger, Fewer&#8221; Tendency"><div class="titlepage"><div><div><h3 class="title"><a name="d67e192"></a>1.4.13.&nbsp;HFile V2 and the &#8220;Bigger, Fewer&#8221; Tendency
 </h3></div></div></div><p>0.92.0 stores data in a new format, <a class="xref" href="">???</a>.   As HBase runs, it will move all your data from HFile v1 to HFile v2 format.  This auto-migration will run in the background as flushes and compactions run.
 HFile V2 allows HBase run with larger regions/files.  In fact, we encourage that all HBasers going forward tend toward Facebook axiom #1, run with larger, fewer regions.
 If you have lots of regions now -- more than 100s per host -- you should look into setting your region size up after you move to 0.92.0 (In 0.92.0, default size is now 1G, up from 256M), and then running online merge tool (See &#8220;HBASE-1621 merge tool should work on online cluster, but disabled table&#8221;).

Modified: hbase/hbase.apache.org/trunk/upgrading/upgrade0.94.html
URL: http://svn.apache.org/viewvc/hbase/hbase.apache.org/trunk/upgrading/upgrade0.94.html?rev=1465200&r1=1465199&r2=1465200&view=diff
==============================================================================
--- hbase/hbase.apache.org/trunk/upgrading/upgrade0.94.html (original)
+++ hbase/hbase.apache.org/trunk/upgrading/upgrade0.94.html Sat Apr  6 06:08:56 2013
@@ -1,6 +1,11 @@
 <html><head>
       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-   <title>1.3.&nbsp;Upgrading from 0.92.x to 0.94.x</title><link rel="stylesheet" type="text/css" href="../css/freebsd_docbook.css"><meta name="generator" content="DocBook XSL-NS Stylesheets V1.76.1"><link rel="home" href="upgrading.html" title="Chapter&nbsp;1.&nbsp;Upgrading"><link rel="up" href="upgrading.html" title="Chapter&nbsp;1.&nbsp;Upgrading"><link rel="prev" href="upgrade0.96.html" title="1.2.&nbsp;Upgrading from 0.94.x to 0.96.x"><link rel="next" href="upgrade0.92.html" title="1.4.&nbsp;Upgrading from 0.90.x to 0.92.x"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">1.3.&nbsp;Upgrading from 0.92.x to 0.94.x</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="upgrade0.96.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="upgrade0.92.h
 tml">Next</a></td></tr></table><hr></div><div class="section" title="1.3.&nbsp;Upgrading from 0.92.x to 0.94.x"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade0.94"></a>1.3.&nbsp;Upgrading from 0.92.x to 0.94.x</h2></div></div></div><p>0.92 and 0.94 are interface compatible.  You can do a rolling upgrade between these versions.
+   <title>1.3.&nbsp;Upgrading from 0.92.x to 0.94.x</title><link rel="stylesheet" type="text/css" href="../css/freebsd_docbook.css"><meta name="generator" content="DocBook XSL-NS Stylesheets V1.76.1"><link rel="home" href="upgrading.html" title="Chapter&nbsp;1.&nbsp;Upgrading"><link rel="up" href="upgrading.html" title="Chapter&nbsp;1.&nbsp;Upgrading"><link rel="prev" href="upgrade0.96.html" title="1.2.&nbsp;Upgrading from 0.94.x to 0.96.x"><link rel="next" href="upgrade0.92.html" title="1.4.&nbsp;Upgrading from 0.90.x to 0.92.x"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">1.3.&nbsp;Upgrading from 0.92.x to 0.94.x</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="upgrade0.96.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="upgrade0.92.h
 tml">Next</a></td></tr></table><hr></div><div class="section" title="1.3.&nbsp;Upgrading from 0.92.x to 0.94.x"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="upgrade0.94"></a>1.3.&nbsp;Upgrading from 0.92.x to 0.94.x</h2></div></div></div><p>We used to think that 0.92 and 0.94 were interface compatible and that you can do a
+          rolling upgrade between these versions but then we figured that
+          <a class="link" href="https://issues.apache.org/jira/browse/HBASE-5357" target="_top">HBASE-5357 Use builder pattern in HColumnDescriptor</a>
+          changed method signatures so rather than return void they instead return HColumnDescriptor.  This
+          will throw </p><pre class="programlisting">java.lang.NoSuchMethodError: org.apache.hadoop.hbase.HColumnDescriptor.setMaxVersions(I)V</pre><p>
+          .... so 0.92 and 0.94 are NOT compatible.  You cannot do a rolling upgrade between them.
     </p></div><div id="disqus_thread"></div><script type="text/javascript">
     var disqus_shortname = 'hbase'; // required: replace example with your forum shortname
     var disqus_url = 'http://hbase.apache.org/book';

Modified: hbase/hbase.apache.org/trunk/upgrading/upgrading.html
URL: http://svn.apache.org/viewvc/hbase/hbase.apache.org/trunk/upgrading/upgrading.html?rev=1465200&r1=1465199&r2=1465200&view=diff
==============================================================================
--- hbase/hbase.apache.org/trunk/upgrading/upgrading.html (original)
+++ hbase/hbase.apache.org/trunk/upgrading/upgrading.html Sat Apr  6 06:08:56 2013
@@ -1,18 +1,18 @@
 <html><head>
       <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
-   <title>Chapter&nbsp;1.&nbsp;Upgrading</title><link rel="stylesheet" type="text/css" href="../css/freebsd_docbook.css"><meta name="generator" content="DocBook XSL-NS Stylesheets V1.76.1"><link rel="home" href="upgrading.html" title="Chapter&nbsp;1.&nbsp;Upgrading"><link rel="next" href="upgrade0.96.html" title="1.2.&nbsp;Upgrading from 0.94.x to 0.96.x"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;1.&nbsp;Upgrading</th></tr><tr><td width="20%" align="left">&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="upgrade0.96.html">Next</a></td></tr></table><hr></div><div class="chapter" title="Chapter&nbsp;1.&nbsp;Upgrading"><div class="titlepage"><div><div><h2 class="title"><a name="upgrading"></a>Chapter&nbsp;1.&nbsp;Upgrading</h2></div></div></div><div clas
 s="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="upgrading.html#hbase.versioning">1.1. HBase version numbers</a></span></dt><dd><dl><dt><span class="section"><a href="upgrading.html#hbase.development.series">1.1.1. Odd/Even Versioning or "Development"" Series Releases</a></span></dt></dl></dd><dt><span class="section"><a href="upgrade0.96.html">1.2. Upgrading from 0.94.x to 0.96.x</a></span></dt><dt><span class="section"><a href="upgrade0.94.html">1.3. Upgrading from 0.92.x to 0.94.x</a></span></dt><dt><span class="section"><a href="upgrade0.92.html">1.4. Upgrading from 0.90.x to 0.92.x</a></span></dt><dd><dl><dt><span class="section"><a href="upgrade0.92.html#d67e67">1.4.1. You can&#8217;t go back!
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e81">1.4.2. MSLAB is ON by default
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e106">1.4.3. Distributed splitting is on by default
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e111">1.4.4. Memory accounting is different now
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e120">1.4.5. On the Hadoop version to use
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e132">1.4.6. HBase 0.92.0 ships with ZooKeeper 3.4.2
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e137">1.4.7. Online alter is off by default
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e144">1.4.8. WebUI
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e149">1.4.9. Security tarball
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e154">1.4.10. Experimental off-heap cache
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e159">1.4.11. Changes in HBase replication
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e164">1.4.12. RegionServer now aborts if OOME
-</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e169">1.4.13. HFile V2 and the &#8220;Bigger, Fewer&#8221; Tendency
+   <title>Chapter&nbsp;1.&nbsp;Upgrading</title><link rel="stylesheet" type="text/css" href="../css/freebsd_docbook.css"><meta name="generator" content="DocBook XSL-NS Stylesheets V1.76.1"><link rel="home" href="upgrading.html" title="Chapter&nbsp;1.&nbsp;Upgrading"><link rel="next" href="upgrade0.96.html" title="1.2.&nbsp;Upgrading from 0.94.x to 0.96.x"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter&nbsp;1.&nbsp;Upgrading</th></tr><tr><td width="20%" align="left">&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;<a accesskey="n" href="upgrade0.96.html">Next</a></td></tr></table><hr></div><div class="chapter" title="Chapter&nbsp;1.&nbsp;Upgrading"><div class="titlepage"><div><div><h2 class="title"><a name="upgrading"></a>Chapter&nbsp;1.&nbsp;Upgrading</h2></div></div></div><div clas
 s="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="upgrading.html#hbase.versioning">1.1. HBase version numbers</a></span></dt><dd><dl><dt><span class="section"><a href="upgrading.html#hbase.development.series">1.1.1. Odd/Even Versioning or "Development"" Series Releases</a></span></dt><dt><span class="section"><a href="upgrading.html#hbase.binary.compatibility">1.1.2. Binary Compatibility</a></span></dt><dt><span class="section"><a href="upgrading.html#hbase.rolling.restart">1.1.3. Rolling Upgrade between versions/Binary compatibility</a></span></dt></dl></dd><dt><span class="section"><a href="upgrade0.96.html">1.2. Upgrading from 0.94.x to 0.96.x</a></span></dt><dt><span class="section"><a href="upgrade0.94.html">1.3. Upgrading from 0.92.x to 0.94.x</a></span></dt><dt><span class="section"><a href="upgrade0.92.html">1.4. Upgrading from 0.90.x to 0.92.x</a></span></dt><dd><dl><dt><span class="section"><a href="upgrade0.92.html#d67e90">1.4.1. You ca
 n&#8217;t go back!
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e104">1.4.2. MSLAB is ON by default
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e129">1.4.3. Distributed splitting is on by default
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e134">1.4.4. Memory accounting is different now
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e143">1.4.5. On the Hadoop version to use
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e155">1.4.6. HBase 0.92.0 ships with ZooKeeper 3.4.2
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e160">1.4.7. Online alter is off by default
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e167">1.4.8. WebUI
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e172">1.4.9. Security tarball
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e177">1.4.10. Experimental off-heap cache
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e182">1.4.11. Changes in HBase replication
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e187">1.4.12. RegionServer now aborts if OOME
+</a></span></dt><dt><span class="section"><a href="upgrade0.92.html#d67e192">1.4.13. HFile V2 and the &#8220;Bigger, Fewer&#8221; Tendency
 </a></span></dt></dl></dd><dt><span class="section"><a href="upgrade0.90.html">1.5. Upgrading to HBase 0.90.x from 0.20.x or 0.89.x</a></span></dt></dl></div><p>You cannot skip major verisons upgrading.  If you are upgrading from
     version 0.90.x to 0.94.x, you must first go from 0.90.x to 0.92.x and then go
     from 0.92.x to 0.94.x.</p><p>
@@ -33,7 +33,22 @@
             </p><p>Our first "Development" Series was the 0.89 set that came out ahead of
                 HBase 0.90.0.  HBase 0.95 is another "Development" Series that portends
                 HBase 0.96.0.
-            </p></div></div></div><div id="disqus_thread"></div><script type="text/javascript">
+            </p></div><div class="section" title="1.1.2.&nbsp;Binary Compatibility"><div class="titlepage"><div><div><h3 class="title"><a name="hbase.binary.compatibility"></a>1.1.2.&nbsp;Binary Compatibility</h3></div></div></div><p>When we say two HBase versions are compatible, we mean that the versions
+                are wire and binary compatible.  Compatible HBase versions means that
+                clients can talk to compatible but differently versioned servers.
+                It means too that you can just swap out the jars of one version and replace
+                them with the jars of another, compatible version and all will just work.
+                Unless otherwise specified, HBase point versions are binary compatible.
+                You can safely do rolling upgrades between binary compatible versions; i.e.
+                across point versions: e.g. from 0.94.5 to 0.94.6<sup>[<a name="d67e31" href="#ftn.d67e31" class="footnote">1</a>]</sup>.
+            </p></div><div class="section" title="1.1.3.&nbsp;Rolling Upgrade between versions/Binary compatibility"><div class="titlepage"><div><div><h3 class="title"><a name="hbase.rolling.restart"></a>1.1.3.&nbsp;Rolling Upgrade between versions/Binary compatibility</h3></div></div></div><p>Unless otherwise specified, HBase point versions are binary compatible.
+                you can do a rolling upgrade between hbase point versions;
+                for example, you can go to 0.94.6 from 0.94.5 by doing a rolling upgrade across the cluster
+                replacing the 0.94.5 binary with a 0.94.6 binary.
+            </p></div></div><div class="footnotes"><br><hr width="100" align="left"><div class="footnote"><p><sup>[<a id="ftn.d67e31" href="#d67e31" class="para">1</a>] </sup>See
+                        <a class="link" href="http://search-hadoop.com/m/bOOvwHGW981/Does+compatibility+between+versions+also+mean+binary+compatibility%253F&amp;subj=Re+Does+compatibility+between+versions+also+mean+binary+compatibility+" target="_top">Does compatibility between versions also mean binary compatibility?</a>
+                        discussion on the hbaes dev mailing list.
+                </p></div></div></div><div id="disqus_thread"></div><script type="text/javascript">
     var disqus_shortname = 'hbase'; // required: replace example with your forum shortname
     var disqus_url = 'http://hbase.apache.org/book';
     var disqus_identifier = 'upgrading';