You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zookeeper.apache.org by ph...@apache.org on 2009/07/01 00:10:55 UTC

svn commit: r789980 [2/2] - in /hadoop/zookeeper/branches/branch-3.2: docs/releasenotes.html docs/releasenotes.pdf src/docs/src/documentation/content/xdocs/releasenotes.xml

Modified: hadoop/zookeeper/branches/branch-3.2/src/docs/src/documentation/content/xdocs/releasenotes.xml
URL: http://svn.apache.org/viewvc/hadoop/zookeeper/branches/branch-3.2/src/docs/src/documentation/content/xdocs/releasenotes.xml?rev=789980&r1=789979&r2=789980&view=diff
==============================================================================
--- hadoop/zookeeper/branches/branch-3.2/src/docs/src/documentation/content/xdocs/releasenotes.xml (original)
+++ hadoop/zookeeper/branches/branch-3.2/src/docs/src/documentation/content/xdocs/releasenotes.xml Tue Jun 30 22:10:54 2009
@@ -18,7 +18,7 @@
 <!DOCTYPE article PUBLIC "-//OASIS//DTD Simplified DocBook XML V1.0//EN"
 "http://www.oasis-open.org/docbook/xml/simple/1.0/sdocbook.dtd">
 <article id="ar_ReleaseNotes">
-  <title>ZooKeeper 3.0.0 Release Notes</title>
+  <title>ZooKeeper 3.2.0 Release Notes</title>
 
   <articleinfo>
     <legalnotice>
@@ -36,204 +36,28 @@
   </articleinfo>
 
 <para>
-These release notes include new developer and user facing incompatibilities, features, and major improvements.
+These release notes include new developer and user facing
+incompatibilities, features, and major improvements.
 </para>
 
-<itemizedlist>
-  <listitem><para><ulink url="#migration">Migration Instructions</ulink></para></listitem>
-  <listitem><para><ulink url="#changes">Changes</ulink></para></listitem>
-</itemizedlist>
-
-<section id="migration">
-<title>Migration Instructions when Upgrading to 3.0.0</title>
-
-<para>
-<emphasis>You should only have to read this section if you are upgrading from a previous version of ZooKeeper to version 3.0.0, otw skip down to <ulink url="#changes">changes</ulink></emphasis>
-</para>
-
-<para>
-A small number of changes in this release have resulted in non-backward compatible Zookeeper client user code and server instance data. The following instructions provide details on how to migrate code and date from version 2.2.1 to version 3.0.0.
-</para>
-
-<para>
-Note: ZooKeeper increments the major version number (major.minor.fix) when backward incompatible changes are made to the source base. As part of the migration from SourceForge we changed the package structure (com.yahoo.zookeeper.* to org.apache.zookeeper.*) and felt it was a good time to incorporate some changes that we had been withholding. As a result the following will be required when migrating from 2.2.1 to 3.0.0 version of ZooKeeper.
-</para>
-
-<itemizedlist>
-  <listitem><para><ulink url="#migration_code">Migrating Client Code</ulink></para></listitem>
-  <listitem><para><ulink url="#migration_data">Migrating Server Data</ulink></para></listitem>
-  <listitem><para><ulink url="#migration_config">Migrating Server Configuration</ulink></para></listitem>
-</itemizedlist>
-
-<section id="migration_code">
-<title>Migrating Client Code</title>
-
-<para>
-  The underlying client-server protocol has changed in version 3.0.0
-  of ZooKeeper. As a result clients must be upgraded along with
-  serving clusters to ensure proper operation of the system (old
-  pre-3.0.0 clients are not guaranteed to operate against upgraded
-  3.0.0 servers and vice-versa).
-</para>
-
-<section>
-<title>Watch Management</title>
-
-<para>
-In previous releases of ZooKeeper any watches registered by clients were lost if the client lost a connection to a ZooKeeper server.
-This meant that developers had to track watches they were interested in and reregister them if a session disconnect event was recieved.
-In this release the client library tracks watches that a client has registered and reregisters the watches when a connection is made to a new server.
-Applications that still manually reregister interest should continue working properly as long as they are able to handle unsolicited watches.
-For example, an old application may register a watch for /foo and /goo, lose the connection, and reregister only /goo.
-As long as the application is able to recieve a notification for /foo, (probably ignoring it) the applications does not to be changes.
-One caveat to the watch management: it is possible to miss an event for the creation and deletion of a znode if watching for creation and both the create and delete happens while the client is disconnected from ZooKeeper.
-</para>
-
-<para>
-This release also allows clients to specify call specific watch functions.
-This gives the developer the ability to modularize logic in different watch functions rather than cramming everything in the watch function attached to the ZooKeeper handle.
-Call specific watch functions receive all session events for as long as they are active, but will only receive the watch callbacks for which they are registered.
-</para>
-</section>
-
-<section>
-<title>Java API</title>
-
-<orderedlist>
-  <listitem><para>The java package structure has changed from <emphasis role="bold">com.yahoo.zookeeper*</emphasis> to <emphasis role="bold">org.apache.zookeeper*</emphasis>. This will probably effect all of your java code which makes use of ZooKeeper APIs (typically import statements)</para></listitem>
-  <listitem><para>A number of constants used in the client ZooKeeper API were re-specified using enums (rather than ints). See <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-7">ZOOKEEPER-7</ulink>, <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-132">ZOOKEEPER-132</ulink> and <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-139">ZOOKEEPER-139</ulink> for full details</para></listitem>
-  <listitem><para><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-18">ZOOKEEPER-18</ulink> removed KeeperStateChanged, use KeeperStateDisconnected instead</para></listitem>
-</orderedlist>
-
-<para>
-Also see <ulink url="http://hadoop.apache.org/zookeeper/docs/current/api/index.html">the current java API</ulink>
-</para>
-</section>
-
-<section>
-<title>C API</title>
-
-<orderedlist>
-  <listitem><para>A number of constants used in the client ZooKeeper API were renamed in order to reduce namespace collision, see <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-6">ZOOKEEPER-6</ulink> for full details</para></listitem>
-</orderedlist>
-
-</section>
-</section>
-
-<section id="migration_data">
-<title>Migrating Server Data</title>
-
 <para>
-The following issues resulted in changes to the on-disk data format (the snapshot and transaction log files contained within the ZK data directory) and require a migration utility to be run. 
+Note that there is a user visible semantic change to an existing API in this release: 
+<ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-444">ZOOKEEPER-444</ulink>
+"perms definition for PERMS_ALL differ in C and java", a bug fix which required a change to the JAVA
+definition of ALL to include ADMIN.
 </para>
 
-<itemizedlist>
-  <listitem><para><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-27">ZOOKEEPER-27 Unique DB identifiers for servers and clients</ulink></para></listitem>
-  <listitem><para><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-32">ZOOKEEPER-32 CRCs for ZooKeeper data</ulink></para></listitem>
-  <listitem><para><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-33">ZOOKEEPER-33 Better ACL management</ulink></para></listitem>
-  <listitem><para><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-38">ZOOKEEPER-38 headers (version+) in log/snap files</ulink></para></listitem>
-</itemizedlist>
-
-<para>
-  <emphasis role="bold">The following must be run once, and only once, when upgrading the ZooKeeper server instances to version 3.0.0.</emphasis>
-</para>
-
-<note>
-  <para>
-    The &lt;dataLogDir&gt; and &lt;dataDir&gt; directories referenced
-    below are specified by the <emphasis>dataLogDir</emphasis>
-    and <emphasis>dataDir</emphasis> specification in your
-    ZooKeeper config file
-    respectively. <emphasis>dataLogDir</emphasis> defaults to the
-    value of <emphasis>dataDir</emphasis> if not specified explicitly
-    in the ZooKeeper server config file (in which case provide the
-    same directory for both parameters to the upgrade utility).
-  </para>
-</note>
-
-<orderedlist>
-  <listitem><para>Shutdown the ZooKeeper server cluster.</para></listitem>
-  <listitem><para>Backup your &lt;dataLogDir&gt; and &lt;dataDir&gt; directories</para></listitem>
-  <listitem><para>Run upgrade using</para>
-    <itemizedlist>
-      <listitem><para><computeroutput>bin/zkServer.sh upgrade &lt;dataLogDir&gt; &lt;dataDir&gt;</computeroutput></para></listitem>
-    </itemizedlist>
-    <para>or</para>
-    <itemizedlist>
-      <listitem><para><computeroutput>java -classpath pathtolog4j:pathtozookeeper.jar UpgradeMain &lt;dataLogDir&gt; &lt;dataDir&gt;</computeroutput></para></listitem>
-    </itemizedlist>
-    <para>where &lt;dataLogDir&gt; is the directory where all transaction logs (log.*) are stored. &lt;dataDir&gt; is the directory where all the snapshots (snapshot.*) are stored.</para>
-  </listitem>
-  <listitem><para>Restart the cluster. </para></listitem>
- </orderedlist>
- <para>
- If you have any failure during the upgrade procedure keep reading to sanitize your database. 
- </para> 
-<para>This is how upgrade works in ZooKeeper. This will help you troubleshoot in case you have problems while upgrading</para>
-<orderedlist>
-<listitem><para>Upgrade moves files from &lt;dataLogDir&gt; and &lt;dataDir&gt; to &lt;dataLogDir&gt;/version-1/ and &lt;dataDir&gt;/version-1 respectively (version-1 sub-directory is created by the upgrade utility). </para></listitem>
- <listitem><para>Upgrade creates a new version sub-directory &lt;dataDir&gt;/version-2 and &lt;dataLogDir&gt;/version-2</para></listitem>
- <listitem><para>Upgrade reads the old database from &lt;dataDir&gt;/version-1 and &lt;dataLogDir&gt;/version-1 into the memory and creates a new upgraded snapshot. </para></listitem>
- <listitem><para>Upgrade writes the new database in &lt;dataDir&gt;/version-2.  </para></listitem>
- </orderedlist>
- 
- <para>Troubleshooting.</para>
- 
- <orderedlist>
- <listitem><para>In case you start ZooKeeper 3.0 without upgrading from 2.0 on a 2.0 database - the servers will start up with an empty database.
- This is because the servers assume that &lt;dataDir&gt;/version-2 and &lt;dataLogDir&gt;/version-2 will have the database to start with. Since this will be empty
- in case of no upgrade, the servers will start with an empty database. In such a case, shutdown the ZooKeeper servers, remove the version-2 directory (remember
- this will lead to loss of updates after you started 3.0.)
- and then start the upgrade procedure.</para></listitem>
- <listitem><para>If the upgrade fails while trying to rename files into the version-1 directory, you should try and move all the files under &lt;dataDir&gt;/version-1
- and &lt;dataLogDir&gt;/version-1 to &lt;dataDir&gt; and &lt;dataLogDir&gt; respectively. Then try upgrade again.
- </para>
- </listitem>
- <listitem><para> If you do not wish to run with ZooKeeper 3.0 and prefer to run with ZooKeeper 2.0 and have already upgraded - you can run ZooKeeper 2 with 
- the &lt;dataDir&gt; and &lt;dataLogDir&gt; directories changed to &lt;dataDir&gt;/version-1 and &lt;dataLogDir&gt;/version-1. Remember that you will lose all the updates that you made after the upgrade.
-</para></listitem> 
- </orderedlist>
- 
-</section>
-
-<section id="migration_config">
-<title>Migrating Server Configuration</title>
-
-<para>
-There is a significant change to the ZooKeeper server configuration file.
-</para>
-
-<para>The default election algorithm, specified by
-  the <emphasis>electionAlg</emphasis> configuration attribute, has
-  changed from a default of <emphasis>0</emphasis> to a default
-  of <emphasis>3</emphasis>. See
-  <ulink url="zookeeperAdmin.html#sc_clusterOptions">Cluster
-  Options</ulink> section of the administrators guide, specifically
-  the <emphasis>electionAlg</emphasis>
-  and <emphasis>server.X</emphasis> properties.
-</para>
-
-<para>
-  You will either need to explicitly
-  set <emphasis>electionAlg</emphasis> to it's previous default value
-  of <emphasis>0</emphasis> or change
-  your <emphasis>server.X</emphasis> options to include the leader
-  election port.
-</para>
-
-</section>
-
-</section>
+<para>See <ulink
+url="http://hadoop.apache.org/zookeeper/docs/r3.0.1/releasenotes.html#migration">3.0
+release notes and migration instructions</ulink> if you are upgrading
+from version 2 of ZooKeeper (SourceForge) to version 3 or
+later.</para>
 
 <section id="changes">
-<title>Changes Since ZooKeeper 2.2.1</title>
+<title>Changes Since ZooKeeper 3.1</title>
 
-<para>
-Version 2.2.1 code, documentation, binaries, etc... are still accessible on <ulink url="http://sourceforge.net/projects/zookeeper">SourceForge</ulink>
-</para>
-
-  <table>
-<title>Changes Since ZooKeeper 2.2.1</title>
+<table>
+<title>Changes Since ZooKeeper 3.1</title>
 <tgroup cols='2'>
 <colspec colname='c1'/><colspec colname='c2'/>
 <thead>
@@ -243,1008 +67,280 @@
 </row>
 </thead>
 <tbody>
+
 <row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-43">
-      ZOOKEEPER-43</ulink>
-  </entry>
-  <entry>
-    Server side of auto reset watches.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-132">
-      ZOOKEEPER-132</ulink>
-  </entry>
-  <entry>
-    Create Enum to replace CreateFlag in ZooKepper.create method 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-139">
-      ZOOKEEPER-139</ulink>
-  </entry>
-  <entry>
-    Create Enums for WatcherEvent's KeeperState and EventType
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-18">
-      ZOOKEEPER-18</ulink>
-  </entry>
-  <entry>
-    keeper state inconsistency 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-38">
-      ZOOKEEPER-38</ulink>
-  </entry>
-  <entry>
-    headers  in log/snap files
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-8">
-      ZOOKEEPER-8</ulink>
-  </entry>
-  <entry>
-    Stat enchaned to include num of children and size
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-6">
-      ZOOKEEPER-6</ulink>
-  </entry>
-  <entry>
-    List of problem identifiers in zookeeper.h
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-7">
-      ZOOKEEPER-7</ulink>
-  </entry>
-  <entry>
-    Use enums rather than ints for types and state
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-27">
-      ZOOKEEPER-27</ulink>
-  </entry>
-  <entry>
-    Unique DB identifiers for servers and clients
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-32">
-      ZOOKEEPER-32</ulink>
-  </entry>
-  <entry>
-    CRCs for ZooKeeper data
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-33">
-      ZOOKEEPER-33</ulink>
-  </entry>
-  <entry>
-    Better ACL management
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-203">
-      ZOOKEEPER-203</ulink>
-  </entry>
-  <entry>
-    fix datadir typo in releasenotes
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-145">
-      ZOOKEEPER-145</ulink>
-  </entry>
-  <entry>
-    write detailed release notes for users migrating from 2.x to 3.0
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-23">
-      ZOOKEEPER-23</ulink>
-  </entry>
-  <entry>
-    Auto reset of watches on reconnect
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-191">
-      ZOOKEEPER-191</ulink>
-  </entry>
-  <entry>
-    forrest docs for upgrade.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-201">
-      ZOOKEEPER-201</ulink>
-  </entry>
-  <entry>
-    validate magic number when reading snapshot and transaction logs 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-200">
-      ZOOKEEPER-200</ulink>
-  </entry>
-  <entry>
-    the magic number for snapshot and log must be different
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-199">
-      ZOOKEEPER-199</ulink>
-  </entry>
-  <entry>
-    fix log messages in persistence code 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-197">
-      ZOOKEEPER-197</ulink>
-  </entry>
-  <entry>
-    create checksums for snapshots 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-198">
-      ZOOKEEPER-198</ulink>
-  </entry>
-  <entry>
-    apache license header missing from FollowerSyncRequest.java
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-5">
-      ZOOKEEPER-5</ulink>
-  </entry>
-  <entry>
-    Upgrade Feature in Zookeeper server. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-194">
-      ZOOKEEPER-194</ulink>
-  </entry>
-  <entry>
-    Fix terminology in zookeeperAdmin.xml
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-151">
-      ZOOKEEPER-151</ulink>
-  </entry>
-  <entry>
-    Document change to server configuration
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-193">
-      ZOOKEEPER-193</ulink>
-  </entry>
-  <entry>
-    update java example doc to compile with latest zookeeper
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-187">
-      ZOOKEEPER-187</ulink>
-  </entry>
-  <entry>
-    CreateMode api docs missing 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-186">
-      ZOOKEEPER-186</ulink>
-  </entry>
-  <entry>
-    add new "releasenotes.xml" to forrest documentation
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-190">
-      ZOOKEEPER-190</ulink>
-  </entry>
-  <entry>
-    Reorg links to docs and navs to docs into related sections
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-189">
-      ZOOKEEPER-189</ulink>
-  </entry>
-  <entry>
-    forrest build not validated xml of input documents
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-188">
-      ZOOKEEPER-188</ulink>
-  </entry>
-  <entry>
-    Check that election port is present for all servers
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-185">
-      ZOOKEEPER-185</ulink>
-  </entry>
-  <entry>
-    Improved version of FLETest 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-184">
-      ZOOKEEPER-184</ulink>
-  </entry>
-  <entry>
-    tests: An explicit include derective is needed for the usage of memcpy functions
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-183">
-      ZOOKEEPER-183</ulink>
-  </entry>
-  <entry>
-    Array subscript is above array bounds in od_completion, src/cli.c. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-182">
-      ZOOKEEPER-182</ulink>
-  </entry>
-  <entry>
-     zookeeper_init accepts empty host-port string and returns valid pointer to zhandle_t. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-17">
-      ZOOKEEPER-17</ulink>
-  </entry>
-  <entry>
-    zookeeper_init doc needs clarification 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-181">
-      ZOOKEEPER-181</ulink>
-  </entry>
-  <entry>
-    Some Source Forge Documents did not get moved over: javaExample, zookeeperTutorial, zookeeperInternals 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-180">
-      ZOOKEEPER-180</ulink>
-  </entry>
-  <entry>
-    Placeholder sections needed in document for new topics that the umbrella jira discusses 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-179">
-      ZOOKEEPER-179</ulink>
-  </entry>
-  <entry>
-    Programmer's Guide "Basic Operations" section is missing content 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-178">
-      ZOOKEEPER-178</ulink>
-  </entry>
-  <entry>
-    FLE test. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-159">
-      ZOOKEEPER-159</ulink>
-  </entry>
-  <entry>
-    Cover two corner cases of leader election
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-156">
-      ZOOKEEPER-156</ulink>
-  </entry>
-  <entry>
-    update programmer guide with acl details from old wiki page
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-154">
-      ZOOKEEPER-154</ulink>
-  </entry>
-  <entry>
-    reliability graph diagram in overview doc needs context
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-157">
-      ZOOKEEPER-157</ulink>
-  </entry>
-  <entry>
-    Peer can't find existing leader 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-155">
-      ZOOKEEPER-155</ulink>
-  </entry>
-  <entry>
-    improve "the zookeeper project" section of overview doc
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-140">
-      ZOOKEEPER-140</ulink>
-  </entry>
-  <entry>
-    Deadlock in QuorumCnxManager 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-147">
-      ZOOKEEPER-147</ulink>
-  </entry>
-  <entry>
-    This is version of the documents with most of the [tbd...] scrubbed out 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-150">
-      ZOOKEEPER-150</ulink>
-  </entry>
-  <entry>
-    zookeeper build broken 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-136">
-      ZOOKEEPER-136</ulink>
-  </entry>
-  <entry>
-    sync causes hang in all followers of quorum. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-134">
-      ZOOKEEPER-134</ulink>
-  </entry>
-  <entry>
-    findbugs cleanup 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-133">
-      ZOOKEEPER-133</ulink>
-  </entry>
-  <entry>
-    hudson tests failing intermittently 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-144">
-      ZOOKEEPER-144</ulink>
-  </entry>
-  <entry>
-    add tostring support for watcher event, and enums for event type/state 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-21">
-      ZOOKEEPER-21</ulink>
-  </entry>
-  <entry>
-    Improve zk ctor/watcher 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-142">
-      ZOOKEEPER-142</ulink>
-  </entry>
-  <entry>
-    Provide Javadoc as to the maximum size of the data byte array that may be stored within a znode 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-93">
-      ZOOKEEPER-93</ulink>
-  </entry>
-  <entry>
-    Create Documentation for Zookeeper 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-117">
-      ZOOKEEPER-117</ulink>
-  </entry>
-  <entry>
-    threading issues in Leader election 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-137">
-      ZOOKEEPER-137</ulink>
-  </entry>
-  <entry>
-    client watcher objects can lose events 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-131">
-      ZOOKEEPER-131</ulink>
-  </entry>
-  <entry>
-    Old leader election can elect a dead leader over and over again 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-130">
-      ZOOKEEPER-130</ulink>
-  </entry>
-  <entry>
-    update build.xml to support apache release process
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-118">
-      ZOOKEEPER-118</ulink>
-  </entry>
-  <entry>
-    findbugs flagged switch statement in followerrequestprocessor.run
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-115">
-      ZOOKEEPER-115</ulink>
-  </entry>
-  <entry>
-    Potential NPE in QuorumCnxManager
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-114">
-      ZOOKEEPER-114</ulink>
-  </entry>
-  <entry>
-    cleanup ugly event messages in zookeeper client 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-112">
-      ZOOKEEPER-112</ulink>
-  </entry>
-  <entry>
-    src/java/main ZooKeeper.java has test code embedded into it.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-39">
-      ZOOKEEPER-39</ulink>
-  </entry>
-  <entry>
-    Use Watcher objects rather than boolean on read operations.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-97">
-      ZOOKEEPER-97</ulink>
-  </entry>
-  <entry>
-    supports optional output directory in code generator.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-101">
-      ZOOKEEPER-101</ulink>
-  </entry>
-  <entry>
-    Integrate ZooKeeper with "violations" feature on hudson
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-105">
-      ZOOKEEPER-105</ulink>
-  </entry>
-  <entry>
-    Catch Zookeeper exceptions and print on the stderr. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-42">
-      ZOOKEEPER-42</ulink>
-  </entry>
-  <entry>
-    Change Leader Election to fast tcp.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-48">
-      ZOOKEEPER-48</ulink>
-  </entry>
-  <entry>
-    auth_id now handled correctly when no auth ids present
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-44">
-      ZOOKEEPER-44</ulink>
-  </entry>
-  <entry>
-    Create sequence flag children with prefixes of 0's so that they can be lexicographically sorted. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-108">
-      ZOOKEEPER-108</ulink>
-  </entry>
-  <entry>
-    Fix sync operation reordering on a Quorum. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-25">
-      ZOOKEEPER-25</ulink>
-  </entry>
-  <entry>
-    Fuse module for Zookeeper.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-58">
-      ZOOKEEPER-58</ulink>
-  </entry>
-  <entry>
-    Race condition on ClientCnxn.java 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-56">
-      ZOOKEEPER-56</ulink>
-  </entry>
-  <entry>
-    Add clover support to build.xml. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-75">
-      ZOOKEEPER-75</ulink>
-  </entry>
-  <entry>
-    register the ZooKeeper mailing lists with nabble.com 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-54">
-      ZOOKEEPER-54</ulink>
-  </entry>
-  <entry>
-    remove sleeps in the tests. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-55">
-      ZOOKEEPER-55</ulink>
-  </entry>
-  <entry>
-    build.xml failes to retrieve a release number from SVN and the ant target "dist" fails 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-89">
-      ZOOKEEPER-89</ulink>
-  </entry>
-  <entry>
-    invoke WhenOwnerListener.whenNotOwner when the ZK connection fails 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-90">
-      ZOOKEEPER-90</ulink>
-  </entry>
-  <entry>
-    invoke WhenOwnerListener.whenNotOwner when the ZK session expires and the znode is the leader 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-82">
-      ZOOKEEPER-82</ulink>
-  </entry>
-  <entry>
-    Make the ZooKeeperServer more DI friendly.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-110">
-      ZOOKEEPER-110</ulink>
-  </entry>
-  <entry>
-    Build script relies on svnant, which is not compatible with subversion 1.5 working copies 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-111">
-      ZOOKEEPER-111</ulink>
-  </entry>
-  <entry>
-    Significant cleanup of existing tests.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-122">
-      ZOOKEEPER-122</ulink>
-  </entry>
-  <entry>
-    Fix  NPE in jute's Utils.toCSVString.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-123">
-      ZOOKEEPER-123</ulink>
-  </entry>
-  <entry>
-    Fix  the wrong class is specified for the logger.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-2">
-      ZOOKEEPER-2</ulink>
-  </entry>
-  <entry>
-    Fix synchronization issues in QuorumPeer and FastLeader election. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-125">
-      ZOOKEEPER-125</ulink>
-  </entry>
-  <entry>
-    Remove unwanted class declaration in FastLeaderElection. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-61">
-      ZOOKEEPER-61</ulink>
-  </entry>
-  <entry>
-    Address  in client/server test cases.
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-75">
-      ZOOKEEPER-75</ulink>
-  </entry>
-  <entry>
-    cleanup the library directory 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-109">
-      ZOOKEEPER-109</ulink>
-  </entry>
-  <entry>
-    cleanup of NPE and Resource issue nits found by static analysis 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-76">
-      ZOOKEEPER-76</ulink>
-  </entry>
-  <entry>
-    Commit 677109 removed the cobertura library, but not the build targets. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-63">
-      ZOOKEEPER-63</ulink>
-  </entry>
-  <entry>
-    Race condition in client close
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-70">
-      ZOOKEEPER-70</ulink>
-  </entry>
-  <entry>
-    Add skeleton forrest doc structure for ZooKeeper 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-79">
-      ZOOKEEPER-79</ulink>
-  </entry>
-  <entry>
-    Document jacob's leader election on the wiki recipes page 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-73">
-      ZOOKEEPER-73</ulink>
-  </entry>
-  <entry>
-    Move ZK wiki from SourceForge to Apache 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-72">
-      ZOOKEEPER-72</ulink>
-  </entry>
-  <entry>
-    Initial creation/setup of ZooKeeper ASF site. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-71">
-      ZOOKEEPER-71</ulink>
-  </entry>
-  <entry>
-    Determine what to do re ZooKeeper Changelog
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-68">
-      ZOOKEEPER-68</ulink>
-  </entry>
-  <entry>
-    parseACLs in ZooKeeper.java fails to parse elements of ACL, should be lastIndexOf rather than IndexOf 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-130">
-      ZOOKEEPER-130</ulink>
-  </entry>
-  <entry>
-    update build.xml to support apache release process. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-131">
-      ZOOKEEPER-131</ulink>
-  </entry>
-  <entry>
-    Fix Old leader election can elect a dead leader over and over again. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-137">
-      ZOOKEEPER-137</ulink>
-  </entry>
-  <entry>
-    client watcher objects can lose events 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-117">
-      ZOOKEEPER-117</ulink>
-  </entry>
-  <entry>
-    threading issues in Leader election
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-128">
-      ZOOKEEPER-128</ulink>
-  </entry>
-  <entry>
-    test coverage on async client operations needs to be improved
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-127">
-      ZOOKEEPER-127</ulink>
-  </entry>
-  <entry>
-     Use of non-standard election ports in config breaks services
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-53">
-      ZOOKEEPER-53</ulink>
-  </entry>
-  <entry>
-    tests failing on solaris. 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-172">
-      ZOOKEEPER-172</ulink>
-  </entry>
-  <entry>
-    FLE Test 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-41">
-      ZOOKEEPER-41</ulink>
-  </entry>
-  <entry>
-    Sample startup script 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-33">
-      ZOOKEEPER-33</ulink>
-  </entry>
-  <entry>
-    Better ACL management 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-49">
-      ZOOKEEPER-49</ulink>
-  </entry>
-  <entry>
-    SetACL does not work 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-20">
-      ZOOKEEPER-20</ulink>
-  </entry>
-  <entry>
-    Child watches are not triggered when the node is deleted
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-15">
-      ZOOKEEPER-15</ulink>
-  </entry>
-  <entry>
-    handle failure better in build.xml:test 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-11">
-      ZOOKEEPER-11</ulink>
-  </entry>
-  <entry>
-    ArrayList is used instead of List 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-45">
-      ZOOKEEPER-45</ulink>
-  </entry>
-  <entry>
-    Restructure the SVN repository after initial import 
-  </entry>
-</row>
-<row>
-  <entry>
-    <ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-1">
-      ZOOKEEPER-1</ulink>
-  </entry>
-  <entry>
-    Initial ZooKeeper code contribution from Yahoo!
-  </entry>
+  <entry>Incompatibilities</entry>
+  <entry></entry>
 </row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-444">ZOOKEEPER-444</ulink></entry><entry>perms definition for PERMS_ALL differ in C and java
+</entry></row>
 
+<row>
+  <entry>New Feature</entry>
+  <entry></entry>
+</row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-29">ZOOKEEPER-29</ulink></entry><entry>Flexible quorums
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-36">ZOOKEEPER-36</ulink></entry><entry>REST access to ZooKeeper
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-78">ZOOKEEPER-78</ulink></entry><entry>added a high level protocol/feature - for easy Leader Election or exclusive Write Lock creation
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-237">ZOOKEEPER-237</ulink></entry><entry>Add a Chroot request
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-361">ZOOKEEPER-361</ulink></entry><entry>integrate cppunit testing as part of hudson patch process.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-378">ZOOKEEPER-378</ulink></entry><entry>contribution of Net::ZooKeeper Perl module
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-383">ZOOKEEPER-383</ulink></entry><entry>Asynchronous version of createLedger()
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-395">ZOOKEEPER-395</ulink></entry><entry>Python bindings
+</entry></row>
+                
+<row>
+  <entry>Task</entry>
+  <entry></entry>
+</row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-440">ZOOKEEPER-440</ulink></entry><entry>update the performance documentation in forrest
+</entry></row>
+
+<row>
+  <entry>Bug</entry>
+  <entry></entry>
+</row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-94">ZOOKEEPER-94</ulink></entry><entry>JMX tests are needed to verify that the JMX MBeans work properly
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-192">ZOOKEEPER-192</ulink></entry><entry>trailing whitespace in config file can cause number format exceptions
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-196">ZOOKEEPER-196</ulink></entry><entry>doxygen comment for state argument of watcher_fn typedef and implementation differ (&quot;...one of the *_STATE constants, otherwise -1&quot;)
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-244">ZOOKEEPER-244</ulink></entry><entry>AsyncOpsTest fails when running consecutively
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-273">ZOOKEEPER-273</ulink></entry><entry>Zookeeper c client build should not depend on CPPUNIT
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-281">ZOOKEEPER-281</ulink></entry><entry>autoreconf fails for /zookeeper-3.0.1/src/c/
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-298">ZOOKEEPER-298</ulink></entry><entry>some excecutables (scripts typ.) are not marked as such in tar generated by &quot;ant tar&quot;
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-299">ZOOKEEPER-299</ulink></entry><entry>server startup scripts fail on a mac.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-300">ZOOKEEPER-300</ulink></entry><entry>zk jmx code is calling printStackTrace when creating bean name (should not be)
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-303">ZOOKEEPER-303</ulink></entry><entry>Bin scripts don't work on Mac
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-309">ZOOKEEPER-309</ulink></entry><entry>core dump using zoo_get_acl() 
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-318">ZOOKEEPER-318</ulink></entry><entry>remove locking in zk_hashtable.c or add locking in collect_keys()
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-319">ZOOKEEPER-319</ulink></entry><entry>add locking around auth info in zhandle_t
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-320">ZOOKEEPER-320</ulink></entry><entry>call auth completion in free_completions()
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-325">ZOOKEEPER-325</ulink></entry><entry>FLENewEpoch test fails.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-326">ZOOKEEPER-326</ulink></entry><entry>standalone server ignores tickTime configuration
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-330">ZOOKEEPER-330</ulink></entry><entry>zookeeper standalone server does not startup with just a port and datadir.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-332">ZOOKEEPER-332</ulink></entry><entry>c client issues (memory leaks) reported by valgrind
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-333">ZOOKEEPER-333</ulink></entry><entry>helgrind thread issues identified in mt c client code
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-334">ZOOKEEPER-334</ulink></entry><entry>bookkeeper benchmark (testclient.java) has compiling errros.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-340">ZOOKEEPER-340</ulink></entry><entry>binaryinputarchive throws out runtimeexceptions for unreasonable length datastructures.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-341">ZOOKEEPER-341</ulink></entry><entry>regression in QuorumPeerMain, tickTime from config is lost, cannot start quorum
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-344">ZOOKEEPER-344</ulink></entry><entry>doIO in NioServerCnxn: Exception causing close of session : cause is &quot;read error&quot;
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-346">ZOOKEEPER-346</ulink></entry><entry>remove the kill command fro mthe client port.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-347">ZOOKEEPER-347</ulink></entry><entry>zkfuse uses non-standard String
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-348">ZOOKEEPER-348</ulink></entry><entry>Creating node with path ending in &quot;/&quot; with sequence flag set
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-355">ZOOKEEPER-355</ulink></entry><entry>make  validatePath non public in Zookeeper client api.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-360">ZOOKEEPER-360</ulink></entry><entry>WeakHashMap in Bookie.java causes NPE
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-362">ZOOKEEPER-362</ulink></entry><entry>Issues with FLENewEpochTest
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-363">ZOOKEEPER-363</ulink></entry><entry>NPE when recovering ledger with no hint 
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-365">ZOOKEEPER-365</ulink></entry><entry>javadoc is wrong for setLast in LedgerHandle
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-367">ZOOKEEPER-367</ulink></entry><entry>RecoveryTest failure - &quot;unreasonable length&quot; IOException
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-370">ZOOKEEPER-370</ulink></entry><entry>Fix critical problems reported by findbugs
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-374">ZOOKEEPER-374</ulink></entry><entry>Uninitialized struct variable in C causes warning which is treated as an error
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-375">ZOOKEEPER-375</ulink></entry><entry>zoo_add_auth only retains most recent auth on re-sync
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-376">ZOOKEEPER-376</ulink></entry><entry>ant test target re-compiles cppunit code every time
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-377">ZOOKEEPER-377</ulink></entry><entry>running ant cppunit tests, a failure still results in BUILD SUCCESSFUL
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-379">ZOOKEEPER-379</ulink></entry><entry>cppunit tests failed during hudson patch tests 
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-382">ZOOKEEPER-382</ulink></entry><entry>zookeeper cpp tests fails on 64 bit machines with gcc 4.1.2
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-384">ZOOKEEPER-384</ulink></entry><entry>keeper exceptions missing path
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-385">ZOOKEEPER-385</ulink></entry><entry>crctest failed on hudson patch test
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-391">ZOOKEEPER-391</ulink></entry><entry>bookeeper mainline code should not be calling printStackTrace
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-396">ZOOKEEPER-396</ulink></entry><entry>race condition in zookeeper client library between zookeeper_close and zoo_synchronous api
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-400">ZOOKEEPER-400</ulink></entry><entry>Issues with procedure to close ledger
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-402">ZOOKEEPER-402</ulink></entry><entry>zookeeper c library segfaults on data for a node in zookeeper being null.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-404">ZOOKEEPER-404</ulink></entry><entry>nightly build failed on hudson.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-405">ZOOKEEPER-405</ulink></entry><entry>nullpointer exception in zookeeper java shell.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-411">ZOOKEEPER-411</ulink></entry><entry>Building zookeeper fails on RHEL 5 64 bit during test-cppunit
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-415">ZOOKEEPER-415</ulink></entry><entry>zookeeper c tests hang.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-416">ZOOKEEPER-416</ulink></entry><entry>BookKeeper jar includes unnecessary files
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-417">ZOOKEEPER-417</ulink></entry><entry>stray message problem when changing servers
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-419">ZOOKEEPER-419</ulink></entry><entry>Reference counting bug in Python bindings causes abort errors
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-421">ZOOKEEPER-421</ulink></entry><entry>zkpython run_tests.sh is missing #!
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-427">ZOOKEEPER-427</ulink></entry><entry>ZooKeeper server unexpectedly high CPU utilisation
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-433">ZOOKEEPER-433</ulink></entry><entry>getacl on root znode (/) fails
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-435">ZOOKEEPER-435</ulink></entry><entry>allow &quot;super&quot; admin digest based auth to be configurable
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-438">ZOOKEEPER-438</ulink></entry><entry>addauth fails to register auth on new client that's not yet connected
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-446">ZOOKEEPER-446</ulink></entry><entry>some traces of the host auth scheme left
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-448">ZOOKEEPER-448</ulink></entry><entry>png files do nto work with forrest.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-449">ZOOKEEPER-449</ulink></entry><entry>sesssionmoved in java code and ZCLOSING in C have the same value.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-450">ZOOKEEPER-450</ulink></entry><entry>emphemeral cleanup not happening with session timeout
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-452">ZOOKEEPER-452</ulink></entry><entry>zookeeper performance graph should have percentage of reads rather than percentage of writes -  zkperfRW-3.2.jpg
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-453">ZOOKEEPER-453</ulink></entry><entry>Worker is not removed in QuorumCnxManager upon crash
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-454">ZOOKEEPER-454</ulink></entry><entry>allow compilation with jdk1.5
+</entry></row>
+    
+<row>
+  <entry>Improvement</entry>
+  <entry></entry>
+</row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-60">ZOOKEEPER-60</ulink></entry><entry>Get cppunit tests running as part of Hudson CI
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-148">ZOOKEEPER-148</ulink></entry><entry>add jdiff support to zookeeper release process
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-264">ZOOKEEPER-264</ulink></entry><entry>docs should include a state transition diagram for client state
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-274">ZOOKEEPER-274</ulink></entry><entry>Document options to connect Jconsole remotely
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-279">ZOOKEEPER-279</ulink></entry><entry>Allow specialization of quorum config parsing (e.g. variable expansion in zoo.cfg)
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-288">ZOOKEEPER-288</ulink></entry><entry>Cleanup and fixes to BookKeeper
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-292">ZOOKEEPER-292</ulink></entry><entry>commit configure scripts (autotools) to svn for c projects and include in release
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-305">ZOOKEEPER-305</ulink></entry><entry>Replace timers with semaphores in FLENewEpochTest
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-306">ZOOKEEPER-306</ulink></entry><entry>Add BookKeeper documentation
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-307">ZOOKEEPER-307</ulink></entry><entry>Log exception stack traces
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-314">ZOOKEEPER-314</ulink></entry><entry>add wiki docs for bookeeper.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-315">ZOOKEEPER-315</ulink></entry><entry>add forrest docs for bookkeeper.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-327">ZOOKEEPER-327</ulink></entry><entry>document effects (latency) of storing large amounts of data in znodes
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-329">ZOOKEEPER-329</ulink></entry><entry>document how to integrate 3rd party authentication into ZK server ACLs
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-336">ZOOKEEPER-336</ulink></entry><entry>single bad client can cause server to stop accepting connections
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-337">ZOOKEEPER-337</ulink></entry><entry>improve logging in leader election lookForLeader method when address resolution fails
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-342">ZOOKEEPER-342</ulink></entry><entry>improve configuration code - remove static config and use java properties
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-343">ZOOKEEPER-343</ulink></entry><entry>add tests that specifically verify the zkmain and qpmain classes
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-345">ZOOKEEPER-345</ulink></entry><entry>the CLIs should allow addAuth to be invoked
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-349">ZOOKEEPER-349</ulink></entry><entry>to automate patch testing 
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-356">ZOOKEEPER-356</ulink></entry><entry>Masking bookie failure during writes to a ledger
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-358">ZOOKEEPER-358</ulink></entry><entry>Throw exception when ledger does not exist
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-371">ZOOKEEPER-371</ulink></entry><entry>to implement jdiff 
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-373">ZOOKEEPER-373</ulink></entry><entry>One thread per bookie
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-380">ZOOKEEPER-380</ulink></entry><entry>bookkeeper should have a streaming api so that its easier to store checpoints/snapshots in bookkeeper.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-381">ZOOKEEPER-381</ulink></entry><entry>The ZooKeeper front page tells us nothing about what ZooKeeper does
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-386">ZOOKEEPER-386</ulink></entry><entry>improve java cli shell
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-389">ZOOKEEPER-389</ulink></entry><entry>add help/usage to the c shell cli.c
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-392">ZOOKEEPER-392</ulink></entry><entry>Change log4j properties
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-403">ZOOKEEPER-403</ulink></entry><entry>cleanup javac compiler warnings
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-406">ZOOKEEPER-406</ulink></entry><entry>address all findbugs warnings in mainline java code
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-422">ZOOKEEPER-422</ulink></entry><entry>Java CLI should support ephemeral and sequential node creation
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-428">ZOOKEEPER-428</ulink></entry><entry>logging should be makred as warn rathen than error in NIOServerCnxn.
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-431">ZOOKEEPER-431</ulink></entry><entry>Expose methods to ease ZK integration
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-432">ZOOKEEPER-432</ulink></entry><entry>Various improvements to zkpython bindings
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-434">ZOOKEEPER-434</ulink></entry><entry>the java shell should indicate connection status on command prompt
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-437">ZOOKEEPER-437</ulink></entry><entry>Variety of Documentation Updates
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-443">ZOOKEEPER-443</ulink></entry><entry>trace logging in watch notification not wrapped with istraceneabled - inefficient
+</entry></row>
+
+<row>
+  <entry>Subtask</entry>
+  <entry></entry>
+</row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-350">ZOOKEEPER-350</ulink></entry><entry>to run rats for releaseaudit 
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-351">ZOOKEEPER-351</ulink></entry><entry>to run checkstyle
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-352">ZOOKEEPER-352</ulink></entry><entry>to add standard ant targets required by test-patch.sh script
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-353">ZOOKEEPER-353</ulink></entry><entry>javadoc warnings needs to be fixed 
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-354">ZOOKEEPER-354</ulink></entry><entry>to fix javadoc warning in the source files
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-407">ZOOKEEPER-407</ulink></entry><entry>address all findbugs warnings in org.apache.zookeeper.server.quorum.** packages
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-408">ZOOKEEPER-408</ulink></entry><entry>address all findbugs warnings in persistence classes
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-409">ZOOKEEPER-409</ulink></entry><entry>address all findbugs warnings in jute related classes
+</entry></row>
+<row><entry><ulink url="https://issues.apache.org/jira/browse/ZOOKEEPER-410">ZOOKEEPER-410</ulink></entry><entry>address all findbugs warnings in client/server classes
+</entry></row>
+    
 </tbody></tgroup></table>
 
 </section>
 </article>
-