accumulo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mwa...@apache.org
Subject [23/36] accumulo git commit: Jekyll build from gh-pages:358b7b4
Date Thu, 10 Nov 2016 21:38:29 GMT
http://git-wip-us.apache.org/repos/asf/accumulo/blob/c0655661/release/accumulo-1.6.0/index.html
----------------------------------------------------------------------
diff --git a/release/accumulo-1.6.0/index.html b/release/accumulo-1.6.0/index.html
new file mode 100644
index 0000000..938f2a3
--- /dev/null
+++ b/release/accumulo-1.6.0/index.html
@@ -0,0 +1,569 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<!--
+    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.
+-->
+<meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/paper/bootstrap.min.css" rel="stylesheet" integrity="sha384-awusxf8AUojygHf2+joICySzB780jVvQaVCAt1clU3QsyAitLGul28Qxb2r1e5g+" crossorigin="anonymous">
+<link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
+<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.css">
+<link href="/css/accumulo.css" rel="stylesheet" type="text/css">
+
+<title>Apache Accumulo 1.6.0</title>
+
+<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
+<script type="text/javascript" src="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.js"></script>
+<script>
+  // show location of canonical site if not currently on the canonical site
+  $(function() {
+    var host = window.location.host;
+    if (typeof host !== 'undefined' && host !== 'accumulo.apache.org') {
+      $('#non-canonical').show();
+    }
+  });
+
+  $(function() {
+    // decorate section headers with anchors
+    return $("h2, h3, h4, h5, h6").each(function(i, el) {
+      var $el, icon, id;
+      $el = $(el);
+      id = $el.attr('id');
+      icon = '<i class="fa fa-link"></i>';
+      if (id) {
+        return $el.append($("<a />").addClass("header-link").attr("href", "#" + id).html(icon));
+      }
+    });
+  });
+  
+  // configure Google Analytics
+  (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','//www.google-analytics.com/analytics.js','ga');
+
+  if (ga.hasOwnProperty('loaded') && ga.loaded === true) {
+    ga('create', 'UA-50934829-1', 'apache.org');
+    ga('send', 'pageview');
+  }
+</script>
+
+</head>
+<body style="padding-top: 100px">
+
+  <nav class="navbar navbar-default navbar-fixed-top">
+  <div class="container">
+    <div class="navbar-header">
+      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-items">
+        <span class="sr-only">Toggle navigation</span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+      </button>
+      <a href="/"><img id="nav-logo" alt="Apache Accumulo" class="img-responsive" src="/images/accumulo-logo.png" width="200"/></a>
+    </div>
+    <div class="collapse navbar-collapse" id="navbar-items">
+      <ul class="nav navbar-nav">
+        <li class="nav-link"><a href="/downloads">Download</a></li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Releases<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/release/accumulo-1.8.0/">1.8.0 (Latest)</a></li>
+          <li><a href="/release/accumulo-1.7.2/">1.7.2</a></li>
+          <li><a href="/release/accumulo-1.6.6/">1.6.6</a></li>
+          <li><a href="/release/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Documentation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/user-manual/">User Manuals</a></li>
+          <li><a href="/javadocs/">Javadocs</a></li>
+          <li><a href="/examples/">Examples</a></li>
+          <li><a href="/notable_features">Features</a></li>
+          <li><a href="/screenshots">Screenshots</a></li>
+          <li><a href="/papers">Papers &amp; Presentations</a></li>
+          <li><a href="/glossary">Glossary</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Community<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/get_involved">Get Involved</a></li>
+          <li><a href="/mailing_list">Mailing Lists</a></li>
+          <li><a href="/people">People</a></li>
+          <li><a href="/news">News Archive</a></li>
+          <li><a href="/projects">Community Projects</a></li>
+          <li><a href="/thanks">Thanks</a></li>
+          <li class="divider"></li>
+          <li class="dropdown-header">Governance</li>
+          <li><a href="/bylaws">Bylaws</a></li>
+          <li><a href="/governance/consensusBuilding">Consensus Building</a></li>
+          <li><a href="/governance/lazyConsensus">Lazy Consensus</a></li>
+          <li><a href="/governance/releasing">Releasing</a></li>
+          <li><a href="/governance/voting">Voting</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Development<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="https://issues.apache.org/jira/browse/ACCUMULO">Issue Tracker <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://github.com/apache/accumulo/pulls">Pull Requests <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://builds.apache.org/view/A/view/Accumulo">Jenkins Builds <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://travis-ci.org/apache/accumulo">TravisCI Builds <i class="fa fa-external-link"></i></a></li>
+          <li class="divider"></li>
+          <li class="dropdown-header">Guides</li>
+          <li><a href="/source">Source &amp; Guide</a></li>
+          <li><a href="/git">Git Workflow</a></li>
+          <li><a href="/versioning">Versioning</a></li>
+          <li><a href="/contrib">Contrib Projects</a></li>
+          <li><a href="/rb">Review Board</a></li>
+          <li><a href="/releasing">Making Releases</a></li>
+          <li><a href="/verifying_releases">Verifying Releases</a></li>
+        </ul>
+        </li>
+      </ul>
+      <ul class="nav navbar-nav navbar-right">
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Apache Software Foundation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="https://www.apache.org">Apache Homepage <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/licenses/LICENSE-2.0">License <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/sponsorship">Sponsorship <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/security">Security <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/thanks">Thanks <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/policies/conduct">Code of Conduct <i class="fa fa-external-link"></i></a></li>
+        </ul>
+        </li>
+      </ul>
+    </div>
+  </div>
+</nav>
+
+
+  <div class="container">
+    <div class="row">
+      <div class="col-md-12">
+
+        <div id="non-canonical" style="display: none; background-color: #F0E68C; padding-left: 1em;">
+          Visit the official site at: <a href="https://accumulo.apache.org">https://accumulo.apache.org</a>
+        </div>
+        <div id="content">
+          
+          <h1 class="title">Apache Accumulo 1.6.0</h1>
+          
+          <p>02 May 2014</p>
+
+<p>Apache Accumulo 1.6.0 adds some major new features and fixes many bugs.  This release contains changes from 609 issues contributed by 36 contributors and committers.</p>
+
+<p>Accumulo 1.6.0 runs on Hadoop 1, however Hadoop 2 with HA namenode is recommended for production systems.  In addition to HA, Hadoop 2 also offers better data durability guarantees, in the case when nodes lose power, than Hadoop 1.</p>
+
+<h2 id="notable-improvements">Notable Improvements</h2>
+
+<h3 id="multiple-volume-support">Multiple volume support</h3>
+
+<p><a href="https://research.google.com/archive/bigtable.html">BigTable’s</a> design allows for its internal metadata to automatically spread across multiple nodes.  Accumulo has followed this design and scales very well as a result.  There is one impediment to scaling though, and this is the HDFS namenode.  There are two problems with the namenode when it comes to scaling.  First, the namenode stores all of its filesystem metadata in memory on a single machine.  This introduces an upper bound on the number of files Accumulo can have.  Second, there is an upper bound on the number of file operations per second that a single namenode can support.  For example, a namenode can only support a few thousand delete or create file request per second.</p>
+
+<p>To overcome this bottleneck, support for multiple namenodes was added under <a href="https://issues.apache.org/jira/browse/ACCUMULO-118" title="Multiple namenode support">ACCUMULO-118</a>.  This change allows Accumulo to store its files across multiple namenodes.  To use this feature, place comma separated list of namenode URIs in the new <em>instance.volumes</em> configuration property in accumulo-site.xml.  When upgrading to 1.6.0 and multiple namenode support is desired, modify this setting <strong>only</strong> after a successful upgrade.</p>
+
+<h3 id="table-namespaces">Table namespaces</h3>
+
+<p>Administering an Accumulo instance with many tables is cumbersome.  To ease this, <a href="https://issues.apache.org/jira/browse/ACCUMULO-802" title="Table namespaces">ACCUMULO-802</a> introduced table namespaces which allow tables to be grouped into logical collections.  This allows configuration and permission changes to made to a namespace, which will apply to all of its tables.</p>
+
+<h3 id="conditional-mutations">Conditional Mutations</h3>
+
+<p>Accumulo now offers a way to make atomic read,modify,write row changes from the client side.  Atomic test and set row operations make this possible.  <a href="https://issues.apache.org/jira/browse/ACCUMULO-1000" title="Conditional Mutations">ACCUMULO-1000</a> added conditional mutations and a conditional writer.  A conditional mutation has tests on columns that must pass before any changes are made.  These test are executed in server processes while a row lock is held.  Below is a simple example of making atomic row changes using conditional mutations.</p>
+
+<ol>
+  <li>Read columns X,Y,SEQ into a,b,s from row R1 using an isolated scanner.</li>
+  <li>For row R1 write conditional mutation X=f(a),Y=g(b),SEQ=s+1 if SEQ==s.</li>
+  <li>If conditional mutation failed, then goto step 1.</li>
+</ol>
+
+<p>The only built in test that conditional mutations support are equality and isNull.  However, iterators can be configured on a conditional mutation to run before these test.  This makes it possible to implement any number of test such as less than, greater than, contains, etc.</p>
+
+<h3 id="encryption">Encryption</h3>
+
+<p>Encryption is still an experimental feature, but much progress has been made since 1.5.0.  Support for encrypting rfiles and write ahead logs were added in <a href="https://issues.apache.org/jira/browse/ACCUMULO-958" title="Support pluggable encryption in walogs">ACCUMULO-958</a> and <a href="https://issues.apache.org/jira/browse/ACCUMULO-980" title="Support pluggable codecs for RFile">ACCUMULO-980</a>.  Support for encrypting data over the wire using SSL was added in <a href="https://issues.apache.org/jira/browse/ACCUMULO-1009" title="Support encryption over the wire">ACCUMULO-1009</a>.</p>
+
+<p>When a tablet server fails, its write ahead logs are sorted and stored in HDFS.  In 1.6.0, encrypting these sorted write ahead logs is not supported.  <a href="https://issues.apache.org/jira/browse/ACCUMULO-981" title="support pluggable encryption when recovering write-ahead logs">ACCUMULO-981</a> is open to address this issue.</p>
+
+<h3 id="pluggable-compaction-strategies">Pluggable compaction strategies</h3>
+
+<p>One of the key elements of the <a href="https://research.google.com/archive/bigtable.html">BigTable</a> design is use of the <a href="https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.44.2782&amp;rep=rep1&amp;type=pdf">Log Structured Merge Tree</a>.  This entails sorting data in memory, writing out sorted files, and then later merging multiple sorted files into a single file.   These automatic merges happen in the background and Accumulo decides when to merge files based comparing relative sizes of files to a compaction ratio.  Before 1.6.0 adjusting the compaction ratio was the only way a user could control this process.  <a href="https://issues.apache.org/jira/browse/ACCUMULO-1451" title="Make Compaction triggers extensible">ACCUMULO-1451</a> introduces pluggable compaction strategies which allow users to choose when and what files to compact.  <a href="https://issues.apache.org/jira/browse/ACCUMULO-1808" title="Create compaction strategy that has size limit">ACCUMULO-1
 808</a> adds a compaction strategy that prevents compaction of files over a configurable size.</p>
+
+<h3 id="lexicoders">Lexicoders</h3>
+
+<p>Accumulo only sorts data lexicographically.  Getting something like a pair of (<em>String</em>,<em>Integer</em>) to sort correctly in Accumulo is tricky.  It’s tricky because you only want to compare the integers if the strings are equal.  It’s possible to make this sort properly in Accumulo if the data is encoded properly, but can be difficult.  To make this easier <a href="https://issues.apache.org/jira/browse/ACCUMULO-1336" title="Add lexicoders from Typo to Accumulo">ACCUMULO-1336</a> added Lexicoders to the Accumulo API.  Lexicoders provide an easy way to serialize data so that it sorts properly lexicographically.  Below is a simple example.</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>   PairLexicoder plex = new PairLexicoder(new StringLexicoder(), new IntegerLexicoder());
+   byte[] ba1 = plex.encode(new ComparablePair&lt;String, Integer&gt;("b",1));
+   byte[] ba2 = plex.encode(new ComparablePair&lt;String, Integer&gt;("aa",1));
+   byte[] ba3 = plex.encode(new ComparablePair&lt;String, Integer&gt;("a",2));
+   byte[] ba4 = plex.encode(new ComparablePair&lt;String, Integer&gt;("a",1)); 
+   byte[] ba5 = plex.encode(new ComparablePair&lt;String, Integer&gt;("aa",-3));
+
+   //sorting ba1,ba2,ba3,ba4, and ba5 lexicographically will result in the same order as sorting the ComparablePairs
+</code></pre>
+</div>
+
+<h3 id="locality-groups-in-memory">Locality groups in memory</h3>
+
+<p>In cases where a very small amount of data is stored in a locality group one would expect fast scans over that locality group.  However this was not always the case because recently written data stored in memory was not partitioned by locality group.  Therefore if a table had 100GB of data in memory and 1MB of that was in locality group A, then scanning A would have required reading all 100GB.  <a href="https://issues.apache.org/jira/browse/ACCUMULO-112" title="Partition data in memory by locality group">ACCUMULO-112</a> changes this and partitions data by locality group as its written.</p>
+
+<h3 id="service-ip-addresses">Service IP addresses</h3>
+
+<p>Previous versions of Accumulo always used IP addresses internally.  This could be problematic in virtual machine environments where IP addresses change.  In <a href="https://issues.apache.org/jira/browse/ACCUMULO-1585" title="Use FQDN/verbatim data from config files">ACCUMULO-1585</a> this was changed, now Accumulo uses the exact hostnames from its config files for internal addressing.</p>
+
+<p>All Accumulo processes running on a cluster are locatable via zookeeper.  Therefore using well known ports is not really required.  <a href="https://issues.apache.org/jira/browse/ACCUMULO-1664" title="Make all processes able to use random ports">ACCUMULO-1664</a> makes it possible to for all Accumulo processes to use random ports.  This makes it easier to run multiple Accumulo instances on a single node.</p>
+
+<p>While Hadoop <a href="https://wiki.apache.org/hadoop/HadoopIPv6">does not support IPv6 networks</a>, attempting to run on a system that does not have IPv6 completely disabled can cause strange failures. <a href="https://issues.apache.org/jira/browse/ACCUMULO-2262" title="Include java.net.preferIPv4Stack=true in process startup">ACCUMULO-2262</a> invokes the JVM-provided configuration parameter at process startup to prefer IPv4 over IPv6.</p>
+
+<h3 id="viewfs">ViewFS</h3>
+
+<p>Multiple bug-fixes were made to support running Accumulo over multiple HDFS instances using ViewFS. <a href="https://issues.apache.org/jira/browse/ACCUMULO-2047" title="Failures using viewfs with multiple namenodes">ACCUMULO-2047</a> is the parent
+ticket that contains numerous fixes to enable this support.</p>
+
+<h3 id="maven-plugin">Maven Plugin</h3>
+
+<p>This version of Accumulo is accompanied by a new maven plugin for testing client apps (<a href="https://issues.apache.org/jira/browse/ACCUMULO-1030" title="Create a Maven plugin to run MiniAccumuloCluster for integration testing">ACCUMULO-1030</a>). You can execute the accumulo-maven-plugin inside your project by adding the following to your pom.xml’s build plugins section:</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>  &lt;plugin&gt;
+    &lt;groupId&gt;org.apache.accumulo&lt;/groupId&gt;
+    &lt;artifactId&gt;accumulo-maven-plugin&lt;/artifactId&gt;
+    &lt;version&gt;1.6.0&lt;/version&gt;
+    &lt;configuration&gt;
+      &lt;instanceName&gt;plugin-it-instance&lt;/instanceName&gt;
+      &lt;rootPassword&gt;ITSecret&lt;/rootPassword&gt;
+    &lt;/configuration&gt;
+    &lt;executions&gt;
+      &lt;execution&gt;
+        &lt;id&gt;run-plugin&lt;/id&gt;
+        &lt;goals&gt;
+          &lt;goal&gt;start&lt;/goal&gt;
+          &lt;goal&gt;stop&lt;/goal&gt;
+        &lt;/goals&gt;
+      &lt;/execution&gt;
+    &lt;/executions&gt;
+  &lt;/plugin&gt;
+</code></pre>
+</div>
+
+<p>This plugin is designed to work in conjunction with the maven-failsafe-plugin. A small test instance of Accumulo will run during the pre-integration-test phase of the Maven build lifecycle, and will be stopped in the post-integration-test phase. Your integration tests, executed by maven-failsafe-plugin can access this instance with a MiniAccumuloInstance connector (the plugin uses MiniAccumuloInstance, internally), as in the following example:</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>  private static Connector conn;
+  
+  @BeforeClass
+  public static void setUp() throws Exception {
+    String instanceName = "plugin-it-instance";
+    Instance instance = new MiniAccumuloInstance(instanceName, new File("target/accumulo-maven-plugin/" + instanceName));
+    conn = instance.getConnector("root", new PasswordToken("ITSecret"));
+  }
+</code></pre>
+</div>
+
+<p>This plugin is quite limited, currently only supporting an instance name and a root user password as configuration parameters. Improvements are expected in future releases, so feedback is welcome and appreciated (file bugs/requests under the “maven-plugin” component in the Accumulo JIRA).</p>
+
+<h3 id="packaging">Packaging</h3>
+
+<p>One notable change that was made to the binary tarball is the purposeful omission of a pre-built copy of the Accumulo “native map” library.
+This shared library is used at ingest time to implement an off-JVM-heap sorted map that greatly increases ingest throughput while side-stepping
+issues such as JVM garbage collection pauses. In earlier releases, a pre-built copy of this shared library was included in the binary tarball; however, the decision was made to omit this due to the potential variance in toolchains on the target system.</p>
+
+<p>It is recommended that users invoke the provided build_native_library.sh before running Accumulo:</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>   $ACCUMULO_HOME/bin/build_native_library.sh
+</code></pre>
+</div>
+
+<p>Be aware that you will need a C++ compiler/toolchain installed to build this library. Check your GNU/Linux distribution documentation for the package manager command.</p>
+
+<h3 id="size-based-constraint-on-new-tables">Size-Based Constraint on New Tables</h3>
+
+<p>A Constraint is an interface that can determine if a Mutation should be applied or rejected server-side. After <a href="https://issues.apache.org/jira/browse/ACCUMULO-466">ACCUMULO-466</a>, new tables that are created in 1.6.0 will automatically have the <code class="highlighter-rouge">DefaultKeySizeConstraint</code> set.
+As performance can suffer when large Keys are inserted into a table, this Constraint will reject any Key that is larger than 1MB. If this constraint is undesired, it can be removed using the <code class="highlighter-rouge">constraint</code> shell
+command. See the help message on the command for more information.</p>
+
+<h3 id="other-notable-changes">Other notable changes</h3>
+
+<ul>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-842" title="Add FATE administration to shell">ACCUMULO-842</a> Added FATE administration to shell</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1042" title="Ctrl-C in shell terminates the process">ACCUMULO-1042</a> CTRL-C no longer kills shell</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1345" title="Provide feedback that a compaction is 'stuck'">ACCUMULO-1345</a> Stuck compactions now log a warning with a stack trace, tablet id, and filename.</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1442" title="Replace JLine with JLine2">ACCUMULO-1442</a> JLine2 support was added to the shell.  This adds features like history search and other nice things GNU Readline has.</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1481" title="Root tablet in its own table">ACCUMULO-1481</a> The root tablet is now the root table.</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1537" title="convert auto tests to integration tests, where possible for continuous integration">ACCUMULO-1537</a> Python functional test were converted to maven Integration test that use MAC</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1566" title="Add ability for client to start Scanner readahead immediately">ACCUMULO-1566</a> When read-ahead starts in the scanner is now configurable.</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1650" title="Make it easier to find and run admin commands">ACCUMULO-1650</a> Made common admin commands easier to run, try <code class="highlighter-rouge">bin/accumulo admin --help</code></li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1667" title="Allow On/Offline Command To Execute Synchronously">ACCUMULO-1667</a> Added a synchronous version of online and offline table</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1706" title="Admin Utilities Should Respect EPIPE">ACCUMULO-1706</a> Admin utilities now respect EPIPE</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1833" title="MultiTableBatchWriterImpl.getBatchWriter() is not performant for multiple threads">ACCUMULO-1833</a> Multitable batch writer is faster now when used by multiple threads</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1933" title="Make unit on memory parameters case-insensitive">ACCUMULO-1933</a> Lower case can be given for memory units now.</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1985" title="Cannot bind monitor on remote host to all interfaces">ACCUMULO-1985</a> Configuration to bind Monitor on all network interfaces.</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2128" title="Provide resource cleanup via static utility rather than Instance.close">ACCUMULO-2128</a> Provide resource cleanup via static utility</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2360" title="Need a way to configure TNonblockingServer.maxReadBufferBytes to prevent OOMs">ACCUMULO-2360</a> Allow configuration of the maximum thrift message size a server will read.</li>
+</ul>
+
+<h2 id="notable-bug-fixes">Notable Bug Fixes</h2>
+
+<ul>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-324" title="System/site constraints and iterators should NOT affect the METADATA table">ACCUMULO-324</a> System/site constraints and iterators should NOT affect the METADATA table</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-335" title="Batch scanning over the !METADATA table can cause issues">ACCUMULO-335</a> Can’t batchscan over the !METADATA table</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-391" title="Multi-table input format">ACCUMULO-391</a> Added support for reading from multiple tables in a Map Reduce job.</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1018" title="Client does not give informative message when user can not read table">ACCUMULO-1018</a> Client does not give informative message when user can not read table</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1492" title="bin/accumulo should follow symbolic links">ACCUMULO-1492</a> bin/accumulo should follow symbolic links</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1572" title="Single node zookeeper failure kills connected accumulo servers">ACCUMULO-1572</a> Single node zookeeper failure kills connected Accumulo servers</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1661" title="AccumuloInputFormat cannot fetch empty column family">ACCUMULO-1661</a> AccumuloInputFormat cannot fetch empty column family</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1696" title="Deep copy in the compaction scope iterators can throw off the stats">ACCUMULO-1696</a> Deep copy in the compaction scope iterators can throw off the stats</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1698" title="stop-here doesn't consider system hostname">ACCUMULO-1698</a> stop-here doesn’t consider system hostname</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1901" title="start-here.sh starts only one GC process even if more are defined">ACCUMULO-1901</a> start-here.sh starts only one GC process even if more are defined</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1920" title="monitor not seeing zookeeper updates">ACCUMULO-1920</a> Monitor was not seeing zookeeper updates for tables</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1994" title="Proxy does not handle Key timestamps correctly">ACCUMULO-1994</a> Proxy does not handle Key timestamps correctly</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2037" title="Tablets not assigned to last location">ACCUMULO-2037</a> Tablets are now assigned to the last location</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2174" title="VFS Classloader has potential to collide localized resources">ACCUMULO-2174</a> VFS Classloader has potential to collide localized resources</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2225" title="Need to better handle DNS failure propagation from Hadoop">ACCUMULO-2225</a> Need to better handle DNS failure propagation from Hadoop</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2234" title="Cannot run offline mapreduce over non-default instance.dfs.dir value">ACCUMULO-2234</a> Cannot run offline mapreduce over non-default instance.dfs.dir value</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2261" title="duplicate locations">ACCUMULO-2261</a> Duplicate locations for a Tablet.</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2334" title="Lacking fallback when ACCUMULO_LOG_HOST isn't set">ACCUMULO-2334</a> Lacking fallback when ACCUMULO_LOG_HOST isn’t set</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2408" title="metadata table not assigned after root table is loaded">ACCUMULO-2408</a> metadata table not assigned after root table is loaded</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2519" title="FATE operation failed across upgrade">ACCUMULO-2519</a> FATE operation failed across upgrade</li>
+</ul>
+
+<h2 id="known-issues">Known Issues</h2>
+
+<h3 id="slower-writes-than-previous-accumulo-versions">Slower writes than previous Accumulo versions</h3>
+
+<p>When using Accumulo 1.6 and Hadoop 2, Accumulo will call hsync() on HDFS.
+Calling hsync improves durability by ensuring data is on disk (where other older 
+Hadoop versions might lose data in the face of power failure); however, calling
+hsync frequently does noticeably slow writes. A simple work around is to increase 
+the value of the tserver.mutation.queue.max configuration parameter via accumulo-site.xml.</p>
+
+<p>A value of “4M” is a better recommendation, and memory consumption will increase by
+the number of concurrent writers to that TabletServer. For example, a value of 4M with
+50 concurrent writers would equate to approximately 200M of Java heap being used for
+mutation queues.</p>
+
+<p>For more information, see <a href="https://issues.apache.org/jira/browse/ACCUMULO-1950" title="Reduce the number of calls to hsync">ACCUMULO-1950</a> and <a href="https://issues.apache.org/jira/browse/ACCUMULO-1905?focusedCommentId=13915208&amp;page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-13915208">this comment</a>.</p>
+
+<p>Another possible cause of slower writes is the change in write ahead log replication 
+between 1.4 and 1.5.  Accumulo 1.4. defaulted to two loggers servers.  Accumulo 1.5 and 1.6 store 
+write ahead logs in HDFS and default to using three datanodes.</p>
+
+<h3 id="batchwriter-hold-time-error">BatchWriter hold time error</h3>
+
+<p>If a <code class="highlighter-rouge">BatchWriter</code> fails with <code class="highlighter-rouge">MutationsRejectedException</code> and the  message contains
+<code class="highlighter-rouge">"# server errors 1"</code> then it may be <a href="https://issues.apache.org/jira/browse/ACCUMULO-2388">ACCUMULO-2388</a>.  To confirm this look in the tablet server logs 
+for <code class="highlighter-rouge">org.apache.accumulo.tserver.HoldTimeoutException</code> around the time the <code class="highlighter-rouge">BatchWriter</code> failed.
+If this is happening often a possible work around is to set <code class="highlighter-rouge">general.rpc.timeout</code> to <code class="highlighter-rouge">240s</code>.</p>
+
+<h3 id="other-known-issues">Other known issues</h3>
+
+<ul>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-981" title="support pluggable encryption when recovering write-ahead logs">ACCUMULO-981</a> Sorted write ahead logs are not encrypted.</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1507" title="Dynamic Classloader still can't keep proper track of jars">ACCUMULO-1507</a> Dynamic Classloader still can’t keep proper track of jars</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1588" title="Monitor XML and JSON differ">ACCUMULO-1588</a> Monitor XML and JSON differ</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1628" title="NPE on deep copied dumped memory iterator">ACCUMULO-1628</a> NPE on deep copied dumped memory iterator</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1708" title="Error during minor compaction left tserver in bad state">ACCUMULO-1708</a> <a href="https://issues.apache.org/jira/browse/ACCUMULO-2495" title="OOM exception didn't bring down tserver">ACCUMULO-2495</a> Out of memory errors do not always kill tservers leading to unexpected behavior</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2008" title="Block cache reserves section for in-memory blocks">ACCUMULO-2008</a> Block cache reserves section for in-memory blocks</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2059" title="Namespace constraints easily get clobbered by table constraints">ACCUMULO-2059</a> Namespace constraints easily get clobbered by table constraints</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2677" title="Single node bottle neck during map reduce">ACCUMULO-2677</a> Tserver failure during map reduce reading from table can cause sub-optimal performance</li>
+</ul>
+
+<h2 id="documentation-updates">Documentation updates</h2>
+
+<ul>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1218" title="document the recovery from a failed zookeeper">ACCUMULO-1218</a> document the recovery from a failed zookeeper</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1375" title="Update README files in proxy module.">ACCUMULO-1375</a> Update README files in proxy module.</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1407" title="Fix documentation for deleterows">ACCUMULO-1407</a> Fix documentation for deleterows</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1428" title="Document native maps">ACCUMULO-1428</a> Document native maps</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1946" title="Include dfs.datanode.synconclose in hdfs configuration documentation">ACCUMULO-1946</a> Include dfs.datanode.synconclose in hdfs configuration documentation</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-1956" title="Add section on decomissioning or adding nodes to an Accumulo cluster">ACCUMULO-1956</a> Add section on decomissioning or adding nodes to an Accumulo cluster</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2441" title="Document internal state stored in RFile names">ACCUMULO-2441</a> Document internal state stored in RFile names</li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2590" title="Update public API in readme to clarify what's included">ACCUMULO-2590</a> Update public API in readme to clarify what’s included</li>
+</ul>
+
+<h2 id="api-changes">API Changes</h2>
+
+<p>The following deprecated methods were removed in <a href="https://issues.apache.org/jira/browse/ACCUMULO-1533">ACCUMULO-1533</a></p>
+
+<ul>
+  <li>Many map reduce methods deprecated in <a href="https://issues.apache.org/jira/browse/ACCUMULO-769">ACCUMULO-769</a> were removed</li>
+  <li><code class="highlighter-rouge">SecurityErrorCode o.a.a.core.client.AccumuloSecurityException.getErrorCode()</code> <em>deprecated in <a href="https://issues.apache.org/jira/browse/ACCUMULO-970">ACCUMULO-970</a></em></li>
+  <li><code class="highlighter-rouge">Connector o.a.a.core.client.Instance.getConnector(AuthInfo)</code> <em>deprecated in <a href="https://issues.apache.org/jira/browse/ACCUMULO-1024">ACCUMULO-1024</a></em></li>
+  <li><code class="highlighter-rouge">Connector o.a.a.core.client.ZooKeeperInstance.getConnector(AuthInfo)</code> <em>deprecated in <a href="https://issues.apache.org/jira/browse/ACCUMULO-1024">ACCUMULO-1024</a></em></li>
+  <li><code class="highlighter-rouge">static String o.a.a.core.client.ZooKeeperInstance.getInstanceIDFromHdfs(Path)</code> <em>deprecated in <a href="https://issues.apache.org/jira/browse/ACCUMULO-1">ACCUMULO-1</a></em></li>
+  <li><code class="highlighter-rouge">static String ZooKeeperInstance.lookupInstanceName (ZooCache,UUID)</code> <em>deprecated in <a href="https://issues.apache.org/jira/browse/ACCUMULO-765">ACCUMULO-765</a></em></li>
+  <li><code class="highlighter-rouge">void o.a.a.core.client.ColumnUpdate.setSystemTimestamp(long)</code>  <em>deprecated in <a href="https://issues.apache.org/jira/browse/ACCUMULO-786">ACCUMULO-786</a></em></li>
+</ul>
+
+<h2 id="testing">Testing</h2>
+
+<p>Below is a list of all platforms that 1.6.0 was tested against by developers. Each Apache Accumulo release
+has a set of tests that must be run before the candidate is capable of becoming an official release. That list includes the following:</p>
+
+<ol>
+  <li>Successfully run all unit tests</li>
+  <li>Successfully run all functional test (test/system/auto)</li>
+  <li>Successfully complete two 24-hour RandomWalk tests (LongClean module), with and without “agitation”</li>
+  <li>Successfully complete two 24-hour Continuous Ingest tests, with and without “agitation”, with data verification</li>
+  <li>Successfully complete two 72-hour Continuous Ingest tests, with and without “agitation”</li>
+</ol>
+
+<p>Each unit and functional test only runs on a single node, while the RandomWalk and Continuous Ingest tests run 
+on any number of nodes. <em>Agitation</em> refers to randomly restarting Accumulo processes and Hadoop Datanode processes,
+and, in HDFS High-Availability instances, forcing NameNode failover.</p>
+
+<p>The following acronyms are used in the test testing table.</p>
+
+<ul>
+  <li>CI : Continuous Ingest</li>
+  <li>HA : High-Availability</li>
+  <li>IT : Integration test, run w/ <code class="highlighter-rouge">mvn verify</code></li>
+  <li>RW : Random Walk</li>
+</ul>
+
+<table id="release_notes_testing" class="table">
+  <thead>
+    <tr>
+      <th>OS</th>
+      <th>Java</th>
+      <th>Hadoop</th>
+      <th>Nodes</th>
+      <th>ZooKeeper</th>
+      <th>HDFS HA</th>
+      <th>Version/Commit hash</th>
+      <th>Tests</th>
+    </tr>
+  </thead>
+  <tbody>
+    <tr>
+      <td>CentOS 6.5</td>
+      <td>CentOS OpenJDK 1.7</td>
+      <td>Apache 2.2.0</td>
+      <td>20 EC2 nodes</td>
+      <td>Apache 3.4.5</td>
+      <td>No</td>
+      <td>1.6.0 RC1 + ACCUMULO_2668 patch</td>
+      <td>24-hour CI w/o agitation. Verified.</td>
+    </tr>
+    <tr>
+      <td>CentOS 6.5</td>
+      <td>CentOS OpenJDK 1.7</td>
+      <td>Apache 2.2.0</td>
+      <td>20 EC2 nodes</td>
+      <td>Apache 3.4.5</td>
+      <td>No</td>
+      <td>1.6.0 RC2</td>
+      <td>24-hour RW (Conditional.xml module) w/o agitation</td>
+    </tr>
+    <tr>
+      <td>CentOS 6.5</td>
+      <td>CentOS OpenJDK 1.7</td>
+      <td>Apache 2.2.0</td>
+      <td>20 EC2 nodes</td>
+      <td>Apache 3.4.5</td>
+      <td>No</td>
+      <td>1.6.0 RC5</td>
+      <td>24-hour CI w/ agitation. Verified.</td>
+    </tr>
+    <tr>
+      <td>CentOS 6.5</td>
+      <td>CentOS OpenJDK 1.6 and 1.7</td>
+      <td>Apache 1.2.1, 2.2.0</td>
+      <td>Single</td>
+      <td>Apache 3.3.6</td>
+      <td>No</td>
+      <td>1.6.0 RC5</td>
+      <td>All unit and ITs w/  <code class="highlighter-rouge">-Dhadoop.profile=2</code> and <code class="highlighter-rouge">-Dhadoop.profile=1</code></td>
+    </tr>
+    <tr>
+      <td>Gentoo</td>
+      <td>Sun JDK 1.6.0_45</td>
+      <td>Apache 1.2.1, 2.2.0, 2.3.0, 2.4.0</td>
+      <td>Single</td>
+      <td>Apache 3.4.5</td>
+      <td>No</td>
+      <td>1.6.0 RC5</td>
+      <td>All unit and ITs. 2B entries ingested/verified with CI</td>
+    </tr>
+    <tr>
+      <td>CentOS 6.4</td>
+      <td>Sun JDK 1.6.0_31</td>
+      <td>CDH 4.5.0</td>
+      <td>7</td>
+      <td>CDH 4.5.0</td>
+      <td>Yes</td>
+      <td>1.6.0 RC4 and RC5</td>
+      <td>24-hour RW (LongClean) with and without agitation</td>
+    </tr>
+    <tr>
+      <td>CentOS 6.4</td>
+      <td>Sun JDK 1.6.0_31</td>
+      <td>CDH 4.5.0</td>
+      <td>7</td>
+      <td>CDH 4.5.0</td>
+      <td>Yes</td>
+      <td>3a1b38</td>
+      <td>72-hour CI with and without agitation. Verified.</td>
+    </tr>
+    <tr>
+      <td>CentOS 6.4</td>
+      <td>Sun JDK 1.6.0_31</td>
+      <td>CDH 4.5.0</td>
+      <td>7</td>
+      <td>CDH 4.5.0</td>
+      <td>Yes</td>
+      <td>1.6.0 RC2</td>
+      <td>24-hour CI without agitation. Verified.</td>
+    </tr>
+    <tr>
+      <td>CentOS 6.4</td>
+      <td>Sun JDK 1.6.0_31</td>
+      <td>CDH 4.5.0</td>
+      <td>7</td>
+      <td>CDH 4.5.0</td>
+      <td>Yes</td>
+      <td>1.6.0 RC3</td>
+      <td>24-hour CI with agitation. Verified.</td>
+    </tr>
+  </tbody>
+</table>
+
+
+
+<p><strong>View all releases in the <a href="/release/">archive</a></strong></p>
+
+        </div>
+
+        
+<footer>
+
+  <p><a href="https://www.apache.org"><img src="/images/feather-small.gif" alt="Apache Software Foundation" id="asf-logo" height="100" /></a></p>
+
+  <p>Copyright © 2011-2016 The Apache Software Foundation. Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+
+</footer>
+
+
+      </div>
+    </div>
+  </div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/accumulo/blob/c0655661/release/accumulo-1.6.1/index.html
----------------------------------------------------------------------
diff --git a/release/accumulo-1.6.1/index.html b/release/accumulo-1.6.1/index.html
new file mode 100644
index 0000000..ae5f419
--- /dev/null
+++ b/release/accumulo-1.6.1/index.html
@@ -0,0 +1,375 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<!--
+    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.
+-->
+<meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/paper/bootstrap.min.css" rel="stylesheet" integrity="sha384-awusxf8AUojygHf2+joICySzB780jVvQaVCAt1clU3QsyAitLGul28Qxb2r1e5g+" crossorigin="anonymous">
+<link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
+<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.css">
+<link href="/css/accumulo.css" rel="stylesheet" type="text/css">
+
+<title>Apache Accumulo 1.6.1</title>
+
+<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
+<script type="text/javascript" src="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.js"></script>
+<script>
+  // show location of canonical site if not currently on the canonical site
+  $(function() {
+    var host = window.location.host;
+    if (typeof host !== 'undefined' && host !== 'accumulo.apache.org') {
+      $('#non-canonical').show();
+    }
+  });
+
+  $(function() {
+    // decorate section headers with anchors
+    return $("h2, h3, h4, h5, h6").each(function(i, el) {
+      var $el, icon, id;
+      $el = $(el);
+      id = $el.attr('id');
+      icon = '<i class="fa fa-link"></i>';
+      if (id) {
+        return $el.append($("<a />").addClass("header-link").attr("href", "#" + id).html(icon));
+      }
+    });
+  });
+  
+  // configure Google Analytics
+  (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','//www.google-analytics.com/analytics.js','ga');
+
+  if (ga.hasOwnProperty('loaded') && ga.loaded === true) {
+    ga('create', 'UA-50934829-1', 'apache.org');
+    ga('send', 'pageview');
+  }
+</script>
+
+</head>
+<body style="padding-top: 100px">
+
+  <nav class="navbar navbar-default navbar-fixed-top">
+  <div class="container">
+    <div class="navbar-header">
+      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-items">
+        <span class="sr-only">Toggle navigation</span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+      </button>
+      <a href="/"><img id="nav-logo" alt="Apache Accumulo" class="img-responsive" src="/images/accumulo-logo.png" width="200"/></a>
+    </div>
+    <div class="collapse navbar-collapse" id="navbar-items">
+      <ul class="nav navbar-nav">
+        <li class="nav-link"><a href="/downloads">Download</a></li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Releases<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/release/accumulo-1.8.0/">1.8.0 (Latest)</a></li>
+          <li><a href="/release/accumulo-1.7.2/">1.7.2</a></li>
+          <li><a href="/release/accumulo-1.6.6/">1.6.6</a></li>
+          <li><a href="/release/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Documentation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/user-manual/">User Manuals</a></li>
+          <li><a href="/javadocs/">Javadocs</a></li>
+          <li><a href="/examples/">Examples</a></li>
+          <li><a href="/notable_features">Features</a></li>
+          <li><a href="/screenshots">Screenshots</a></li>
+          <li><a href="/papers">Papers &amp; Presentations</a></li>
+          <li><a href="/glossary">Glossary</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Community<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/get_involved">Get Involved</a></li>
+          <li><a href="/mailing_list">Mailing Lists</a></li>
+          <li><a href="/people">People</a></li>
+          <li><a href="/news">News Archive</a></li>
+          <li><a href="/projects">Community Projects</a></li>
+          <li><a href="/thanks">Thanks</a></li>
+          <li class="divider"></li>
+          <li class="dropdown-header">Governance</li>
+          <li><a href="/bylaws">Bylaws</a></li>
+          <li><a href="/governance/consensusBuilding">Consensus Building</a></li>
+          <li><a href="/governance/lazyConsensus">Lazy Consensus</a></li>
+          <li><a href="/governance/releasing">Releasing</a></li>
+          <li><a href="/governance/voting">Voting</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Development<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="https://issues.apache.org/jira/browse/ACCUMULO">Issue Tracker <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://github.com/apache/accumulo/pulls">Pull Requests <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://builds.apache.org/view/A/view/Accumulo">Jenkins Builds <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://travis-ci.org/apache/accumulo">TravisCI Builds <i class="fa fa-external-link"></i></a></li>
+          <li class="divider"></li>
+          <li class="dropdown-header">Guides</li>
+          <li><a href="/source">Source &amp; Guide</a></li>
+          <li><a href="/git">Git Workflow</a></li>
+          <li><a href="/versioning">Versioning</a></li>
+          <li><a href="/contrib">Contrib Projects</a></li>
+          <li><a href="/rb">Review Board</a></li>
+          <li><a href="/releasing">Making Releases</a></li>
+          <li><a href="/verifying_releases">Verifying Releases</a></li>
+        </ul>
+        </li>
+      </ul>
+      <ul class="nav navbar-nav navbar-right">
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Apache Software Foundation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="https://www.apache.org">Apache Homepage <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/licenses/LICENSE-2.0">License <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/sponsorship">Sponsorship <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/security">Security <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/thanks">Thanks <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/policies/conduct">Code of Conduct <i class="fa fa-external-link"></i></a></li>
+        </ul>
+        </li>
+      </ul>
+    </div>
+  </div>
+</nav>
+
+
+  <div class="container">
+    <div class="row">
+      <div class="col-md-12">
+
+        <div id="non-canonical" style="display: none; background-color: #F0E68C; padding-left: 1em;">
+          Visit the official site at: <a href="https://accumulo.apache.org">https://accumulo.apache.org</a>
+        </div>
+        <div id="content">
+          
+          <h1 class="title">Apache Accumulo 1.6.1</h1>
+          
+          <p>25 Sep 2014</p>
+
+<p>Apache Accumulo 1.6.1 is a maintenance release on the 1.6 version branch.
+This release contains changes from over 175 issues, comprised of bug-fixes, performance
+improvements and better test cases. As this is a maintenance release, Apache Accumulo
+1.6.1 has no client API  incompatibilities over Apache Accumulo 1.6.0. Users of 1.6.0
+are strongly encouraged to update as soon as possible to benefit from the improvements.</p>
+
+<p>New users are encouraged to use this release over 1.6.0 or any other older releases. For
+information about improvements since Accumulo 1.5, see the <a href="/release_notes/1.6.0">1.6.0 release notes</a>.</p>
+
+<h2 id="performance-improvements">Performance Improvements</h2>
+
+<p>Apache Accumulo 1.6.1 includes a number of performance-related fixes over previous versions.
+Many of these improvements were also included in the recently released Apache Accumulo 1.5.2.</p>
+
+<h3 id="write-ahead-log-sync-performance">Write-Ahead Log sync performance</h3>
+
+<p>The Write-Ahead Log (WAL) files are used to ensure durability of updates made to Accumulo.
+A sync is called on the file in HDFS to make sure that the changes to the WAL are persisted
+to disk, which allows Accumulo to recover in the case of failure. <a href="https://issues.apache.org/jira/browse/ACCUMULO-2766">ACCUMULO-2766</a> fixed
+an issue where an operation against a WAL would unnecessarily wait for multiple syncs, slowing
+down the ingest on the system.</p>
+
+<h3 id="minor-compactions-not-aggressive-enough">Minor-Compactions not aggressive enough</h3>
+
+<p>On a system with ample memory provided to Accumulo, long hold-times were observed which
+blocks the ingest of new updates. Trying to free more server-side memory by running minor
+compactions more frequently increased the overall throughput on the node. These changes
+were made in <a href="https://issues.apache.org/jira/browse/ACCUMULO-2905">ACCUMULO-2905</a>.</p>
+
+<h3 id="heapiterator-optimization">HeapIterator optimization</h3>
+
+<p>Iterators, a notable feature of Accumulo, are provided to users as a server-side programming
+construct, but are also used internally for numerous server operations. One of these system iterator 
+is the HeapIterator which implements a PriorityQueue of other Iterators. One way this iterator is
+used is to merge multiple files in HDFS to present a single, sorted stream of Key-Value pairs. <a href="https://issues.apache.org/jira/browse/ACCUMULO-2827">ACCUMULO-2827</a>
+introduces a performance optimization to the HeapIterator which can improve the speed of the
+HeapIterator in common cases.</p>
+
+<h3 id="write-ahead-log-sync-implementation">Write-Ahead log sync implementation</h3>
+
+<p>In Hadoop-2, two implementations of sync are provided: hflush and hsync. Both of these
+methods provide a way to request that the datanodes write the data to the underlying
+medium and not just hold it in memory (the <em>fsync</em> syscall). While both of these methods
+inform the Datanodes to sync the relevant block(s), <em>hflush</em> does not wait for acknowledgement
+from the Datanodes that the sync finished, where <em>hsync</em> does. To provide the most reliable system
+“out of the box”, Accumulo defaults to <em>hsync</em> so that your data is as secure as possible in 
+a variety of situations (notably, unexpected power outages).</p>
+
+<p>The downside is that performance tends to suffer because waiting for a sync to disk is a very
+expensive operation. <a href="https://issues.apache.org/jira/browse/ACCUMULO-2842">ACCUMULO-2842</a> introduces a new system property, tserver.wal.sync.method,
+that lets users to change the HDFS sync implementation from <em>hsync</em> to <em>hflush</em>. Using <em>hflush</em> instead
+of <em>hsync</em> may result in about a 30% increase in ingest performance.</p>
+
+<p>For users upgrading from Hadoop-1 or Hadoop-0.20 releases, <em>hflush</em> is the equivalent of how
+sync was implemented in these older versions of Hadoop and should give comparable performance.</p>
+
+<h2 id="other-improvements">Other improvements</h2>
+
+<h3 id="use-of-hadoop-credentialproviders">Use of Hadoop CredentialProviders</h3>
+
+<p>Apache Hadoop 2.6.0 introduced a new API aimed at providing ways to separate sensitive values
+from being stored in plaintext as a part of <a href="https://issues.apache.org/jira/browse/HADOOP-10607">HADOOP-10607</a>. Accumulo has had two sensitive
+configuration properties stored in <em>accumulo-site.xml</em> for every standard installation: instance.secret
+and trace.token.property.password. If either of these properties are compromised, it could lead to
+unwanted access of Accumulo. <a href="https://issues.apache.org/jira/browse/ACCUMULO-2464">ACCUMULO-2464</a> modifies Accumulo so that it can stored any sensitive
+configuration properties in a Hadoop CredentialProvider. With sensitive values removed from accumulo-site.xml,
+it can be shared without concern and security can be focused solely on the CredentialProvider.</p>
+
+<h2 id="notable-bug-fixes">Notable Bug Fixes</h2>
+
+<h3 id="add-configurable-maximum-frame-size-to-apache-thrift-proxy">Add configurable maximum frame size to Apache Thrift proxy</h3>
+
+<p>The Thrift proxy server was subject to memory exhaustion, typically
+due to bad input, where the server would attempt to allocate a very large
+buffer and die in the process. <a href="https://issues.apache.org/jira/browse/ACCUMULO-2658">ACCUMULO-2658</a> introduces a configuration
+parameter, like <a href="https://issues.apache.org/jira/browse/ACCUMULO-2360">ACCUMULO-2360</a>, to prevent this error.</p>
+
+<h3 id="offline-tables-can-prevent-tablet-balancing">Offline tables can prevent tablet balancing</h3>
+
+<p>Before 1.6.1, when a table with many tablets was created, ingested into, and
+taken offline, tablet balancing may have stoppped. This would happen if there
+were tablet migrations for the table, because the migrations couldn’t occur.
+The balancer will not run when there are outstanding migrations; therefore, a
+system could become unbalanced. <a href="https://issues.apache.org/jira/browse/ACCUMULO-2694">ACCUMULO-2694</a> introduces a fix to ensure
+that offline tables do not block balancing and improves the server-side
+logging.</p>
+
+<h3 id="miniaccumulocluster-process-management">MiniAccumuloCluster process management</h3>
+
+<p>MiniAccumuloCluster had a few issues which could cause deadlock or a method that
+never returns. Most of these are related to management of the Accumulo processes
+(<a href="https://issues.apache.org/jira/browse/ACCUMULO-2764">ACCUMULO-2764</a>, <a href="https://issues.apache.org/jira/browse/ACCUMULO-2985">ACCUMULO-2985</a>, and <a href="https://issues.apache.org/jira/browse/ACCUMULO-3055">ACCUMULO-3055</a>).</p>
+
+<h3 id="iteratorsettings-not-correctly-serialized-in-rangeinputsplit">IteratorSettings not correctly serialized in RangeInputSplit</h3>
+
+<p>The Writable interface methods on the RangeInputSplit class accidentally omitted
+calls to serialize the IteratorSettings configured for the Job. <a href="https://issues.apache.org/jira/browse/ACCUMULO-2962">ACCUMULO-2962</a>
+fixes the serialization and adds some additional tests.</p>
+
+<h3 id="constraint-violation-causes-hung-scans">Constraint violation causes hung scans</h3>
+
+<p>A failed bulk import transaction had the ability to create an infinitely retrying
+loop due to a constraint violation. This directly prevents scans from completing,
+but will also hang compactions. <a href="https://issues.apache.org/jira/browse/ACCUMULO-3096">ACCUMULO-3096</a> fixes the issue so that the
+constraint no longer hangs the entire system.</p>
+
+<h3 id="unable-to-upgrade-cleanly-from-15">Unable to upgrade cleanly from 1.5</h3>
+
+<p>When upgrading a table from 1.5.1 to 1.6.0, a user experienced an error where the table
+never came online. <a href="https://issues.apache.org/jira/browse/ACCUMULO-2974">ACCUMULO-2974</a> fixes an issue from the change of file references
+stored as absolute paths instead of relative paths in the Accumulo metadata table.</p>
+
+<h3 id="guava-dependency-changed">Guava dependency changed</h3>
+
+<p><a href="https://issues.apache.org/jira/browse/ACCUMULO-3100">ACCUMULO-3100</a> lowered the dependency on Guava from 15.0 to 14.0.1. This dependency
+now matches what Hadoop is depending on for the 2.x.y version line. Depending on a newer
+version of Guava introduces many issues stemming from deprecated classes in use by Hadoop
+which have been removed. While installations of Accumulo will likely work as expected with
+newer versions of Guava on the classpath (because the Hadoop processes will have their own
+classpath), use of MiniDfsClusters with the new Guava version will result in errors.</p>
+
+<p>Users can attempt to use a newer version of Guava on the Accumulo server classpath; however,
+the success is dependent on Hadoop client libraries not using (missing) Guava methods internally.</p>
+
+<h3 id="scanners-eat-interruptedexception">Scanners eat InterruptedException</h3>
+
+<p>Scanners previously consumed InterruptedExceptions and did not exit after. In multi-threaded
+environments, this is very problematic as there is no means to stop the Scanner from reading data.
+<a href="https://issues.apache.org/jira/browse/ACCUMULO-3030">ACCUMULO-3030</a> fixes the Scanner so that interrupts are observed and the Scanner exits as expected.</p>
+
+<h2 id="documentation">Documentation</h2>
+
+<p>The following documentation updates were made:</p>
+
+<ul>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2767">ACCUMULO-2767</a></li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2796">ACCUMULO-2796</a></li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2919">ACCUMULO-2919</a></li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-3008">ACCUMULO-3008</a></li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2874">ACCUMULO-2874</a></li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-2821">ACCUMULO-2821</a></li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-3097">ACCUMULO-3097</a></li>
+  <li><a href="https://issues.apache.org/jira/browse/ACCUMULO-3097">ACCUMULO-3097</a></li>
+</ul>
+
+<h2 id="testing">Testing</h2>
+
+<p>Each unit and functional test only runs on a single node, while the RandomWalk and Continuous Ingest tests run 
+on any number of nodes. <em>Agitation</em> refers to randomly restarting Accumulo processes and Hadoop Datanode processes,
+and, in HDFS High-Availability instances, forcing NameNode failover.</p>
+
+<table id="release_notes_testing" class="table">
+  <thead>
+    <tr>
+      <th>OS</th>
+      <th>Hadoop</th>
+      <th>Nodes</th>
+      <th>ZooKeeper</th>
+      <th>HDFS HA</th>
+      <th>Tests</th>
+    </tr>
+  </thead>
+  <tbody>
+    <tr>
+      <td>Gentoo</td>
+      <td>Apache 2.6.0-SNAPSHOT</td>
+      <td>2</td>
+      <td>Apache 3.4.5</td>
+      <td>No</td>
+      <td>Unit and Functional Tests, ContinuousIngest w/ verification (2B entries)</td>
+    </tr>
+    <tr>
+      <td>CentOS 6</td>
+      <td>Apache 2.3.0</td>
+      <td>20</td>
+      <td>Apache 3.4.5</td>
+      <td>No</td>
+      <td>24/hr RandomWalk, ContinuousIngest w/ verification w/ and w/o agitation (17B entries), 24hr Randomwalk test</td>
+    </tr>
+  </tbody>
+</table>
+
+
+
+<p><strong>View all releases in the <a href="/release/">archive</a></strong></p>
+
+        </div>
+
+        
+<footer>
+
+  <p><a href="https://www.apache.org"><img src="/images/feather-small.gif" alt="Apache Software Foundation" id="asf-logo" height="100" /></a></p>
+
+  <p>Copyright © 2011-2016 The Apache Software Foundation. Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+
+</footer>
+
+
+      </div>
+    </div>
+  </div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/accumulo/blob/c0655661/release/accumulo-1.6.2/index.html
----------------------------------------------------------------------
diff --git a/release/accumulo-1.6.2/index.html b/release/accumulo-1.6.2/index.html
new file mode 100644
index 0000000..d4db6a4
--- /dev/null
+++ b/release/accumulo-1.6.2/index.html
@@ -0,0 +1,380 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+<!--
+    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.
+-->
+<meta charset="utf-8">
+<meta http-equiv="X-UA-Compatible" content="IE=edge">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<link href="https://maxcdn.bootstrapcdn.com/bootswatch/3.3.7/paper/bootstrap.min.css" rel="stylesheet" integrity="sha384-awusxf8AUojygHf2+joICySzB780jVvQaVCAt1clU3QsyAitLGul28Qxb2r1e5g+" crossorigin="anonymous">
+<link href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" rel="stylesheet">
+<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.css">
+<link href="/css/accumulo.css" rel="stylesheet" type="text/css">
+
+<title>Apache Accumulo 1.6.2</title>
+
+<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
+<script type="text/javascript" src="https://cdn.datatables.net/v/bs/jq-2.2.3/dt-1.10.12/datatables.min.js"></script>
+<script>
+  // show location of canonical site if not currently on the canonical site
+  $(function() {
+    var host = window.location.host;
+    if (typeof host !== 'undefined' && host !== 'accumulo.apache.org') {
+      $('#non-canonical').show();
+    }
+  });
+
+  $(function() {
+    // decorate section headers with anchors
+    return $("h2, h3, h4, h5, h6").each(function(i, el) {
+      var $el, icon, id;
+      $el = $(el);
+      id = $el.attr('id');
+      icon = '<i class="fa fa-link"></i>';
+      if (id) {
+        return $el.append($("<a />").addClass("header-link").attr("href", "#" + id).html(icon));
+      }
+    });
+  });
+  
+  // configure Google Analytics
+  (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','//www.google-analytics.com/analytics.js','ga');
+
+  if (ga.hasOwnProperty('loaded') && ga.loaded === true) {
+    ga('create', 'UA-50934829-1', 'apache.org');
+    ga('send', 'pageview');
+  }
+</script>
+
+</head>
+<body style="padding-top: 100px">
+
+  <nav class="navbar navbar-default navbar-fixed-top">
+  <div class="container">
+    <div class="navbar-header">
+      <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar-items">
+        <span class="sr-only">Toggle navigation</span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+        <span class="icon-bar"></span>
+      </button>
+      <a href="/"><img id="nav-logo" alt="Apache Accumulo" class="img-responsive" src="/images/accumulo-logo.png" width="200"/></a>
+    </div>
+    <div class="collapse navbar-collapse" id="navbar-items">
+      <ul class="nav navbar-nav">
+        <li class="nav-link"><a href="/downloads">Download</a></li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Releases<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/release/accumulo-1.8.0/">1.8.0 (Latest)</a></li>
+          <li><a href="/release/accumulo-1.7.2/">1.7.2</a></li>
+          <li><a href="/release/accumulo-1.6.6/">1.6.6</a></li>
+          <li><a href="/release/">Archive</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Documentation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/user-manual/">User Manuals</a></li>
+          <li><a href="/javadocs/">Javadocs</a></li>
+          <li><a href="/examples/">Examples</a></li>
+          <li><a href="/notable_features">Features</a></li>
+          <li><a href="/screenshots">Screenshots</a></li>
+          <li><a href="/papers">Papers &amp; Presentations</a></li>
+          <li><a href="/glossary">Glossary</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Community<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="/get_involved">Get Involved</a></li>
+          <li><a href="/mailing_list">Mailing Lists</a></li>
+          <li><a href="/people">People</a></li>
+          <li><a href="/news">News Archive</a></li>
+          <li><a href="/projects">Community Projects</a></li>
+          <li><a href="/thanks">Thanks</a></li>
+          <li class="divider"></li>
+          <li class="dropdown-header">Governance</li>
+          <li><a href="/bylaws">Bylaws</a></li>
+          <li><a href="/governance/consensusBuilding">Consensus Building</a></li>
+          <li><a href="/governance/lazyConsensus">Lazy Consensus</a></li>
+          <li><a href="/governance/releasing">Releasing</a></li>
+          <li><a href="/governance/voting">Voting</a></li>
+        </ul>
+        </li>
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Development<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="https://issues.apache.org/jira/browse/ACCUMULO">Issue Tracker <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://github.com/apache/accumulo/pulls">Pull Requests <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://builds.apache.org/view/A/view/Accumulo">Jenkins Builds <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://travis-ci.org/apache/accumulo">TravisCI Builds <i class="fa fa-external-link"></i></a></li>
+          <li class="divider"></li>
+          <li class="dropdown-header">Guides</li>
+          <li><a href="/source">Source &amp; Guide</a></li>
+          <li><a href="/git">Git Workflow</a></li>
+          <li><a href="/versioning">Versioning</a></li>
+          <li><a href="/contrib">Contrib Projects</a></li>
+          <li><a href="/rb">Review Board</a></li>
+          <li><a href="/releasing">Making Releases</a></li>
+          <li><a href="/verifying_releases">Verifying Releases</a></li>
+        </ul>
+        </li>
+      </ul>
+      <ul class="nav navbar-nav navbar-right">
+        <li class="dropdown">
+        <a class="dropdown-toggle" data-toggle="dropdown" href="#">Apache Software Foundation<span class="caret"></span></a>
+        <ul class="dropdown-menu">
+          <li><a href="https://www.apache.org">Apache Homepage <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/licenses/LICENSE-2.0">License <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/sponsorship">Sponsorship <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/security">Security <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/thanks">Thanks <i class="fa fa-external-link"></i></a></li>
+          <li><a href="https://www.apache.org/foundation/policies/conduct">Code of Conduct <i class="fa fa-external-link"></i></a></li>
+        </ul>
+        </li>
+      </ul>
+    </div>
+  </div>
+</nav>
+
+
+  <div class="container">
+    <div class="row">
+      <div class="col-md-12">
+
+        <div id="non-canonical" style="display: none; background-color: #F0E68C; padding-left: 1em;">
+          Visit the official site at: <a href="https://accumulo.apache.org">https://accumulo.apache.org</a>
+        </div>
+        <div id="content">
+          
+          <h1 class="title">Apache Accumulo 1.6.2</h1>
+          
+          <p>16 Feb 2015</p>
+
+<p>Apache Accumulo 1.6.2 is a maintenance release on the 1.6 version branch.
+This release contains changes from over 150 issues, comprised of bug-fixes, performance
+improvements and better test cases. Apache Accumulo 1.6.2 is the first release since the
+community has adopted <a href="https://semver.org">Semantic Versioning</a> which means that all changes to the <a href="https://github.com/apache/accumulo#api">public API</a>
+are guaranteed to be made without adding to or removing from the public API. This ensures
+that client code that runs against 1.6.1 is guaranteed to run against 1.6.2 and vice versa.</p>
+
+<p>Users of 1.6.0 or 1.6.1 are strongly encouraged to update as soon as possible to benefit from
+the improvements with very little concern in change of underlying functionality. Users of 1.4 or 1.6
+are seeking to upgrade to 1.6 should consider 1.6.2 the starting point over 1.6.0 or 1.6.1. For
+information about improvements since Accumulo 1.5, see the <a href="/release_notes/1.6.0">1.6.0</a> and <a href="/release_notes/1.6.1">1.6.1</a> release notes.</p>
+
+<h2 id="notable-bug-fixes">Notable Bug Fixes</h2>
+
+<h3 id="only-first-zookeeper-server-is-used">Only first ZooKeeper server is used</h3>
+
+<p>In constructing a <code class="highlighter-rouge">ZooKeeperInstance</code>, the user provides a comma-separated list of addresses for ZooKeeper
+servers. 1.6.0 and 1.6.1 incorrectly truncated the provided list of ZooKeeper servers used to the first. This
+would cause clients to fail when the first ZooKeeper server in the list became unavailable and not properly
+load balance requests to all available servers in the quorum. <a href="https://issues.apache.org/jira/browse/ACCUMULO-3218">ACCUMULO-3218</a> fixes the parsing of
+the ZooKeeper quorum list to use all servers, not just the first.</p>
+
+<h3 id="incorrectly-handled-zookeeper-exception">Incorrectly handled ZooKeeper exception</h3>
+
+<p>Use of ZooKeeper’s API requires very careful exception handling as some thrown exceptions from the ZooKeeper
+API are considered “normal” and must be retried by the client. In 1.6.1, Accumulo improved its handling of
+these “expected failures” to better insulate calls to ZooKeeper; however, the wrapper which sets data to a ZNode
+incorrectly handled all cases. <a href="https://issues.apache.org/jira/browse/ACCUMULO-3448">ACCUMULO-3448</a> fixed the implementation of <code class="highlighter-rouge">ZooUtil.putData(...)</code> to handle
+the expected error conditions correctly.</p>
+
+<h3 id="scanid-is-not-set-in-activescan"><code class="highlighter-rouge">scanId</code> is not set in <code class="highlighter-rouge">ActiveScan</code></h3>
+
+<p>The <code class="highlighter-rouge">ActiveScan</code> class is the returned object by <code class="highlighter-rouge">InstanceOperations.listScans</code>. This class represents a
+“scan” running on Accumulo servers, either from a <code class="highlighter-rouge">Scanner</code> or <code class="highlighter-rouge">BatchScanner</code>. The <code class="highlighter-rouge">ActiveScan</code> class 
+is meant to represent all of the information that represents the scan and can be useful to administrators
+or DevOps-types to observe and act on scans which are running for excessive periods of time. <a href="https://issues.apache.org/jira/browse/ACCUMULO-2641">ACCUMULO-2641</a>
+fixes <code class="highlighter-rouge">ActiveScan</code> to ensure that the internal identifier <code class="highlighter-rouge">scanId</code> is properly set.</p>
+
+<h3 id="table-state-change-doesnt-wait-when-requested">Table state change doesn’t wait when requested</h3>
+
+<p>An Accumulo table has two states: <code class="highlighter-rouge">ONLINE</code> and <code class="highlighter-rouge">OFFLINE</code>. An offline table in Accumulo consumes no TabletServer
+resources, only HDFS resources, which makes it useful to save infrequently used data. The Accumulo methods provided
+to transition a state from <code class="highlighter-rouge">ONLINE</code> to <code class="highlighter-rouge">OFFLINE</code> and vice versa did not respect the <code class="highlighter-rouge">wait=true</code> parameter
+when set. <a href="https://issues.apache.org/jira/browse/ACCUMULO-3301">ACCUMULO-3301</a> fixes the underlying implementation to ensure that when <code class="highlighter-rouge">wait=true</code> is provided,
+the method will not return until the table’s state transition has fully completed.</p>
+
+<h3 id="keyvalue-doesnt-implement-hashcode-or-equals">KeyValue doesn’t implement <code class="highlighter-rouge">hashCode()</code> or <code class="highlighter-rouge">equals()</code></h3>
+
+<p>The <code class="highlighter-rouge">KeyValue</code> class is an implementation of <code class="highlighter-rouge">Entry&lt;Key,Value&gt;</code> which is returned by the classes like
+<code class="highlighter-rouge">Scanner</code> and <code class="highlighter-rouge">BatchScanner</code>. <a href="https://issues.apache.org/jira/browse/ACCUMULO-3217">ACCUMULO-3217</a> adds these methods which ensure that the returned <code class="highlighter-rouge">Entry&lt;Key,Value&gt;</code>
+operates as expected with <code class="highlighter-rouge">HashMaps</code> and <code class="highlighter-rouge">HashSets</code>.</p>
+
+<h3 id="potential-deadlock-in-tabletserver">Potential deadlock in TabletServer</h3>
+
+<p>Internal to the TabletServer, there are methods to construct instances of configuration objects for tables
+and namespaces. The locking on these methods was not correctly implemented which created the possibility to
+have concurrent requests to a TabletServer to deadlock. <a href="https://issues.apache.org/jira/browse/ACCUMULO-3372">ACCUMULO-3372</a> found this problem while performing
+bulk imports of RFiles into Accumulo. Additional synchronization was added server-side to prevent this deadlock
+from happening in the future.</p>
+
+<h3 id="the-datelexicoder-incorrectly-serialized-dates-prior-1970">The <code class="highlighter-rouge">DateLexicoder</code> incorrectly serialized <code class="highlighter-rouge">Dates</code> prior 1970</h3>
+
+<p>The <code class="highlighter-rouge">DateLexicode</code>, a part of the <code class="highlighter-rouge">Lexicoders</code> classes which implement methods to convert common type primitives
+into lexicographically sorting Strings/bytes, incorrectly converted <code class="highlighter-rouge">Date</code> objects for dates prior to 1970.
+<a href="https://issues.apache.org/jira/browse/ACCUMULO-3385">ACCUMULO-3385</a> fixed the <code class="highlighter-rouge">DateLexicoder</code> to correctly (de)serialize data <code class="highlighter-rouge">Date</code> objects. For users with
+data stored in Accumulo using the broken implementation, the following can be performed to read the old data.</p>
+
+<div class="highlighter-rouge"><pre class="highlight"><code>  Lexicoder lex = new ULongLexicoder();
+  for (Entry&lt;Key, Value&gt; e : scanner) {
+    Date d = new Date(lex.decode(TextUtil.getBytes(e.getKey().getRow())));
+    // ...
+  }
+</code></pre>
+</div>
+
+<h3 id="reduce-miniaccumulocluster-failures-due-to-random-port-allocations">Reduce MiniAccumuloCluster failures due to random port allocations</h3>
+
+<p><code class="highlighter-rouge">MiniAccumuloCluster</code> has had issues where it fails to properly start due to the way it attempts to choose
+a random, unbound port on the local machine to start the ZooKeeper and Accumulo processes. Improvements have
+been made, including retry logic, to withstand a few failed port choices. The changes made by <a href="https://issues.apache.org/jira/browse/ACCUMULO-3233">ACCUMULO-3233</a>
+and the related issues should eliminate sporadic failures users of <code class="highlighter-rouge">MiniAccumuloCluster</code> might have observed.</p>
+
+<h3 id="tracer-doesnt-handle-trace-table-state-transition">Tracer doesn’t handle trace table state transition</h3>
+
+<p>The Tracer is an optional Accumulo server process that serializes Spans, elements of a distributed trace,
+to the trace table for later inspection and correlation with other Spans. By default, the Tracer writes
+to a “trace” table. In earlier versions of Accumulo, if this table was put offline, the Tracer would fail
+to write new Spans to the table when it came back online. <a href="https://issues.apache.org/jira/browse/ACCUMULO-3351">ACCUMULO-3351</a> ensures that the Tracer process
+will resume writing Spans to the trace table when it transitions to online after being offline.</p>
+
+<h3 id="tablet-not-major-compacting">Tablet not major compacting</h3>
+
+<p>It was noticed that a system performing many bulk imports, there was a tablet with hundreds of files which
+was not major compacting nor was scheduled to be major compacted. <a href="https://issues.apache.org/jira/browse/ACCUMULO-3462">ACCUMULO-3462</a> identified as fix
+server-side which would prevent this from happening in the future.</p>
+
+<h3 id="yarn-job-submission-fails-with-hadoop-260">YARN job submission fails with Hadoop-2.6.0</h3>
+
+<p>Hadoop 2.6.0 introduced a new component, the TimelineServer, which is a centralized metrics service designed
+for other Hadoop components to leverage. MapReduce jobs submitted via <code class="highlighter-rouge">accumulo</code> and <code class="highlighter-rouge">tool.sh</code> failed to
+run the job because it attempted to contact the TimelineServer and Accumulo was missing a dependency on 
+the classpath to communicate with the TimelineServer. <a href="https://issues.apache.org/jira/browse/ACCUMULO-3230">ACCUMULO-3230</a> updates the classpath in the example
+configuration files to include the necessary dependencies for the TimelineServer to ensure that YARN job
+submission operates as previously.</p>
+
+<h2 id="performance-improvements">Performance Improvements</h2>
+
+<h3 id="user-scans-can-block-root-and-metadata-table-scans">User scans can block root and metadata table scans</h3>
+
+<p>The TabletServer provides a feature to limit the number of open files as a resource management configuration.
+To perform a scan against a normal table, the metadata and root table, when not cached, need to be consulted
+first. With a sufficient number of concurrent scans against normal tables, adding to the open file count,
+scans against the metadata and root tables could be blocked from running because no files can be opened. 
+This prevents other system operations from happening as expected. <a href="https://issues.apache.org/jira/browse/ACCUMULO-3297">ACCUMULO-3297</a> fixes the internal semaphore
+used to implement this resource management to ensure that root and metadata table scans can proceed.</p>
+
+<h2 id="other-improvements">Other improvements</h2>
+
+<h3 id="limit-available-ciphers-for-ssltls">Limit available ciphers for SSL/TLS</h3>
+
+<p>Since Apache Accumulo 1.5.2 and 1.6.1, the <a href="https://en.wikipedia.org/wiki/POODLE">POODLE</a> man-in-the-middle attack was found which exploits a client’s
+ability to fallback to the SSLv3.0 protocol. The main mitigation strategy was to prevent the use of old ciphers/protocols
+when using SSL connectors. In Accumulo, both the Apache Thrift RPC servers and Jetty server for the Accumulo
+monitor have the ability to enable SSL. <a href="https://issues.apache.org/jira/browse/ACCUMULO-3316">ACCUMULO-3316</a> is the parent issue which provides new configuration
+properties in accumulo-site.xml which can limit the accepted ciphers/protocols. By default, insecure or out-dated
+protocols have been removed from the default set in order to protect users by default.</p>
+
+<h2 id="documentation">Documentation</h2>
+
+<p>Documentation was added to the Administration chapter for moving from a Non-HA Namenode setup to an HA Namenode setup. 
+New chapters were added for the configuration of SSL and for summaries of Implementation Details (initially describing 
+FATE operations). A section was added to the Configuration chapter for describing how to arrive at optimal settings
+for configuring an instance with native maps.</p>
+
+<h2 id="testing">Testing</h2>
+
+<p>Each unit and functional test only runs on a single node, while the RandomWalk and Continuous Ingest tests run 
+on any number of nodes. <em>Agitation</em> refers to randomly restarting Accumulo processes and Hadoop Datanode processes,
+and, in HDFS High-Availability instances, forcing NameNode failover.</p>
+
+<table id="release_notes_testing" class="table">
+  <thead>
+    <tr>
+      <th>OS</th>
+      <th>Hadoop</th>
+      <th>Nodes</th>
+      <th>ZooKeeper</th>
+      <th>HDFS HA</th>
+      <th>Tests</th>
+    </tr>
+  </thead>
+  <tbody>
+    <tr>
+      <td>Gentoo</td>
+      <td>N/A</td>
+      <td>1</td>
+      <td>N/A</td>
+      <td>No</td>
+      <td>Unit and Integration Tests</td>
+    </tr>
+    <tr>
+      <td>Mac OSX</td>
+      <td>N/A</td>
+      <td>1</td>
+      <td>N/A</td>
+      <td>No</td>
+      <td>Unit and Integration Tests</td>
+    </tr>
+    <tr>
+      <td>Fedora 21</td>
+      <td>N/A</td>
+      <td>1</td>
+      <td>N/A</td>
+      <td>No</td>
+      <td>Unit and Integration Tests</td>
+    </tr>
+    <tr>
+      <td>CentOS 6</td>
+      <td>2.6</td>
+      <td>20</td>
+      <td>3.4.5</td>
+      <td>No</td>
+      <td>ContinuousIngest w/ verification w/ and w/o agitation (31B and 21B entries, respectively)</td>
+    </tr>
+  </tbody>
+</table>
+
+
+
+<p><strong>View all releases in the <a href="/release/">archive</a></strong></p>
+
+        </div>
+
+        
+<footer>
+
+  <p><a href="https://www.apache.org"><img src="/images/feather-small.gif" alt="Apache Software Foundation" id="asf-logo" height="100" /></a></p>
+
+  <p>Copyright © 2011-2016 The Apache Software Foundation. Licensed under the <a href="https://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
+
+</footer>
+
+
+      </div>
+    </div>
+  </div>
+</body>
+</html>


Mime
View raw message