You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by zg...@apache.org on 2019/03/05 06:35:43 UTC

[hbase] 01/02: HBASE-21986 Generate CHANGES.md and RELEASENOTES.md for 2.2.0

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

zghao pushed a commit to branch branch-2.2
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit cc9033c71fef3880a45b92c260d49dd637e80e44
Author: Guanghao Zhang <zg...@apache.org>
AuthorDate: Tue Mar 5 10:01:18 2019 +0800

    HBASE-21986 Generate CHANGES.md and RELEASENOTES.md for 2.2.0
---
 CHANGES.md      |  526 +++++++
 CHANGES.txt     | 4455 -------------------------------------------------------
 RELEASENOTES.md | 1011 +++++++++++++
 3 files changed, 1537 insertions(+), 4455 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
new file mode 100644
index 0000000..b1773de
--- /dev/null
+++ b/CHANGES.md
@@ -0,0 +1,526 @@
+
+<!---
+# 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.
+-->
+# HBASE Changelog
+
+## Release 2.2.0 - Unreleased (as of 2019-03-04)
+
+### INCOMPATIBLE CHANGES:
+
+| JIRA | Summary | Priority | Component |
+|:---- |:---- | :--- |:---- |
+| [HBASE-21082](https://issues.apache.org/jira/browse/HBASE-21082) | Reimplement assign/unassign related procedure metrics |  Critical | amv2, metrics |
+| [HBASE-20587](https://issues.apache.org/jira/browse/HBASE-20587) | Replace Jackson with shaded thirdparty gson |  Major | dependencies |
+| [HBASE-21727](https://issues.apache.org/jira/browse/HBASE-21727) | Simplify documentation around client timeout |  Minor | . |
+| [HBASE-21684](https://issues.apache.org/jira/browse/HBASE-21684) | Throw DNRIOE when connection or rpc client is closed |  Major | asyncclient, Client |
+| [HBASE-21792](https://issues.apache.org/jira/browse/HBASE-21792) | Mark HTableMultiplexer as deprecated and remove it in 3.0.0 |  Major | Client |
+| [HBASE-21657](https://issues.apache.org/jira/browse/HBASE-21657) | PrivateCellUtil#estimatedSerializedSizeOf has been the bottleneck in 100% scan case. |  Major | Performance |
+| [HBASE-21560](https://issues.apache.org/jira/browse/HBASE-21560) | Return a new TableDescriptor for MasterObserver#preModifyTable to allow coprocessor modify the TableDescriptor |  Major | Coprocessors |
+| [HBASE-21452](https://issues.apache.org/jira/browse/HBASE-21452) | Illegal character in hbase counters group name |  Major | spark |
+| [HBASE-21158](https://issues.apache.org/jira/browse/HBASE-21158) | Empty qualifier cell should not be returned if it does not match QualifierFilter |  Critical | Filters |
+| [HBASE-21223](https://issues.apache.org/jira/browse/HBASE-21223) | [amv2] Remove abort\_procedure from shell |  Critical | amv2, hbck2, shell |
+| [HBASE-20881](https://issues.apache.org/jira/browse/HBASE-20881) | Introduce a region transition procedure to handle all the state transition for a region |  Major | amv2, proc-v2 |
+| [HBASE-20884](https://issues.apache.org/jira/browse/HBASE-20884) | Replace usage of our Base64 implementation with java.util.Base64 |  Major | . |
+
+
+### NEW FEATURES:
+
+| JIRA | Summary | Priority | Component |
+|:---- |:---- | :--- |:---- |
+| [HBASE-20886](https://issues.apache.org/jira/browse/HBASE-20886) | [Auth] Support keytab login in hbase client |  Critical | asyncclient, Client, security |
+| [HBASE-17942](https://issues.apache.org/jira/browse/HBASE-17942) | Disable region splits and merges per table |  Major | . |
+| [HBASE-21753](https://issues.apache.org/jira/browse/HBASE-21753) | Support getting the locations for all the replicas of a region |  Major | Client |
+| [HBASE-20636](https://issues.apache.org/jira/browse/HBASE-20636) | Introduce two bloom filter type : ROWPREFIX\_FIXED\_LENGTH and ROWPREFIX\_DELIMITED |  Major | HFile, regionserver, scan |
+| [HBASE-20649](https://issues.apache.org/jira/browse/HBASE-20649) | Validate HFiles do not have PREFIX\_TREE DataBlockEncoding |  Minor | Operability, tooling |
+
+
+### IMPROVEMENTS:
+
+| JIRA | Summary | Priority | Component |
+|:---- |:---- | :--- |:---- |
+| [HBASE-21255](https://issues.apache.org/jira/browse/HBASE-21255) | [acl] Refactor TablePermission into three classes (Global, Namespace, Table) |  Major | . |
+| [HBASE-21410](https://issues.apache.org/jira/browse/HBASE-21410) | A helper page that help find all problematic regions and procedures |  Major | . |
+| [HBASE-20734](https://issues.apache.org/jira/browse/HBASE-20734) | Colocate recovered edits directory with hbase.wal.dir |  Major | MTTR, Recovery, wal |
+| [HBASE-20401](https://issues.apache.org/jira/browse/HBASE-20401) | Make \`MAX\_WAIT\` and \`waitIfNotFinished\` in CleanerContext configurable |  Minor | master |
+| [HBASE-21481](https://issues.apache.org/jira/browse/HBASE-21481) | [acl] Superuser's permissions should not be granted or revoked by any non-su global admin |  Major | . |
+| [HBASE-21967](https://issues.apache.org/jira/browse/HBASE-21967) | Split TestServerCrashProcedure and TestServerCrashProcedureWithReplicas |  Major | . |
+| [HBASE-21867](https://issues.apache.org/jira/browse/HBASE-21867) | Support multi-threads in HFileArchiver |  Major | . |
+| [HBASE-21667](https://issues.apache.org/jira/browse/HBASE-21667) | Move to latest ASF Parent POM |  Minor | build |
+| [HBASE-21932](https://issues.apache.org/jira/browse/HBASE-21932) | Use Runtime.getRuntime().halt to terminate regionserver when abort timeout |  Major | . |
+| [HBASE-21875](https://issues.apache.org/jira/browse/HBASE-21875) | Change the retry logic in RSProcedureDispatcher to 'retry by default, only if xxx' |  Major | proc-v2 |
+| [HBASE-21780](https://issues.apache.org/jira/browse/HBASE-21780) | Avoid a wide line on the RegionServer webUI for many ZooKeeper servers |  Minor | UI, Usability |
+| [HBASE-21636](https://issues.apache.org/jira/browse/HBASE-21636) | Enhance the shell scan command to support missing scanner specifications like ReadType, IsolationLevel etc. |  Major | shell |
+| [HBASE-21857](https://issues.apache.org/jira/browse/HBASE-21857) | Do not need to check clusterKey if replicationEndpoint is provided when adding a peer |  Major | . |
+| [HBASE-21201](https://issues.apache.org/jira/browse/HBASE-21201) | Support to run VerifyReplication MR tool without peerid |  Major | hbase-operator-tools |
+| [HBASE-21816](https://issues.apache.org/jira/browse/HBASE-21816) | Print source cluster replication config directory |  Trivial | Replication |
+| [HBASE-19616](https://issues.apache.org/jira/browse/HBASE-19616) | Review of LogCleaner Class |  Minor | . |
+| [HBASE-21830](https://issues.apache.org/jira/browse/HBASE-21830) | Backport HBASE-20577 (Make Log Level page design consistent with the design of other pages in UI) to branch-2 |  Major | UI, Usability |
+| [HBASE-21833](https://issues.apache.org/jira/browse/HBASE-21833) | Use NettyAsyncFSWALConfigHelper.setEventLoopConfig to prevent creating too many netty event loop when executing TestHRegion |  Minor | test |
+| [HBASE-21634](https://issues.apache.org/jira/browse/HBASE-21634) | Print error message when user uses unacceptable values for LIMIT while setting quotas. |  Minor | . |
+| [HBASE-21789](https://issues.apache.org/jira/browse/HBASE-21789) | Rewrite MetaTableAccessor.multiMutate with Table.coprocessorService |  Major | Client, Coprocessors |
+| [HBASE-21689](https://issues.apache.org/jira/browse/HBASE-21689) | Make table/namespace specific current quota info available in shell(describe\_namespace & describe) |  Minor | . |
+| [HBASE-20215](https://issues.apache.org/jira/browse/HBASE-20215) | Rename CollectionUtils to ConcurrentMapUtils |  Trivial | . |
+| [HBASE-21720](https://issues.apache.org/jira/browse/HBASE-21720) | metric to measure how actions are distributed to servers within a MultiAction |  Minor | Client, metrics, monitoring |
+| [HBASE-21595](https://issues.apache.org/jira/browse/HBASE-21595) | Print thread's information and stack traces when RS is aborting forcibly |  Minor | regionserver |
+| [HBASE-20209](https://issues.apache.org/jira/browse/HBASE-20209) | Do Not Use Both Map containsKey and get Methods in Replication Sink |  Trivial | Replication |
+| [HBASE-21712](https://issues.apache.org/jira/browse/HBASE-21712) | Make submit-patch.py python3 compatible |  Minor | tooling |
+| [HBASE-21590](https://issues.apache.org/jira/browse/HBASE-21590) | Optimize trySkipToNextColumn in StoreScanner a bit |  Critical | Performance, Scanners |
+| [HBASE-21297](https://issues.apache.org/jira/browse/HBASE-21297) | ModifyTableProcedure can throw TNDE instead of IOE in case of REGION\_REPLICATION change |  Minor | . |
+| [HBASE-21700](https://issues.apache.org/jira/browse/HBASE-21700) | Simplify the implementation of RSGroupInfoManagerImpl |  Major | rsgroup |
+| [HBASE-21694](https://issues.apache.org/jira/browse/HBASE-21694) | Add append\_peer\_exclude\_tableCFs and remove\_peer\_exclude\_tableCFs shell commands |  Major | . |
+| [HBASE-21645](https://issues.apache.org/jira/browse/HBASE-21645) | Perform sanity check and disallow table creation/modification with region replication \< 1 |  Minor | . |
+| [HBASE-21360](https://issues.apache.org/jira/browse/HBASE-21360) | Disable printing of stack-trace in shell for quotas |  Minor | shell |
+| [HBASE-21662](https://issues.apache.org/jira/browse/HBASE-21662) | Add append\_peer\_exclude\_namespaces and remove\_peer\_exclude\_namespaces shell commands |  Major | . |
+| [HBASE-21659](https://issues.apache.org/jira/browse/HBASE-21659) | Avoid to load duplicate coprocessors in system config and table descriptor |  Minor | . |
+| [HBASE-21642](https://issues.apache.org/jira/browse/HBASE-21642) | CopyTable by reading snapshot and bulkloading will save a lot of time. |  Major | . |
+| [HBASE-21643](https://issues.apache.org/jira/browse/HBASE-21643) | Introduce two new region coprocessor method and deprecated postMutationBeforeWAL |  Major | . |
+| [HBASE-21640](https://issues.apache.org/jira/browse/HBASE-21640) | Remove the TODO when increment zero |  Major | . |
+| [HBASE-21631](https://issues.apache.org/jira/browse/HBASE-21631) | list\_quotas should print human readable values for LIMIT |  Minor | shell |
+| [HBASE-21635](https://issues.apache.org/jira/browse/HBASE-21635) | Use maven enforcer to ban imports from illegal packages |  Major | build |
+| [HBASE-21514](https://issues.apache.org/jira/browse/HBASE-21514) | Refactor CacheConfig |  Major | . |
+| [HBASE-21520](https://issues.apache.org/jira/browse/HBASE-21520) | TestMultiColumnScanner cost long time when using ROWCOL bloom type |  Major | test |
+| [HBASE-21554](https://issues.apache.org/jira/browse/HBASE-21554) | Show replication endpoint classname for replication peer on master web UI |  Minor | UI |
+| [HBASE-21549](https://issues.apache.org/jira/browse/HBASE-21549) | Add shell command for serial replication peer |  Major | . |
+| [HBASE-21283](https://issues.apache.org/jira/browse/HBASE-21283) | Add new shell command 'rit' for listing regions in transition |  Minor | Operability, shell |
+| [HBASE-21567](https://issues.apache.org/jira/browse/HBASE-21567) | Allow overriding configs starting up the shell |  Major | shell |
+| [HBASE-21413](https://issues.apache.org/jira/browse/HBASE-21413) | Empty meta log doesn't get split when restart whole cluster |  Major | . |
+| [HBASE-21524](https://issues.apache.org/jira/browse/HBASE-21524) | Unnecessary DEBUG log in ConnectionImplementation#isTableEnabled |  Major | Client |
+| [HBASE-21511](https://issues.apache.org/jira/browse/HBASE-21511) | Remove in progress snapshot check in SnapshotFileCache#getUnreferencedFiles |  Minor | snapshots |
+| [HBASE-21480](https://issues.apache.org/jira/browse/HBASE-21480) | Taking snapshot when RS crashes prevent we bring the regions online |  Major | snapshots |
+| [HBASE-21485](https://issues.apache.org/jira/browse/HBASE-21485) | Add more debug logs for remote procedure execution |  Major | proc-v2 |
+| [HBASE-21328](https://issues.apache.org/jira/browse/HBASE-21328) | add HBASE\_DISABLE\_HADOOP\_CLASSPATH\_LOOKUP switch to hbase-env.sh |  Minor | documentation, Operability |
+| [HBASE-19682](https://issues.apache.org/jira/browse/HBASE-19682) | Use Collections.emptyList() For Empty List Values |  Minor | . |
+| [HBASE-21388](https://issues.apache.org/jira/browse/HBASE-21388) | No need to instantiate MemStoreLAB for master which not carry table |  Major | . |
+| [HBASE-21325](https://issues.apache.org/jira/browse/HBASE-21325) | Force to terminate regionserver when abort hang in somewhere |  Major | . |
+| [HBASE-21385](https://issues.apache.org/jira/browse/HBASE-21385) | HTable.delete request use rpc call directly instead of AsyncProcess |  Major | . |
+| [HBASE-21318](https://issues.apache.org/jira/browse/HBASE-21318) | Make RefreshHFilesClient runnable |  Minor | HFile |
+| [HBASE-21263](https://issues.apache.org/jira/browse/HBASE-21263) | Mention compression algorithm along with other storefile details |  Minor | . |
+| [HBASE-21290](https://issues.apache.org/jira/browse/HBASE-21290) | No need to instantiate BlockCache for master which not carry table |  Major | . |
+| [HBASE-21256](https://issues.apache.org/jira/browse/HBASE-21256) | Improve IntegrationTestBigLinkedList for testing huge data |  Major | integration tests |
+| [HBASE-21251](https://issues.apache.org/jira/browse/HBASE-21251) | Refactor RegionMover |  Major | Operability |
+| [HBASE-21303](https://issues.apache.org/jira/browse/HBASE-21303) | [shell] clear\_deadservers with no args fails |  Major | . |
+| [HBASE-21098](https://issues.apache.org/jira/browse/HBASE-21098) | Improve Snapshot Performance with Temporary Snapshot Directory when rootDir on S3 |  Major | . |
+| [HBASE-21299](https://issues.apache.org/jira/browse/HBASE-21299) | List counts of actual region states in master UI tables section |  Major | UI |
+| [HBASE-21289](https://issues.apache.org/jira/browse/HBASE-21289) | Remove the log "'hbase.regionserver.maxlogs' was deprecated." in AbstractFSWAL |  Minor | . |
+| [HBASE-21185](https://issues.apache.org/jira/browse/HBASE-21185) | WALPrettyPrinter: Additional useful info to be printed by wal printer tool, for debugability purposes |  Minor | Operability |
+| [HBASE-21103](https://issues.apache.org/jira/browse/HBASE-21103) | nightly test cache of yetus install needs to be more thorough in verification |  Major | test |
+| [HBASE-21207](https://issues.apache.org/jira/browse/HBASE-21207) | Add client side sorting functionality in master web UI for table and region server details. |  Minor | master, monitoring, UI, Usability |
+| [HBASE-20857](https://issues.apache.org/jira/browse/HBASE-20857) | JMX - add Balancer status = enabled / disabled |  Major | API, master, metrics, REST, tooling, Usability |
+| [HBASE-21164](https://issues.apache.org/jira/browse/HBASE-21164) | reportForDuty to spew less log if master is initializing |  Minor | regionserver |
+| [HBASE-21204](https://issues.apache.org/jira/browse/HBASE-21204) | NPE when scan raw DELETE\_FAMILY\_VERSION and codec is not set |  Major | . |
+| [HBASE-20307](https://issues.apache.org/jira/browse/HBASE-20307) | LoadTestTool prints too much zookeeper logging |  Minor | tooling |
+| [HBASE-21155](https://issues.apache.org/jira/browse/HBASE-21155) | Save on a few log strings and some churn in wal splitter by skipping out early if no logs in dir |  Trivial | . |
+| [HBASE-21129](https://issues.apache.org/jira/browse/HBASE-21129) | Clean up duplicate codes in #equals and #hashCode methods of Filter |  Minor | Filters |
+| [HBASE-21157](https://issues.apache.org/jira/browse/HBASE-21157) | Split TableInputFormatScan to individual tests |  Minor | test |
+| [HBASE-21107](https://issues.apache.org/jira/browse/HBASE-21107) | add a metrics for netty direct memory |  Minor | IPC/RPC |
+| [HBASE-21153](https://issues.apache.org/jira/browse/HBASE-21153) | Shaded client jars should always build in relevant phase to avoid confusion |  Major | build |
+| [HBASE-21126](https://issues.apache.org/jira/browse/HBASE-21126) | Add ability for HBase Canary to ignore a configurable number of ZooKeeper down nodes |  Minor | canary, Zookeeper |
+| [HBASE-20749](https://issues.apache.org/jira/browse/HBASE-20749) | Upgrade our use of checkstyle to 8.6+ |  Minor | build, community |
+| [HBASE-21071](https://issues.apache.org/jira/browse/HBASE-21071) | HBaseTestingUtility::startMiniCluster() to use builder pattern |  Major | test |
+| [HBASE-20387](https://issues.apache.org/jira/browse/HBASE-20387) | flaky infrastructure should work for all branches |  Critical | test |
+| [HBASE-20469](https://issues.apache.org/jira/browse/HBASE-20469) | Directory used for sidelining old recovered edits files should be made configurable |  Minor | . |
+| [HBASE-20979](https://issues.apache.org/jira/browse/HBASE-20979) | Flaky test reporting should specify what JSON it needs and handle HTTP errors |  Minor | test |
+| [HBASE-20985](https://issues.apache.org/jira/browse/HBASE-20985) | add two attributes when we do normalization |  Major | . |
+| [HBASE-20965](https://issues.apache.org/jira/browse/HBASE-20965) | Separate region server report requests to new handlers |  Major | Performance |
+| [HBASE-20845](https://issues.apache.org/jira/browse/HBASE-20845) | Support set the consistency for Gets and Scans in thrift2 |  Major | Thrift |
+| [HBASE-20986](https://issues.apache.org/jira/browse/HBASE-20986) | Separate the config of block size when we do log splitting and write Hlog |  Major | . |
+| [HBASE-19036](https://issues.apache.org/jira/browse/HBASE-19036) | Add action in Chaos Monkey to restart Active Namenode |  Minor | . |
+| [HBASE-20856](https://issues.apache.org/jira/browse/HBASE-20856) | PITA having to set WAL provider in two places |  Minor | Operability, wal |
+| [HBASE-20935](https://issues.apache.org/jira/browse/HBASE-20935) | HStore.removeCompactedFiles should log in case it is unable to delete a file |  Minor | . |
+| [HBASE-20873](https://issues.apache.org/jira/browse/HBASE-20873) | Update doc for Endpoint-based Export |  Minor | documentation |
+| [HBASE-20672](https://issues.apache.org/jira/browse/HBASE-20672) | New metrics ReadRequestRate and WriteRequestRate |  Minor | metrics |
+| [HBASE-20617](https://issues.apache.org/jira/browse/HBASE-20617) | Upgrade/remove jetty-jsp |  Minor | . |
+| [HBASE-20396](https://issues.apache.org/jira/browse/HBASE-20396) | Remove redundant MBean from thrift JMX |  Major | Thrift |
+| [HBASE-20357](https://issues.apache.org/jira/browse/HBASE-20357) | AccessControlClient API Enhancement |  Major | security |
+
+
+### BUG FIXES:
+
+| JIRA | Summary | Priority | Component |
+|:---- |:---- | :--- |:---- |
+| [HBASE-21565](https://issues.apache.org/jira/browse/HBASE-21565) | Delete dead server from dead server list too early leads to concurrent Server Crash Procedures(SCP) for a same server |  Critical | . |
+| [HBASE-21740](https://issues.apache.org/jira/browse/HBASE-21740) | NPE happens while shutdown the RS |  Major | . |
+| [HBASE-21866](https://issues.apache.org/jira/browse/HBASE-21866) | Do not move the table to null rsgroup when creating an existing table |  Major | proc-v2, rsgroup |
+| [HBASE-21983](https://issues.apache.org/jira/browse/HBASE-21983) | Should track the scan metrics in AsyncScanSingleRegionRpcRetryingCaller if scan metrics is enabled |  Major | asyncclient, Client |
+| [HBASE-21980](https://issues.apache.org/jira/browse/HBASE-21980) | Fix typo in AbstractTestAsyncTableRegionReplicasRead |  Major | test |
+| [HBASE-21487](https://issues.apache.org/jira/browse/HBASE-21487) | Concurrent modify table ops can lead to unexpected results |  Major | . |
+| [HBASE-20724](https://issues.apache.org/jira/browse/HBASE-20724) | Sometimes some compacted storefiles are still opened after region failover |  Critical | . |
+| [HBASE-21961](https://issues.apache.org/jira/browse/HBASE-21961) | Infinite loop in AsyncNonMetaRegionLocator if there is only one region and we tried to locate before a non empty row |  Critical | asyncclient, Client |
+| [HBASE-21960](https://issues.apache.org/jira/browse/HBASE-21960) | RESTServletContainer not configured for REST Jetty server |  Blocker | REST |
+| [HBASE-21943](https://issues.apache.org/jira/browse/HBASE-21943) | The usage of RegionLocations.mergeRegionLocations is wrong for async client |  Critical | asyncclient, Client |
+| [HBASE-21947](https://issues.apache.org/jira/browse/HBASE-21947) | TestShell is broken after we remove the jackson dependencies |  Major | dependencies, shell |
+| [HBASE-21942](https://issues.apache.org/jira/browse/HBASE-21942) | [UI] requests per second is incorrect in rsgroup page(rsgroup.jsp) |  Minor | . |
+| [HBASE-21922](https://issues.apache.org/jira/browse/HBASE-21922) | BloomContext#sanityCheck may failed when use ROWPREFIX\_DELIMITED bloom filter |  Major | . |
+| [HBASE-21929](https://issues.apache.org/jira/browse/HBASE-21929) | The checks at the end of TestRpcClientLeaks are not executed |  Major | test |
+| [HBASE-21938](https://issues.apache.org/jira/browse/HBASE-21938) | Add a new ClusterMetrics.Option SERVERS\_NAME to only return the live region servers's name without metrics |  Major | . |
+| [HBASE-21928](https://issues.apache.org/jira/browse/HBASE-21928) | Deprecated HConstants.META\_QOS |  Major | Client, rpc |
+| [HBASE-21915](https://issues.apache.org/jira/browse/HBASE-21915) | FileLink$FileLinkInputStream doesn't implement CanUnbuffer |  Major | Filesystem Integration |
+| [HBASE-21899](https://issues.apache.org/jira/browse/HBASE-21899) | Fix missing variables in slf4j Logger |  Trivial | logging |
+| [HBASE-21910](https://issues.apache.org/jira/browse/HBASE-21910) | The nonce implementation is wrong for AsyncTable |  Critical | asyncclient, Client |
+| [HBASE-21900](https://issues.apache.org/jira/browse/HBASE-21900) | Infinite loop in AsyncMetaRegionLocator if we can not get the location for meta |  Major | asyncclient, Client |
+| [HBASE-21890](https://issues.apache.org/jira/browse/HBASE-21890) | Use execute instead of submit to submit a task in RemoteProcedureDispatcher |  Critical | proc-v2 |
+| [HBASE-21889](https://issues.apache.org/jira/browse/HBASE-21889) | Use thrift 0.12.0 when build thrift by compile-thrift profile |  Major | . |
+| [HBASE-21785](https://issues.apache.org/jira/browse/HBASE-21785) | master reports open regions as RITs and also messes up rit age metric |  Major | . |
+| [HBASE-21854](https://issues.apache.org/jira/browse/HBASE-21854) | Race condition in TestProcedureSkipPersistence |  Minor | proc-v2 |
+| [HBASE-21862](https://issues.apache.org/jira/browse/HBASE-21862) | IPCUtil.wrapException should keep the original exception types for all the connection exceptions |  Blocker | . |
+| [HBASE-18484](https://issues.apache.org/jira/browse/HBASE-18484) | VerifyRep by snapshot  does not work when Yarn / SourceHBase / PeerHBase located in different HDFS clusters |  Major | Replication |
+| [HBASE-21775](https://issues.apache.org/jira/browse/HBASE-21775) | The BufferedMutator doesn't ever refresh region location cache |  Major | Client |
+| [HBASE-21843](https://issues.apache.org/jira/browse/HBASE-21843) | RegionGroupingProvider breaks the meta wal file name pattern which may cause data loss for meta region |  Blocker | wal |
+| [HBASE-21795](https://issues.apache.org/jira/browse/HBASE-21795) | Client application may get stuck (time bound) if a table modify op is called immediately after split op |  Critical | amv2 |
+| [HBASE-21840](https://issues.apache.org/jira/browse/HBASE-21840) | TestHRegionWithInMemoryFlush fails with NPE |  Blocker | test |
+| [HBASE-21811](https://issues.apache.org/jira/browse/HBASE-21811) | region can be opened on two servers due to race condition with procedures and server reports |  Blocker | amv2 |
+| [HBASE-21644](https://issues.apache.org/jira/browse/HBASE-21644) | Modify table procedure runs infinitely for a table having region replication \> 1 |  Critical | Admin |
+| [HBASE-21733](https://issues.apache.org/jira/browse/HBASE-21733) | SnapshotQuotaObserverChore should only fetch space quotas |  Major | . |
+| [HBASE-21699](https://issues.apache.org/jira/browse/HBASE-21699) | Create table failed when using  SPLITS\_FILE =\> 'splits.txt' |  Blocker | Client, shell |
+| [HBASE-21535](https://issues.apache.org/jira/browse/HBASE-21535) | Zombie Master detector is not working |  Critical | master |
+| [HBASE-21770](https://issues.apache.org/jira/browse/HBASE-21770) | Should deal with meta table in HRegionLocator.getAllRegionLocations |  Major | Client |
+| [HBASE-21754](https://issues.apache.org/jira/browse/HBASE-21754) | ReportRegionStateTransitionRequest should be executed in priority executor |  Major | . |
+| [HBASE-21475](https://issues.apache.org/jira/browse/HBASE-21475) | Put mutation (having TTL set) added via co-processor is retrieved even after TTL expires |  Major | Coprocessors |
+| [HBASE-21749](https://issues.apache.org/jira/browse/HBASE-21749) | RS UI may throw NPE and make rs-status page inaccessible with multiwal and replication |  Major | Replication, UI |
+| [HBASE-21746](https://issues.apache.org/jira/browse/HBASE-21746) | Fix two concern cases in RegionMover |  Major | . |
+| [HBASE-21732](https://issues.apache.org/jira/browse/HBASE-21732) | Should call toUpperCase before using Enum.valueOf in some methods for ColumnFamilyDescriptor |  Critical | Client |
+| [HBASE-21704](https://issues.apache.org/jira/browse/HBASE-21704) | The implementation of DistributedHBaseCluster.getServerHoldingRegion is incorrect |  Major | . |
+| [HBASE-20917](https://issues.apache.org/jira/browse/HBASE-20917) | MetaTableMetrics#stop references uninitialized requestsMap for non-meta region |  Major | meta, metrics |
+| [HBASE-21639](https://issues.apache.org/jira/browse/HBASE-21639) | maxHeapUsage value not read properly from config during EntryBuffers initialization |  Minor | . |
+| [HBASE-21225](https://issues.apache.org/jira/browse/HBASE-21225) | Having RPC & Space quota on a table/Namespace doesn't allow space quota to be removed using 'NONE' |  Major | . |
+| [HBASE-21707](https://issues.apache.org/jira/browse/HBASE-21707) | Fix warnings in hbase-rsgroup module and also make the UTs more stable |  Major | Region Assignment, rsgroup |
+| [HBASE-20220](https://issues.apache.org/jira/browse/HBASE-20220) | [RSGroup] Check if table exists in the cluster before moving it to the specified regionserver group |  Major | rsgroup |
+| [HBASE-21691](https://issues.apache.org/jira/browse/HBASE-21691) | Fix flaky test TestRecoveredEdits |  Major | . |
+| [HBASE-21695](https://issues.apache.org/jira/browse/HBASE-21695) | Fix flaky test TestRegionServerAbortTimeout |  Major | . |
+| [HBASE-21614](https://issues.apache.org/jira/browse/HBASE-21614) | RIT recovery with ServerCrashProcedure doesn't account for all regions |  Critical | amv2 |
+| [HBASE-21618](https://issues.apache.org/jira/browse/HBASE-21618) | Scan with the same startRow(inclusive=true) and stopRow(inclusive=false) returns one result |  Critical | Client |
+| [HBASE-21683](https://issues.apache.org/jira/browse/HBASE-21683) | Reset readsEnabled flag after successfully flushing the primary region |  Critical | read replicas |
+| [HBASE-21630](https://issues.apache.org/jira/browse/HBASE-21630) | [shell] Define ENDKEY == STOPROW (we have ENDROW) |  Trivial | shell |
+| [HBASE-21547](https://issues.apache.org/jira/browse/HBASE-21547) | Precommit uses master flaky list for other branches |  Major | test |
+| [HBASE-21660](https://issues.apache.org/jira/browse/HBASE-21660) | Apply the cell to right memstore for increment/append operation |  Major | . |
+| [HBASE-21646](https://issues.apache.org/jira/browse/HBASE-21646) | Flakey TestTableSnapshotInputFormat; DisableTable not completing... |  Major | test |
+| [HBASE-21545](https://issues.apache.org/jira/browse/HBASE-21545) | NEW\_VERSION\_BEHAVIOR breaks Get/Scan with specified columns |  Major | API |
+| [HBASE-21629](https://issues.apache.org/jira/browse/HBASE-21629) | draining\_servers.rb is broken |  Major | scripts |
+| [HBASE-21621](https://issues.apache.org/jira/browse/HBASE-21621) | Reversed scan does not return expected  number of rows |  Critical | scan |
+| [HBASE-21620](https://issues.apache.org/jira/browse/HBASE-21620) | Problem in scan query when using more than one column prefix filter in some cases. |  Major | scan |
+| [HBASE-21610](https://issues.apache.org/jira/browse/HBASE-21610) | numOpenConnections metric is set to -1 when zero server channel exist |  Minor | metrics |
+| [HBASE-21498](https://issues.apache.org/jira/browse/HBASE-21498) | Master OOM when SplitTableRegionProcedure new CacheConfig and instantiate a new BlockCache |  Major | . |
+| [HBASE-21592](https://issues.apache.org/jira/browse/HBASE-21592) | quota.addGetResult(r)  throw  NPE |  Major | . |
+| [HBASE-21589](https://issues.apache.org/jira/browse/HBASE-21589) | TestCleanupMetaWAL fails |  Blocker | test, wal |
+| [HBASE-21575](https://issues.apache.org/jira/browse/HBASE-21575) | memstore above high watermark message is logged too much |  Minor | logging, regionserver |
+| [HBASE-21582](https://issues.apache.org/jira/browse/HBASE-21582) | If call HBaseAdmin#snapshotAsync but forget call isSnapshotFinished, then SnapshotHFileCleaner will skip to run every time |  Major | . |
+| [HBASE-21568](https://issues.apache.org/jira/browse/HBASE-21568) | Disable use of BlockCache for LoadIncrementalHFiles |  Major | Client |
+| [HBASE-21453](https://issues.apache.org/jira/browse/HBASE-21453) | Convert ReadOnlyZKClient to DEBUG instead of INFO |  Major | logging, Zookeeper |
+| [HBASE-21559](https://issues.apache.org/jira/browse/HBASE-21559) | The RestoreSnapshotFromClientTestBase related UT are flaky |  Major | . |
+| [HBASE-21551](https://issues.apache.org/jira/browse/HBASE-21551) | Memory leak when use scan with STREAM at server side |  Blocker | regionserver |
+| [HBASE-21550](https://issues.apache.org/jira/browse/HBASE-21550) | Add a new method preCreateTableRegionInfos for MasterObserver which allows CPs to modify the TableDescriptor |  Major | Coprocessors |
+| [HBASE-21479](https://issues.apache.org/jira/browse/HBASE-21479) | Individual tests in TestHRegionReplayEvents class are failing |  Major | . |
+| [HBASE-21518](https://issues.apache.org/jira/browse/HBASE-21518) | TestMasterFailoverWithProcedures is flaky |  Major | . |
+| [HBASE-21504](https://issues.apache.org/jira/browse/HBASE-21504) | If enable FIFOCompactionPolicy, a compaction may write a "empty" hfile whose maxTimeStamp is long max. This kind of hfile will never be archived. |  Critical | Compaction |
+| [HBASE-21300](https://issues.apache.org/jira/browse/HBASE-21300) | Fix the wrong reference file path when restoring snapshots for tables with MOB columns |  Major | . |
+| [HBASE-21492](https://issues.apache.org/jira/browse/HBASE-21492) | CellCodec Written To WAL Before It's Verified |  Critical | wal |
+| [HBASE-21507](https://issues.apache.org/jira/browse/HBASE-21507) | Compaction failed when execute AbstractMultiFileWriter.beforeShipped() method |  Major | regionserver |
+| [HBASE-21387](https://issues.apache.org/jira/browse/HBASE-21387) | Race condition surrounding in progress snapshot handling in snapshot cache leads to loss of snapshot files |  Major | snapshots |
+| [HBASE-21503](https://issues.apache.org/jira/browse/HBASE-21503) | Replication normal source can get stuck due potential race conditions between source wal reader and wal provider initialization threads. |  Blocker | Replication |
+| [HBASE-21466](https://issues.apache.org/jira/browse/HBASE-21466) | WALProcedureStore uses wrong FileSystem if wal.dir is not under rootdir |  Major | . |
+| [HBASE-21445](https://issues.apache.org/jira/browse/HBASE-21445) | CopyTable by bulkload will write hfile into yarn's HDFS |  Major | mapreduce |
+| [HBASE-21437](https://issues.apache.org/jira/browse/HBASE-21437) | Bypassed procedure throw IllegalArgumentException when its state is WAITING\_TIMEOUT |  Major | . |
+| [HBASE-21439](https://issues.apache.org/jira/browse/HBASE-21439) | StochasticLoadBalancer RegionLoads aren’t being used in RegionLoad cost functions |  Major | Balancer |
+| [HBASE-20604](https://issues.apache.org/jira/browse/HBASE-20604) | ProtobufLogReader#readNext can incorrectly loop to the same position in the stream until the the WAL is rolled |  Critical | Replication, wal |
+| [HBASE-21247](https://issues.apache.org/jira/browse/HBASE-21247) | Custom Meta WAL Provider doesn't default to custom WAL Provider whose configuration value is outside the enums in Providers |  Major | wal |
+| [HBASE-21430](https://issues.apache.org/jira/browse/HBASE-21430) | [hbase-connectors] Move hbase-spark\* modules to hbase-connectors repo |  Major | hbase-connectors, spark |
+| [HBASE-21438](https://issues.apache.org/jira/browse/HBASE-21438) | TestAdmin2#testGetProcedures fails due to FailedProcedure inaccessible |  Major | . |
+| [HBASE-21425](https://issues.apache.org/jira/browse/HBASE-21425) | 2.1.1 fails to start over 1.x data; namespace not assigned |  Critical | amv2 |
+| [HBASE-21407](https://issues.apache.org/jira/browse/HBASE-21407) | Resolve NPE in backup Master UI |  Minor | UI |
+| [HBASE-21422](https://issues.apache.org/jira/browse/HBASE-21422) | NPE in TestMergeTableRegionsProcedure.testMergeWithoutPONR |  Major | proc-v2, test |
+| [HBASE-21424](https://issues.apache.org/jira/browse/HBASE-21424) | Change flakies and nightlies so scheduled less often |  Major | build |
+| [HBASE-21417](https://issues.apache.org/jira/browse/HBASE-21417) | Pre commit build is broken due to surefire plugin crashes |  Critical | build |
+| [HBASE-21371](https://issues.apache.org/jira/browse/HBASE-21371) | Hbase unable to compile against Hadoop trunk (3.3.0-SNAPSHOT) due to license error |  Major | . |
+| [HBASE-21391](https://issues.apache.org/jira/browse/HBASE-21391) | RefreshPeerProcedure should also wait master initialized before executing |  Major | Replication |
+| [HBASE-21342](https://issues.apache.org/jira/browse/HBASE-21342) | FileSystem in use may get closed by other bulk load call  in secure bulkLoad |  Major | . |
+| [HBASE-21349](https://issues.apache.org/jira/browse/HBASE-21349) | Cluster is going down but CatalogJanitor and Normalizer try to run and fail noisely |  Minor | . |
+| [HBASE-21356](https://issues.apache.org/jira/browse/HBASE-21356) | bulkLoadHFile API should ensure that rs has the source hfile's write permission |  Major | . |
+| [HBASE-21355](https://issues.apache.org/jira/browse/HBASE-21355) | HStore's storeSize is calculated repeatedly which causing the confusing region split |  Blocker | regionserver |
+| [HBASE-21334](https://issues.apache.org/jira/browse/HBASE-21334) | TestMergeTableRegionsProcedure is flakey |  Major | amv2, proc-v2, test |
+| [HBASE-21178](https://issues.apache.org/jira/browse/HBASE-21178) | [BC break] : Get and Scan operation with a custom converter\_class not working |  Critical | shell |
+| [HBASE-21200](https://issues.apache.org/jira/browse/HBASE-21200) | Memstore flush doesn't finish because of seekToPreviousRow() in memstore scanner. |  Critical | Scanners |
+| [HBASE-21292](https://issues.apache.org/jira/browse/HBASE-21292) | IdLock.getLockEntry() may hang if interrupted |  Major | . |
+| [HBASE-21335](https://issues.apache.org/jira/browse/HBASE-21335) | Change the default wait time of HBCK2 tool |  Critical | . |
+| [HBASE-21291](https://issues.apache.org/jira/browse/HBASE-21291) | Add a test for bypassing stuck state-machine procedures |  Major | . |
+| [HBASE-21055](https://issues.apache.org/jira/browse/HBASE-21055) | NullPointerException when balanceOverall() but server balance info is null |  Major | Balancer |
+| [HBASE-21327](https://issues.apache.org/jira/browse/HBASE-21327) | Fix minor logging issue where we don't report servername if no associated SCP |  Trivial | amv2 |
+| [HBASE-21320](https://issues.apache.org/jira/browse/HBASE-21320) | [canary] Cleanup of usage and add commentary |  Major | canary |
+| [HBASE-21266](https://issues.apache.org/jira/browse/HBASE-21266) | Not running balancer because processing dead regionservers, but empty dead rs list |  Major | . |
+| [HBASE-21260](https://issues.apache.org/jira/browse/HBASE-21260) | The whole balancer plans might be aborted if there are more than one plans to move a same region |  Major | Balancer, master |
+| [HBASE-21280](https://issues.apache.org/jira/browse/HBASE-21280) | Add anchors for each heading in UI |  Trivial | UI, Usability |
+| [HBASE-20764](https://issues.apache.org/jira/browse/HBASE-20764) | build broken when latest commit is gpg signed |  Critical | build |
+| [HBASE-18549](https://issues.apache.org/jira/browse/HBASE-18549) | Unclaimed replication queues can go undetected |  Critical | Replication |
+| [HBASE-21248](https://issues.apache.org/jira/browse/HBASE-21248) | Implement exponential backoff when retrying for ModifyPeerProcedure |  Major | proc-v2, Replication |
+| [HBASE-21196](https://issues.apache.org/jira/browse/HBASE-21196) | HTableMultiplexer clears the meta cache after every put operation |  Critical | Performance |
+| [HBASE-19418](https://issues.apache.org/jira/browse/HBASE-19418) | RANGE\_OF\_DELAY in PeriodicMemstoreFlusher should be configurable. |  Minor | . |
+| [HBASE-18451](https://issues.apache.org/jira/browse/HBASE-18451) | PeriodicMemstoreFlusher should inspect the queue before adding a delayed flush request |  Major | regionserver |
+| [HBASE-21228](https://issues.apache.org/jira/browse/HBASE-21228) | Memory leak since AbstractFSWAL caches Thread object and never clean later |  Critical | wal |
+| [HBASE-20766](https://issues.apache.org/jira/browse/HBASE-20766) | Verify Replication Tool Has Typo "remove cluster" |  Trivial | . |
+| [HBASE-21232](https://issues.apache.org/jira/browse/HBASE-21232) | Show table state in Tables view on Master home page |  Major | Operability, UI |
+| [HBASE-21212](https://issues.apache.org/jira/browse/HBASE-21212) | Wrong flush time when update flush metric |  Minor | . |
+| [HBASE-21208](https://issues.apache.org/jira/browse/HBASE-21208) | Bytes#toShort doesn't work without unsafe |  Critical | . |
+| [HBASE-20704](https://issues.apache.org/jira/browse/HBASE-20704) | Sometimes some compacted storefiles are not archived on region close |  Critical | Compaction |
+| [HBASE-21203](https://issues.apache.org/jira/browse/HBASE-21203) | TestZKMainServer#testCommandLineWorks won't pass with default 4lw whitelist |  Minor | test, Zookeeper |
+| [HBASE-21102](https://issues.apache.org/jira/browse/HBASE-21102) | ServerCrashProcedure should select target server where no other replicas exist for the current region |  Major | Region Assignment |
+| [HBASE-21206](https://issues.apache.org/jira/browse/HBASE-21206) | Scan with batch size may return incomplete cells |  Critical | scan |
+| [HBASE-21182](https://issues.apache.org/jira/browse/HBASE-21182) | Failed to execute start-hbase.sh |  Major | . |
+| [HBASE-21179](https://issues.apache.org/jira/browse/HBASE-21179) | Fix the number of actions in responseTooSlow log |  Major | logging, rpc |
+| [HBASE-21174](https://issues.apache.org/jira/browse/HBASE-21174) | [REST] Failed to parse empty qualifier in TableResource#getScanResource |  Major | REST |
+| [HBASE-21181](https://issues.apache.org/jira/browse/HBASE-21181) | Use the same filesystem for wal archive directory and wal directory |  Major | . |
+| [HBASE-21021](https://issues.apache.org/jira/browse/HBASE-21021) | Result returned by Append operation should be ordered |  Major | . |
+| [HBASE-21173](https://issues.apache.org/jira/browse/HBASE-21173) | Remove the duplicate HRegion#close in TestHRegion |  Minor | test |
+| [HBASE-21144](https://issues.apache.org/jira/browse/HBASE-21144) | AssignmentManager.waitForAssignment is not stable |  Major | amv2, test |
+| [HBASE-21143](https://issues.apache.org/jira/browse/HBASE-21143) | Update findbugs-maven-plugin to 3.0.4 |  Major | pom |
+| [HBASE-21171](https://issues.apache.org/jira/browse/HBASE-21171) | [amv2] Tool to parse a directory of MasterProcWALs standalone |  Major | amv2, test |
+| [HBASE-21052](https://issues.apache.org/jira/browse/HBASE-21052) | After restoring a snapshot, table.jsp page for the table gets stuck |  Major | snapshots |
+| [HBASE-21001](https://issues.apache.org/jira/browse/HBASE-21001) | ReplicationObserver fails to load in HBase 2.0.0 |  Major | . |
+| [HBASE-20741](https://issues.apache.org/jira/browse/HBASE-20741) | Split of a region with replicas creates all daughter regions and its replica in same server |  Major | read replicas |
+| [HBASE-21127](https://issues.apache.org/jira/browse/HBASE-21127) | TableRecordReader need to handle cursor result too |  Major | . |
+| [HBASE-20892](https://issues.apache.org/jira/browse/HBASE-20892) | [UI] Start / End keys are empty on table.jsp |  Major | . |
+| [HBASE-21136](https://issues.apache.org/jira/browse/HBASE-21136) | NPE in MetricsTableSourceImpl.updateFlushTime |  Major | metrics |
+| [HBASE-21132](https://issues.apache.org/jira/browse/HBASE-21132) | return wrong result in rest multiget |  Major | . |
+| [HBASE-21128](https://issues.apache.org/jira/browse/HBASE-21128) | TestAsyncRegionAdminApi.testAssignRegionAndUnassignRegion is broken |  Major | test |
+| [HBASE-20940](https://issues.apache.org/jira/browse/HBASE-20940) | HStore.cansplit should not allow split to happen if it has references |  Major | . |
+| [HBASE-21084](https://issues.apache.org/jira/browse/HBASE-21084) | When cloning a snapshot including a split parent region, the split parent region of the cloned table will be online |  Major | snapshots |
+| [HBASE-20968](https://issues.apache.org/jira/browse/HBASE-20968) | list\_procedures\_test fails due to no matching regex |  Major | shell, test |
+| [HBASE-21030](https://issues.apache.org/jira/browse/HBASE-21030) | Correct javadoc for append operation |  Minor | documentation |
+| [HBASE-21088](https://issues.apache.org/jira/browse/HBASE-21088) | HStoreFile should be closed in HStore#hasReferences |  Major | . |
+| [HBASE-20890](https://issues.apache.org/jira/browse/HBASE-20890) | PE filterScan seems to be stuck forever |  Minor | . |
+| [HBASE-20772](https://issues.apache.org/jira/browse/HBASE-20772) | Controlled shutdown fills Master log with the disturbing message "No matching procedure found for rit=OPEN, location=ZZZZ, table=YYYYY, region=XXXX transition to CLOSED |  Major | logging |
+| [HBASE-20978](https://issues.apache.org/jira/browse/HBASE-20978) | [amv2] Worker terminating UNNATURALLY during MoveRegionProcedure |  Critical | amv2 |
+| [HBASE-21078](https://issues.apache.org/jira/browse/HBASE-21078) | [amv2] CODE-BUG NPE in RTP doing Unassign |  Major | amv2 |
+| [HBASE-21113](https://issues.apache.org/jira/browse/HBASE-21113) | Apply the branch-2 version of HBASE-21095, The timeout retry logic for several procedures are broken after master restarts |  Major | amv2 |
+| [HBASE-21101](https://issues.apache.org/jira/browse/HBASE-21101) | Remove the waitUntilAllRegionsAssigned call after split in TestTruncateTableProcedure |  Major | test |
+| [HBASE-19008](https://issues.apache.org/jira/browse/HBASE-19008) | Add missing equals or hashCode method(s) to stock Filter implementations |  Major | . |
+| [HBASE-20614](https://issues.apache.org/jira/browse/HBASE-20614) | REST scan API with incorrect filter text file throws HTTP 503 Service Unavailable error |  Minor | REST |
+| [HBASE-21041](https://issues.apache.org/jira/browse/HBASE-21041) | Memstore's heap size will be decreased to minus zero after flush |  Major | . |
+| [HBASE-21031](https://issues.apache.org/jira/browse/HBASE-21031) | Memory leak if replay edits failed during region opening |  Major | . |
+| [HBASE-20666](https://issues.apache.org/jira/browse/HBASE-20666) | Unsuccessful table creation leaves entry in hbase:rsgroup table |  Minor | . |
+| [HBASE-21032](https://issues.apache.org/jira/browse/HBASE-21032) | ScanResponses contain only one cell each |  Major | Performance, Scanners |
+| [HBASE-20705](https://issues.apache.org/jira/browse/HBASE-20705) | Having RPC Quota on a table prevents Space quota to be recreated/removed |  Major | . |
+| [HBASE-21058](https://issues.apache.org/jira/browse/HBASE-21058) | Nightly tests for branches 1 fail to build ref guide |  Major | documentation |
+| [HBASE-21074](https://issues.apache.org/jira/browse/HBASE-21074) | JDK7 branches need to pass "-Dhttps.protocols=TLSv1.2" to maven when building |  Major | build, community, test |
+| [HBASE-21062](https://issues.apache.org/jira/browse/HBASE-21062) | WALFactory has misleading notion of "default" |  Major | wal |
+| [HBASE-21047](https://issues.apache.org/jira/browse/HBASE-21047) | Object creation of StoreFileScanner thru constructor and close may leave refCount to -1 |  Major | . |
+| [HBASE-21005](https://issues.apache.org/jira/browse/HBASE-21005) | Maven site configuration causes downstream projects to get a directory named ${project.basedir} |  Minor | build |
+| [HBASE-21007](https://issues.apache.org/jira/browse/HBASE-21007) | Memory leak in HBase rest server |  Critical | REST |
+| [HBASE-20794](https://issues.apache.org/jira/browse/HBASE-20794) | CreateTable operation does not log its landing at the master nor the initiator at INFO level |  Major | logging |
+| [HBASE-20538](https://issues.apache.org/jira/browse/HBASE-20538) | Upgrade our hadoop versions to 2.7.7 and 3.0.3 |  Critical | java, security |
+| [HBASE-20927](https://issues.apache.org/jira/browse/HBASE-20927) | RSGroupAdminEndpoint doesn't handle clearing dead servers if they are not processed yet. |  Major | . |
+| [HBASE-20932](https://issues.apache.org/jira/browse/HBASE-20932) | Effective MemStoreSize::hashCode() |  Major | . |
+| [HBASE-20928](https://issues.apache.org/jira/browse/HBASE-20928) | Rewrite calculation of midpoint in binarySearch functions to prevent overflow |  Minor | io |
+| [HBASE-20565](https://issues.apache.org/jira/browse/HBASE-20565) | ColumnRangeFilter combined with ColumnPaginationFilter can produce incorrect result since 1.4 |  Major | Filters |
+| [HBASE-20908](https://issues.apache.org/jira/browse/HBASE-20908) | Infinite loop on regionserver if region replica are reduced |  Major | read replicas |
+| [HBASE-19893](https://issues.apache.org/jira/browse/HBASE-19893) | restore\_snapshot is broken in master branch when region splits |  Critical | snapshots |
+| [HBASE-20870](https://issues.apache.org/jira/browse/HBASE-20870) | Wrong HBase root dir in ITBLL's Search Tool |  Minor | integration tests |
+| [HBASE-20901](https://issues.apache.org/jira/browse/HBASE-20901) | Reducing region replica has no effect |  Major | . |
+| [HBASE-6028](https://issues.apache.org/jira/browse/HBASE-6028) | Implement a cancel for in-progress compactions |  Minor | regionserver |
+| [HBASE-20869](https://issues.apache.org/jira/browse/HBASE-20869) | Endpoint-based Export use incorrect user to write to destination |  Major | Coprocessors |
+| [HBASE-20879](https://issues.apache.org/jira/browse/HBASE-20879) | Compacting memstore config should handle lower case |  Major | . |
+| [HBASE-20865](https://issues.apache.org/jira/browse/HBASE-20865) | CreateTableProcedure is stuck in retry loop in CREATE\_TABLE\_WRITE\_FS\_LAYOUT state |  Major | amv2 |
+| [HBASE-19572](https://issues.apache.org/jira/browse/HBASE-19572) | RegionMover should use the configured default port number and not the one from HConstants |  Major | . |
+| [HBASE-20697](https://issues.apache.org/jira/browse/HBASE-20697) | Can't cache All region locations of the specify table by calling table.getRegionLocator().getAllRegionLocations() |  Major | meta |
+| [HBASE-20791](https://issues.apache.org/jira/browse/HBASE-20791) | RSGroupBasedLoadBalancer#setClusterMetrics should pass ClusterMetrics to its internalBalancer |  Major | rsgroup |
+| [HBASE-20770](https://issues.apache.org/jira/browse/HBASE-20770) | WAL cleaner logs way too much; gets clogged when lots of work to do |  Critical | logging |
+
+
+### TESTS:
+
+| JIRA | Summary | Priority | Component |
+|:---- |:---- | :--- |:---- |
+| [HBASE-21756](https://issues.apache.org/jira/browse/HBASE-21756) | Backport HBASE-21279 (Split TestAdminShell into several tests) to branch-2 |  Major | . |
+| [HBASE-20136](https://issues.apache.org/jira/browse/HBASE-20136) | TestKeyValue misses ClassRule and Category annotations |  Minor | . |
+| [HBASE-21261](https://issues.apache.org/jira/browse/HBASE-21261) | Add log4j.properties for hbase-rsgroup tests |  Trivial | . |
+| [HBASE-21258](https://issues.apache.org/jira/browse/HBASE-21258) | Add resetting of flags for RS Group pre/post hooks in TestRSGroups |  Major | . |
+| [HBASE-21097](https://issues.apache.org/jira/browse/HBASE-21097) | Flush pressure assertion may fail in testFlushThroughputTuning |  Major | regionserver |
+| [HBASE-21138](https://issues.apache.org/jira/browse/HBASE-21138) | Close HRegion instance at the end of every test in TestHRegion |  Major | . |
+| [HBASE-21161](https://issues.apache.org/jira/browse/HBASE-21161) | Enable the test added in HBASE-20741 that was removed accidentally |  Minor | . |
+| [HBASE-21076](https://issues.apache.org/jira/browse/HBASE-21076) | TestTableResource fails with NPE |  Major | REST, test |
+| [HBASE-20907](https://issues.apache.org/jira/browse/HBASE-20907) | Fix Intermittent failure on TestProcedurePriority |  Major | . |
+| [HBASE-20838](https://issues.apache.org/jira/browse/HBASE-20838) | Include hbase-server in precommit test if CommonFSUtils is changed |  Major | . |
+
+
+### SUB-TASKS:
+
+| JIRA | Summary | Priority | Component |
+|:---- |:---- | :--- |:---- |
+| [HBASE-15728](https://issues.apache.org/jira/browse/HBASE-15728) | Add remaining per-table region / store / flush / compaction related metrics |  Major | metrics |
+| [HBASE-21934](https://issues.apache.org/jira/browse/HBASE-21934) | RemoteProcedureDispatcher should track the ongoing dispatched calls |  Blocker | proc-v2 |
+| [HBASE-21588](https://issues.apache.org/jira/browse/HBASE-21588) | Procedure v2 wal splitting implementation |  Major | . |
+| [HBASE-21729](https://issues.apache.org/jira/browse/HBASE-21729) | Extract ProcedureCoordinatorRpcs and ProcedureMemberRpcs from CoordinatedStateManager |  Major | . |
+| [HBASE-21094](https://issues.apache.org/jira/browse/HBASE-21094) | Remove the explicit timeout config for TestTruncateTableProcedure |  Major | test |
+| [HBASE-21093](https://issues.apache.org/jira/browse/HBASE-21093) | Move TestCreateTableProcedure.testMRegions to a separated file |  Major | test |
+| [HBASE-18201](https://issues.apache.org/jira/browse/HBASE-18201) | add UT and docs for DataBlockEncodingTool |  Minor | tooling |
+| [HBASE-21978](https://issues.apache.org/jira/browse/HBASE-21978) | Should close AsyncRegistry if we fail to get cluster id when creating AsyncConnection |  Major | asyncclient, Client |
+| [HBASE-21974](https://issues.apache.org/jira/browse/HBASE-21974) | Change Admin#grant/revoke parameter from UserPermission to user and Permission |  Major | . |
+| [HBASE-21976](https://issues.apache.org/jira/browse/HBASE-21976) | Deal with RetryImmediatelyException for batching request |  Major | asyncclient, Client |
+| [HBASE-21820](https://issues.apache.org/jira/browse/HBASE-21820) | Implement CLUSTER quota scope |  Major | . |
+| [HBASE-21962](https://issues.apache.org/jira/browse/HBASE-21962) | Filters do not work in ThriftTable |  Major | Thrift |
+| [HBASE-21927](https://issues.apache.org/jira/browse/HBASE-21927) | Always fail the locate request when error occur |  Major | asyncclient, Client |
+| [HBASE-21886](https://issues.apache.org/jira/browse/HBASE-21886) | Run ITBLL for branch-2.2 |  Major | . |
+| [HBASE-21944](https://issues.apache.org/jira/browse/HBASE-21944) | Validate put for batch operation |  Major | asyncclient, Client |
+| [HBASE-21945](https://issues.apache.org/jira/browse/HBASE-21945) | Maintain the original order when sending batch request |  Major | asyncclient, Client |
+| [HBASE-21783](https://issues.apache.org/jira/browse/HBASE-21783) | Support exceed user/table/ns throttle quota if region server has available quota |  Major | . |
+| [HBASE-21930](https://issues.apache.org/jira/browse/HBASE-21930) | Deal with ScannerResetException when opening region scanner |  Major | asyncclient, Client |
+| [HBASE-21907](https://issues.apache.org/jira/browse/HBASE-21907) | Should set priority for rpc request |  Major | asyncclient, Client |
+| [HBASE-21909](https://issues.apache.org/jira/browse/HBASE-21909) | Validate the put instance before executing in AsyncTable.put method |  Major | asyncclient, Client |
+| [HBASE-21814](https://issues.apache.org/jira/browse/HBASE-21814) | Remove the TODO in AccessControlLists#addUserPermission |  Major | . |
+| [HBASE-19889](https://issues.apache.org/jira/browse/HBASE-19889) | Revert Workaround: Purge User API building from branch-2 so can make a beta-1 |  Major | website |
+| [HBASE-21838](https://issues.apache.org/jira/browse/HBASE-21838) | Create a special ReplicationEndpoint just for verifying the WAL entries are fine |  Major | Replication, wal |
+| [HBASE-21829](https://issues.apache.org/jira/browse/HBASE-21829) | Use FutureUtils.addListener instead of calling whenComplete directly |  Major | asyncclient, Client |
+| [HBASE-21828](https://issues.apache.org/jira/browse/HBASE-21828) | Make sure we do not return CompletionException when locating region |  Major | asyncclient, Client |
+| [HBASE-21764](https://issues.apache.org/jira/browse/HBASE-21764) | Size of in-memory compaction thread pool should be configurable |  Major | in-memory-compaction |
+| [HBASE-21809](https://issues.apache.org/jira/browse/HBASE-21809) | Add retry thrift client for ThriftTable/Admin |  Major | . |
+| [HBASE-21739](https://issues.apache.org/jira/browse/HBASE-21739) | Move grant/revoke from regionserver to master |  Major | . |
+| [HBASE-21798](https://issues.apache.org/jira/browse/HBASE-21798) | Cut branch-2.2 |  Major | . |
+| [HBASE-20542](https://issues.apache.org/jira/browse/HBASE-20542) | Better heap utilization for IMC with MSLABs |  Major | in-memory-compaction |
+| [HBASE-21713](https://issues.apache.org/jira/browse/HBASE-21713) | Support set region server throttle quota |  Major | . |
+| [HBASE-21761](https://issues.apache.org/jira/browse/HBASE-21761) | Align the methods in RegionLocator and AsyncTableRegionLocator |  Major | asyncclient, Client |
+| [HBASE-17370](https://issues.apache.org/jira/browse/HBASE-17370) | Fix or provide shell scripts to drain and decommission region server |  Major | . |
+| [HBASE-21750](https://issues.apache.org/jira/browse/HBASE-21750) | Most of KeyValueUtil#length can be replaced by cell#getSerializedSize for better performance because the latter one has been optimized |  Major | . |
+| [HBASE-21734](https://issues.apache.org/jira/browse/HBASE-21734) | Some optimization in FilterListWithOR |  Major | . |
+| [HBASE-21738](https://issues.apache.org/jira/browse/HBASE-21738) | Remove all the CSLM#size operation in our memstore because it's an quite time consuming. |  Critical | Performance |
+| [HBASE-21034](https://issues.apache.org/jira/browse/HBASE-21034) | Add new throttle type: read/write capacity unit |  Major | . |
+| [HBASE-21726](https://issues.apache.org/jira/browse/HBASE-21726) | Add getAllRegionLocations method to AsyncTableRegionLocator |  Major | asyncclient, Client |
+| [HBASE-19695](https://issues.apache.org/jira/browse/HBASE-19695) | Handle disabled table for async client |  Major | asyncclient, Client |
+| [HBASE-21711](https://issues.apache.org/jira/browse/HBASE-21711) | Remove references to git.apache.org/hbase.git |  Critical | . |
+| [HBASE-21647](https://issues.apache.org/jira/browse/HBASE-21647) | Add status track for splitting WAL tasks |  Major | Operability |
+| [HBASE-21705](https://issues.apache.org/jira/browse/HBASE-21705) | Should treat meta table specially for some methods in AsyncAdmin |  Major | Admin, asyncclient, Client |
+| [HBASE-21663](https://issues.apache.org/jira/browse/HBASE-21663) | Add replica scan support |  Major | asyncclient, Client, read replicas |
+| [HBASE-21580](https://issues.apache.org/jira/browse/HBASE-21580) | Support getting Hbck instance from AsyncConnection |  Major | asyncclient, Client, hbck2 |
+| [HBASE-21652](https://issues.apache.org/jira/browse/HBASE-21652) | Refactor ThriftServer making thrift2 server inherited from thrift1 server |  Major | . |
+| [HBASE-21661](https://issues.apache.org/jira/browse/HBASE-21661) | Provide Thrift2 implementation of Table/Admin |  Major | . |
+| [HBASE-21682](https://issues.apache.org/jira/browse/HBASE-21682) | Support getting from specific replica |  Major | read replicas |
+| [HBASE-21159](https://issues.apache.org/jira/browse/HBASE-21159) | Add shell command to switch throttle on or off |  Major | . |
+| [HBASE-21362](https://issues.apache.org/jira/browse/HBASE-21362) | Disable printing of stack-trace in shell when quotas are violated |  Minor | shell |
+| [HBASE-21361](https://issues.apache.org/jira/browse/HBASE-21361) | Disable printing of stack-trace in shell when quotas are not enabled |  Minor | shell |
+| [HBASE-17356](https://issues.apache.org/jira/browse/HBASE-17356) | Add replica get support |  Major | Client |
+| [HBASE-21650](https://issues.apache.org/jira/browse/HBASE-21650) | Add DDL operation and some other miscellaneous to thrift2 |  Major | Thrift |
+| [HBASE-21401](https://issues.apache.org/jira/browse/HBASE-21401) | Sanity check when constructing the KeyValue |  Critical | regionserver |
+| [HBASE-21578](https://issues.apache.org/jira/browse/HBASE-21578) | Fix wrong throttling exception for capacity unit |  Major | . |
+| [HBASE-21570](https://issues.apache.org/jira/browse/HBASE-21570) | Add write buffer periodic flush support for AsyncBufferedMutator |  Major | asyncclient, Client |
+| [HBASE-21465](https://issues.apache.org/jira/browse/HBASE-21465) | Retry on reportRegionStateTransition can lead to unexpected errors |  Major | amv2 |
+| [HBASE-21508](https://issues.apache.org/jira/browse/HBASE-21508) | Ignore the reportRegionStateTransition call from a dead server |  Major | amv2 |
+| [HBASE-21490](https://issues.apache.org/jira/browse/HBASE-21490) | WALProcedure may remove proc wal files still with active procedures |  Major | proc-v2 |
+| [HBASE-21377](https://issues.apache.org/jira/browse/HBASE-21377) | Add debug log for procedure stack id related operations |  Major | proc-v2 |
+| [HBASE-21472](https://issues.apache.org/jira/browse/HBASE-21472) | Should not persist the dispatched field for RegionRemoteProcedureBase |  Major | amv2 |
+| [HBASE-21473](https://issues.apache.org/jira/browse/HBASE-21473) | RowIndexSeekerV1 may return cell with extra two \\x00\\x00 bytes which has no tags |  Major | . |
+| [HBASE-21463](https://issues.apache.org/jira/browse/HBASE-21463) | The checkOnlineRegionsReport can accidentally complete a TRSP |  Critical | amv2 |
+| [HBASE-21376](https://issues.apache.org/jira/browse/HBASE-21376) | Add some verbose log to MasterProcedureScheduler |  Major | logging, proc-v2 |
+| [HBASE-21443](https://issues.apache.org/jira/browse/HBASE-21443) | [hbase-connectors] Purge hbase-\* modules from core now they've been moved to hbase-connectors |  Major | hbase-connectors, spark |
+| [HBASE-21421](https://issues.apache.org/jira/browse/HBASE-21421) | Do not kill RS if reportOnlineRegions fails |  Major | . |
+| [HBASE-21314](https://issues.apache.org/jira/browse/HBASE-21314) | The implementation of BitSetNode is not efficient |  Major | proc-v2 |
+| [HBASE-21351](https://issues.apache.org/jira/browse/HBASE-21351) | The force update thread may have race with PE worker when the procedure is rolling back |  Critical | proc-v2 |
+| [HBASE-21191](https://issues.apache.org/jira/browse/HBASE-21191) | Add a holding-pattern if no assign for meta or namespace (Can happen if masterprocwals have been cleared). |  Major | amv2 |
+| [HBASE-21322](https://issues.apache.org/jira/browse/HBASE-21322) | Add a scheduleServerCrashProcedure() API to HbckService |  Critical | hbck2 |
+| [HBASE-21375](https://issues.apache.org/jira/browse/HBASE-21375) | Revisit the lock and queue implementation in MasterProcedureScheduler |  Major | proc-v2 |
+| [HBASE-20973](https://issues.apache.org/jira/browse/HBASE-20973) | ArrayIndexOutOfBoundsException when rolling back procedure |  Critical | amv2 |
+| [HBASE-21384](https://issues.apache.org/jira/browse/HBASE-21384) | Procedure with holdlock=false should not be restored lock when restarts |  Blocker | . |
+| [HBASE-21364](https://issues.apache.org/jira/browse/HBASE-21364) | Procedure holds the lock should put to front of the queue after restart |  Blocker | . |
+| [HBASE-21215](https://issues.apache.org/jira/browse/HBASE-21215) | Figure how to invoke hbck2; make it easy to find |  Major | amv2, hbck2 |
+| [HBASE-21372](https://issues.apache.org/jira/browse/HBASE-21372) | Set hbase.assignment.maximum.attempts to Long.MAX |  Major | amv2 |
+| [HBASE-21363](https://issues.apache.org/jira/browse/HBASE-21363) | Rewrite the buildingHoldCleanupTracker method in WALProcedureStore |  Major | proc-v2 |
+| [HBASE-21338](https://issues.apache.org/jira/browse/HBASE-21338) | [balancer] If balancer is an ill-fit for cluster size, it gives little indication |  Major | Balancer, Operability |
+| [HBASE-21192](https://issues.apache.org/jira/browse/HBASE-21192) | Add HOW-TO repair damaged AMv2. |  Major | amv2 |
+| [HBASE-21073](https://issues.apache.org/jira/browse/HBASE-21073) | "Maintenance mode" master |  Major | amv2, hbck2, master |
+| [HBASE-21354](https://issues.apache.org/jira/browse/HBASE-21354) | Procedure may be deleted improperly during master restarts resulting in 'Corrupt' |  Major | . |
+| [HBASE-21336](https://issues.apache.org/jira/browse/HBASE-21336) | Simplify the implementation of WALProcedureMap |  Major | proc-v2 |
+| [HBASE-21323](https://issues.apache.org/jira/browse/HBASE-21323) | Should not skip force updating for a sub procedure even if it has been finished |  Major | proc-v2 |
+| [HBASE-21269](https://issues.apache.org/jira/browse/HBASE-21269) | Forward-port to branch-2 " HBASE-21213 [hbck2] bypass leaves behind     state in RegionStates when assign/unassign" |  Major | amv2 |
+| [HBASE-20716](https://issues.apache.org/jira/browse/HBASE-20716) | Unsafe access cleanup |  Critical | Performance |
+| [HBASE-21330](https://issues.apache.org/jira/browse/HBASE-21330) | ReopenTableRegionsProcedure will enter an infinite loop if we schedule a TRSP at the same time |  Major | amv2 |
+| [HBASE-21310](https://issues.apache.org/jira/browse/HBASE-21310) | Split TestCloneSnapshotFromClient |  Major | test |
+| [HBASE-21311](https://issues.apache.org/jira/browse/HBASE-21311) | Split TestRestoreSnapshotFromClient |  Major | test |
+| [HBASE-21315](https://issues.apache.org/jira/browse/HBASE-21315) | The getActiveMinProcId and getActiveMaxProcId of BitSetNode are incorrect if there are no active procedure |  Major | . |
+| [HBASE-21278](https://issues.apache.org/jira/browse/HBASE-21278) | Do not rollback successful sub procedures when rolling back a procedure |  Critical | proc-v2 |
+| [HBASE-21309](https://issues.apache.org/jira/browse/HBASE-21309) | Increase the waiting timeout for TestProcedurePriority |  Major | test |
+| [HBASE-21254](https://issues.apache.org/jira/browse/HBASE-21254) | Need to find a way to limit the number of proc wal files |  Critical | proc-v2 |
+| [HBASE-21250](https://issues.apache.org/jira/browse/HBASE-21250) | Refactor WALProcedureStore and add more comments for better understanding the implementation |  Major | proc-v2 |
+| [HBASE-19275](https://issues.apache.org/jira/browse/HBASE-19275) | TestSnapshotFileCache never worked properly |  Major | . |
+| [HBASE-21249](https://issues.apache.org/jira/browse/HBASE-21249) | Add jitter for ProcedureUtil.getBackoffTimeMs |  Major | proc-v2 |
+| [HBASE-21244](https://issues.apache.org/jira/browse/HBASE-21244) | Skip persistence when retrying for assignment related procedures |  Major | amv2, Performance, proc-v2 |
+| [HBASE-21233](https://issues.apache.org/jira/browse/HBASE-21233) | Allow the procedure implementation to skip persistence of the state after a execution |  Major | Performance, proc-v2 |
+| [HBASE-21227](https://issues.apache.org/jira/browse/HBASE-21227) | Implement exponential retrying backoff for Assign/UnassignRegionHandler introduced in HBASE-21217 |  Major | amv2, regionserver |
+| [HBASE-21217](https://issues.apache.org/jira/browse/HBASE-21217) | Revisit the executeProcedure method for open/close region |  Critical | amv2, proc-v2 |
+| [HBASE-21214](https://issues.apache.org/jira/browse/HBASE-21214) | [hbck2] setTableState just sets hbase:meta state, not in-memory state |  Major | amv2, hbck2 |
+| [HBASE-21023](https://issues.apache.org/jira/browse/HBASE-21023) | Add bypassProcedureToCompletion() API to HbckService |  Major | hbck2 |
+| [HBASE-21156](https://issues.apache.org/jira/browse/HBASE-21156) | [hbck2] Queue an assign of hbase:meta and bulk assign/unassign |  Critical | hbck2 |
+| [HBASE-21169](https://issues.apache.org/jira/browse/HBASE-21169) | Initiate hbck2 tool in hbase-operator-tools repo |  Major | hbck2 |
+| [HBASE-21172](https://issues.apache.org/jira/browse/HBASE-21172) | Reimplement the retry backoff logic for ReopenTableRegionsProcedure |  Major | amv2, proc-v2 |
+| [HBASE-21189](https://issues.apache.org/jira/browse/HBASE-21189) | flaky job should gather machine stats |  Minor | test |
+| [HBASE-21190](https://issues.apache.org/jira/browse/HBASE-21190) | Log files and count of entries in each as we load from the MasterProcWAL store |  Major | amv2 |
+| [HBASE-21083](https://issues.apache.org/jira/browse/HBASE-21083) | Introduce a mechanism to bypass the execution of a stuck procedure |  Major | amv2 |
+| [HBASE-21017](https://issues.apache.org/jira/browse/HBASE-21017) | Revisit the expected states for open/close |  Major | amv2 |
+| [HBASE-20941](https://issues.apache.org/jira/browse/HBASE-20941) | Create and implement HbckService in master |  Major | . |
+| [HBASE-21072](https://issues.apache.org/jira/browse/HBASE-21072) | Block out HBCK1 in hbase2 |  Major | hbck |
+| [HBASE-21095](https://issues.apache.org/jira/browse/HBASE-21095) | The timeout retry logic for several procedures are broken after master restarts |  Critical | amv2, proc-v2 |
+| [HBASE-20975](https://issues.apache.org/jira/browse/HBASE-20975) | Lock may not be taken or released while rolling back procedure |  Major | amv2 |
+| [HBASE-21025](https://issues.apache.org/jira/browse/HBASE-21025) | Add cache for TableStateManager |  Major | . |
+| [HBASE-21012](https://issues.apache.org/jira/browse/HBASE-21012) | Revert the change of serializing TimeRangeTracker |  Critical | . |
+| [HBASE-20813](https://issues.apache.org/jira/browse/HBASE-20813) | Remove RPC quotas when the associated table/Namespace is dropped off |  Minor | . |
+| [HBASE-20885](https://issues.apache.org/jira/browse/HBASE-20885) | Remove entry for RPC quota from hbase:quota when RPC quota is removed. |  Minor | . |
+| [HBASE-20893](https://issues.apache.org/jira/browse/HBASE-20893) | Data loss if splitting region while ServerCrashProcedure executing |  Major | . |
+| [HBASE-20950](https://issues.apache.org/jira/browse/HBASE-20950) | Helper method to configure secure DFS cluster for tests |  Major | test |
+| [HBASE-19369](https://issues.apache.org/jira/browse/HBASE-19369) | HBase Should use Builder Pattern to Create Log Files while using WAL on Erasure Coding |  Major | . |
+| [HBASE-20939](https://issues.apache.org/jira/browse/HBASE-20939) | There will be race when we call suspendIfNotReady and then throw ProcedureSuspendedException |  Critical | amv2 |
+| [HBASE-20921](https://issues.apache.org/jira/browse/HBASE-20921) | Possible NPE in ReopenTableRegionsProcedure |  Major | amv2 |
+| [HBASE-20867](https://issues.apache.org/jira/browse/HBASE-20867) | RS may get killed while master restarts |  Major | . |
+| [HBASE-20878](https://issues.apache.org/jira/browse/HBASE-20878) | Data loss if merging regions while ServerCrashProcedure executing |  Critical | amv2 |
+| [HBASE-20846](https://issues.apache.org/jira/browse/HBASE-20846) | Restore procedure locks when master restarts |  Major | . |
+| [HBASE-20914](https://issues.apache.org/jira/browse/HBASE-20914) | Trim Master memory usage |  Major | master |
+| [HBASE-20853](https://issues.apache.org/jira/browse/HBASE-20853) | Polish "Add defaults to Table Interface so Implementors don't have to" |  Major | API |
+| [HBASE-20875](https://issues.apache.org/jira/browse/HBASE-20875) | MemStoreLABImp::copyIntoCell uses 7% CPU when writing |  Major | Performance |
+| [HBASE-20860](https://issues.apache.org/jira/browse/HBASE-20860) | Merged region's RIT state may not be cleaned after master restart |  Major | . |
+| [HBASE-20847](https://issues.apache.org/jira/browse/HBASE-20847) | The parent procedure of RegionTransitionProcedure may not have the table lock |  Major | proc-v2, Region Assignment |
+| [HBASE-20776](https://issues.apache.org/jira/browse/HBASE-20776) | Update branch-2 version to 2.2.0-SNAPSHOT |  Major | build |
+
+
+### OTHER:
+
+| JIRA | Summary | Priority | Component |
+|:---- |:---- | :--- |:---- |
+| [HBASE-21612](https://issues.apache.org/jira/browse/HBASE-21612) | Add developer debug options in  HBase Config for REST server |  Minor | Operability, REST, scripts |
+| [HBASE-18735](https://issues.apache.org/jira/browse/HBASE-18735) | Provide a fast mechanism for shutting down mini cluster |  Major | . |
+| [HBASE-21489](https://issues.apache.org/jira/browse/HBASE-21489) | TestShell is broken |  Major | shell |
+| [HBASE-20152](https://issues.apache.org/jira/browse/HBASE-20152) | [AMv2] DisableTableProcedure versus ServerCrashProcedure |  Major | amv2 |
+| [HBASE-20540](https://issues.apache.org/jira/browse/HBASE-20540) | [umbrella] Hadoop 3 compatibility |  Major | . |
+| [HBASE-21057](https://issues.apache.org/jira/browse/HBASE-21057) | upgrade to latest spotbugs |  Minor | community, test |
+| [HBASE-21888](https://issues.apache.org/jira/browse/HBASE-21888) | Add a isClosed method to AsyncConnection |  Major | asyncclient, Client |
+| [HBASE-21884](https://issues.apache.org/jira/browse/HBASE-21884) | Fix box/unbox findbugs warning in secure bulk load |  Minor | . |
+| [HBASE-21859](https://issues.apache.org/jira/browse/HBASE-21859) | Add clearRegionLocationCache method for AsyncConnection |  Major | asyncclient, Client |
+| [HBASE-21853](https://issues.apache.org/jira/browse/HBASE-21853) | update copyright notices to 2019 |  Major | documentation |
+| [HBASE-21791](https://issues.apache.org/jira/browse/HBASE-21791) | Upgrade thrift dependency to 0.12.0 |  Blocker | Thrift |
+| [HBASE-21710](https://issues.apache.org/jira/browse/HBASE-21710) | Add quota related methods to the Admin interface |  Major | . |
+| [HBASE-21782](https://issues.apache.org/jira/browse/HBASE-21782) | LoadIncrementalHFiles should not be IA.Public |  Major | mapreduce |
+| [HBASE-21762](https://issues.apache.org/jira/browse/HBASE-21762) | Move some methods in ClusterConnection to Connection |  Major | Client |
+| [HBASE-21715](https://issues.apache.org/jira/browse/HBASE-21715) | Do not throw UnsupportedOperationException in ProcedureFuture.get |  Major | Client |
+| [HBASE-21716](https://issues.apache.org/jira/browse/HBASE-21716) | Add toStringCustomizedValues to TableDescriptor |  Major | . |
+| [HBASE-21731](https://issues.apache.org/jira/browse/HBASE-21731) | Do not need to use ClusterConnection in IntegrationTestBigLinkedListWithVisibility |  Major | . |
+| [HBASE-21685](https://issues.apache.org/jira/browse/HBASE-21685) | Change repository urls to Gitbox |  Critical | . |
+| [HBASE-21534](https://issues.apache.org/jira/browse/HBASE-21534) | TestAssignmentManager is flakey |  Major | test |
+| [HBASE-21541](https://issues.apache.org/jira/browse/HBASE-21541) | Move MetaTableLocator.verifyRegionLocation to hbase-rsgroup module |  Major | . |
+| [HBASE-21265](https://issues.apache.org/jira/browse/HBASE-21265) | Split up TestRSGroups |  Minor | rsgroup, test |
+| [HBASE-21517](https://issues.apache.org/jira/browse/HBASE-21517) | Move the getTableRegionForRow method from HMaster to TestMaster |  Major | test |
+| [HBASE-21281](https://issues.apache.org/jira/browse/HBASE-21281) | Update bouncycastle dependency. |  Major | dependencies, test |
+| [HBASE-21198](https://issues.apache.org/jira/browse/HBASE-21198) | Exclude dependency on net.minidev:json-smart |  Major | . |
+| [HBASE-21282](https://issues.apache.org/jira/browse/HBASE-21282) | Upgrade to latest jetty 9.2 and 9.3 versions |  Major | dependencies |
+| [HBASE-21287](https://issues.apache.org/jira/browse/HBASE-21287) | JVMClusterUtil Master initialization wait time not configurable |  Major | test |
+| [HBASE-21168](https://issues.apache.org/jira/browse/HBASE-21168) | BloomFilterUtil uses hardcoded randomness |  Trivial | . |
+| [HBASE-20482](https://issues.apache.org/jira/browse/HBASE-20482) | Print a link to the ref guide chapter for the shell during startup |  Minor | documentation, shell |
+| [HBASE-20942](https://issues.apache.org/jira/browse/HBASE-20942) | Improve RpcServer TRACE logging |  Major | Operability |
+| [HBASE-20989](https://issues.apache.org/jira/browse/HBASE-20989) | Minor, miscellaneous logging fixes |  Trivial | logging |
diff --git a/CHANGES.txt b/CHANGES.txt
deleted file mode 100755
index 52d2120..0000000
--- a/CHANGES.txt
+++ /dev/null
@@ -1,4455 +0,0 @@
-HBase Change Log
-Release 0.93.0 - Unreleased
-  *DO NOT ADD ISSUES HERE ON COMMIT ANY MORE.  WE'LL GENERATE THE LIST
-  FROM JIRA INSTEAD WHEN WE MAKE A RELEASE*
-
-Release 0.92.1 - Unreleased
-  BUG FIXES
-   HBASE-5176  AssignmentManager#getRegion: logging nit  adds a redundant '+' (Karthik K)
-   HBASE-5237  Addendum for HBASE-5160 and HBASE-4397 (Ram)
-   HBASE-5235  HLogSplitter writer thread's streams not getting closed when any 
-               of the writer threads has exceptions. (Ram)
-   HBASE-5243  LogSyncerThread not getting shutdown waiting for the interrupted flag (Ram)
-   HBASE-5255  Use singletons for OperationStatus to save memory (Benoit)
-   HBASE-5345  CheckAndPut doesn't work when value is empty byte[] (Evert Arckens)
-   HBASE-5466  Opening a table also opens the metatable and never closes it
-               (Ashley Taylor)
-
-  TESTS
-   HBASE-5223  TestMetaReaderEditor is missing call to CatalogTracker.stop()
-
-Release 0.92.0 - 01/23/2012
-  INCOMPATIBLE CHANGES
-   HBASE-2002  Coprocessors: Client side support; Support RPC interface
-               changes at runtime (Gary Helmling via Andrew Purtell)
-   HBASE-3677  Generate a globally unique cluster ID (changed
-               ClusterStatus serialization)
-   HBASE-3762  HTableFactory.releaseHTableInterface() should throw IOException
-               instead of wrapping in RuntimeException (Ted Yu via garyh)
-   HBASE-3629  Update our thrift to 0.6 (Moaz Reyad)
-   HBASE-1502  Remove need for heartbeats in HBase
-   HBASE-451   Remove HTableDescriptor from HRegionInfo (Subbu M Iyer)
-   HBASE-451   Remove HTableDescriptor from HRegionInfo
-               addendum that fixes TestTableMapReduce
-   HBASE-3534  Action should not store or serialize regionName (Ted Yu)
-   HBASE-4197  RegionServer expects all scanner to be subclasses of
-               HRegion.RegionScanner (Lars Hofhansl)
-   HBASE-4233  Update protobuf dependency to 2.4.0a (todd)
-   HBASE-4299  Update to Avro 1.5.3 and use Avro Maven plugin to generate
-               Avro classes. (Alejandro Abdelnur)
-   HBASE-4369  Deprecate HConnection#getZookeeperWatcher in prep for HBASE-1762
-   HBASE-4247  Add isAborted method to the Abortable interface
-               (Akash Ashok)
-   HBASE-4503  Purge deprecated HBaseClusterTestCase
-   HBASE-4374  Up default regions size from 256M to 1G
-   HBASE-4648  Bytes.toBigDecimal() doesn't use offset (Bryan Keller via Lars H)
-   HBASE-4715  Remove stale broke .rb scripts from bin dir
-   HBASE-3433  Remove the KV copy of every KV in Scan; introduced by HBASE-3232 (Lars H)
-   HBASE-5017  Bump the default hfile.block.cache.size because of HFileV2
-
-  BUG FIXES
-   HBASE-3280  YouAreDeadException being swallowed in HRS getMaster
-   HBASE-3282  Need to retain DeadServers to ensure we don't allow
-               previously expired RS instances to rejoin cluster
-   HBASE-3283  NPE in AssignmentManager if processing shutdown of RS who
-               doesn't have any regions assigned to it
-   HBASE-3173  HBase 2984 breaks ability to specify BLOOMFILTER &
-               COMPRESSION via shell
-   HBASE-3310  Failing creating/altering table with compression agrument from
-               the HBase shell (Igor Ranitovic via Stack)
-   HBASE-3317  Javadoc and Throws Declaration for Bytes.incrementBytes() is
-               Wrong (Ed Kohlwey via Stack)
-   HBASE-1888  KeyValue methods throw NullPointerException instead of
-               IllegalArgumentException during parameter sanity check
-   HBASE-3337  Restore HBCK fix of unassignment and dupe assignment for new
-               master
-   HBASE-3332  Regions stuck in transition after RS failure
-   HBASE-3418  Increment operations can break when qualifiers are split
-               between memstore/snapshot and storefiles
-   HBASE-3403  Region orphaned after failure during split
-   HBASE-3492  NPE while splitting table with empty column family store
-   HBASE-3400  Coprocessor Support for Generic Interfaces
-               (Ed Kohlwey via Gary Helmling)
-   HBASE-3552  Coprocessors are unable to load if RegionServer is launched
-               using a different classloader than system default
-   HBASE-3578  TableInputFormat does not setup the configuration for HBase
-               mapreduce jobs correctly (Dan Harvey via Stack)
-   HBASE-3601  TestMasterFailover broken in TRUNK
-   HBASE-3605  Fix balancer log message
-   HBASE-3538  Column families allow to have slashes in name (Ian Knome via Stack)
-   HBASE-3313  Table name isn't checked in isTableEnabled/isTableDisabled
-               (Ted Yu via Stack)
-   HBASE-3514  Speedup HFile.Writer append (Matteo Bertozzi via Ryan)
-   HBASE-3665  tighten assertions for testBloomFilterSize
-   HBASE-3662  REST server does not respect client supplied max versions when
-               creating scanner
-   HBASE-3641  LruBlockCache.CacheStats.getHitCount() is not using the
-               correct variable
-   HBASE-3532  HRegion#equals is broken (Ted Yu via Stack)
-   HBASE-3697  Admin actions that use MetaReader to iterate regions need to
-               skip offline ones
-   HBASE-3583  Coprocessors: scannerNext and scannerClose hooks are called
-               when HRegionInterface#get is invoked (Mingjie Lai via
-               Andrew Purtell)
-   HBASE-3688  Setters of class HTableDescriptor do not work properly
-   HBASE-3702  Fix NPE in Exec method parameter serialization
-   HBASE-3709  HFile compression not sharing configuration
-   HBASE-3711  importtsv fails if rowkey length exceeds MAX_ROW_LENGTH
-               (Kazuki Ohta via todd)
-   HBASE-3716  Intermittent TestRegionRebalancing failure
-               (Ted Yu via Stack)
-   HBASE-3712  HTable.close() doesn't shutdown thread pool
-               (Ted Yu via Stack)
-   HBASE-3238  HBase needs to have the CREATE permission on the parent of its
-               ZooKeeper parent znode (Alex Newman via Stack)
-   HBASE-3728  NPE in HTablePool.closeTablePool (Ted Yu via Stack)
-   HBASE-3733  MemStoreFlusher.flushOneForGlobalPressure() shouldn't
-               be using TreeSet for HRegion (Ted Yu via J-D)
-   HBASE-3739  HMaster.getProtocolVersion() should distinguish
-               HMasterInterface and HMasterRegionInterface versions
-   HBASE-3723  Major compact should be done when there is only one storefile
-               and some keyvalue is outdated (Zhou Shuaifeng via Stack)
-   HBASE-3624  Only one coprocessor of each priority can be loaded for a table
-   HBASE-3598  Broken formatting in LRU stats output (Erik Onnen)
-   HBASE-3758  Delete triggers pre/postScannerOpen upcalls of RegionObserver
-               (Mingjie Lai via garyh)
-   HBASE-3790  Fix NPE in ExecResult.write() with null return value
-   HBASE-3781  hbase shell cannot start "NoMethodError: undefined method
-               `close' for nil:NilClass" (Mikael Sitruk)
-   HBASE-3802  Redundant list creation in HRegion
-   HBASE-3788  Two error handlings in AssignmentManager.setOfflineInZooKeeper()
-               (Ted Yu)
-   HBASE-3800  HMaster is not able to start due to AlreadyCreatedException
-   HBASE-3806  distributed log splitting double escapes task names
-               (Prakash Khemani)
-   HBASE-3819  TestSplitLogWorker has too many SLWs running -- makes for
-               contention and occasional failures
-   HBASE-3210  HBASE-1921 for the new master
-   HBASE-3827  hbase-1502, removing heartbeats, broke master joining a running
-               cluster and was returning master hostname for rs to use
-   HBASE-3829  TestMasterFailover failures in jenkins
-   HBASE-3843  splitLogWorker starts too early (Prakash Khemani)
-   HBASE-3838  RegionCoprocesorHost.preWALRestore throws npe in case there is
-               no RegionObserver registered (Himanshu Vashishtha)
-   HBASE-3847  Turn off DEBUG logging of RPCs in WriteableRPCEngine on TRUNK
-   HBASE-3777  Redefine Identity Of HBase Configuration (Karthick Sankarachary)
-   HBASE-3849  Fix master ui; hbase-1502 broke requests/second
-   HBASE-3853  Fix TestInfoServers to pass after HBASE-3835 (todd)
-   HBASE-3862  Race conditions in aggregate calculation (John Heitmann)
-   HBASE-3865  Failing TestWALReplay
-   HBASE-3864  Rename of hfile.min.blocksize.size in HBASE-2899 reverted in
-               HBASE-1861 (Aaron T. Myers)
-   HBASE-3876  TestCoprocessorInterface.testCoprocessorInterface broke on
-               jenkins and local
-   HBASE-3897  Docs (notsoquick guide) suggest invalid XML (Philip Zeyliger)
-   HBASE-3898  TestSplitTransactionOnCluster broke in TRUNK
-   HBASE-3826  Minor compaction needs to check if still over
-               compactionThreshold after compacting (Nicolas Spiegelberg)  
-   HBASE-3912  [Stargate] Columns not handle by Scan
-   HBASE-3903  A successful write to client write-buffer may be lost or not
-               visible (Doug Meil)
-   HBASE-3894  Thread contention over row locks set monitor (Dave Latham)
-   HBASE-3959  hadoop-snappy version in the pom.xml is incorrect
-               (Alejandro Abdelnur)
-   HBASE-3971  Compression.java uses ClassLoader.getSystemClassLoader()
-               to load codec (Alejandro Abdelnur)
-   HBASE-3979  Trivial fixes in code, document (Ming Ma)
-   HBASE-3794  Ability to Discard Bad HTable Puts
-   HBASE-3923  HBASE-1502 Broke Shell's status 'simple' and 'detailed'
-   HBASE-3978  Rowlock lease renew doesn't work when custom coprocessor
-               indicates to bypass default action (Ming Ma)
-   HBASE-3963  Schedule all log-spliiting at startup all at once (mingjian)
-   HBASE-3983  list command in shell seems broken
-   HBASE-3793  HBASE-3468 Broke checkAndPut with null value (Ming Ma)
-   HBASE-3889  NPE in Distributed Log Splitting (Anirudh Todi)
-   HBASE-4000  You can't specify split points when you create a table in
-               the shell (Joey Echeverria)
-   HBASE-4029  Inappropriate checking of Logging Mode in HRegionServer
-               (Akash Ashok via Ted Yu)
-   HBASE-4037  Add timeout annotations to preempt surefire killing
-               all tests
-   HBASE-4024  Major compaction may not be triggered, even though region
-               server log says it is triggered (Ted Yu)
-   HBASE-4016  HRegion.incrementColumnValue() doesn't have a consistent
-               behavior when the field that we are incrementing is less
-               than 8 bytes long (Li Pi)
-   HBASE-4012  Further optimize byte comparison methods (Ted Yu)
-   HBASE-4037  Add timeout annotations to preempt surefire killing
-               all tests - TestFullLogReconstruction
-   HBASE-4051  [Coprocessors] Table coprocessor loaded twice when region is
-               initialized
-   HBASE-4059  If a region is split during RS shutdown process, the daughter
-               regions are NOT made online by master
-   HBASE-3904  HBA.createTable(final HTableDescriptor desc, byte [][] splitKeys)
-               should be synchronous
-   HBASE-4053  Most of the regions were added into AssignmentManager#servers twice
-   HBASE-4061  getTableDirs is missing directories to skip
-   HBASE-3867  when cluster is stopped and server which hosted meta region is
-               removed from cluster, master breaks down after restarting cluster.
-   HBASE-4074  When a RS has hostname with uppercase letter, there are two
-               RS entries in master (Weihua via Ted Yu)
-   HBASE-4077  Deadlock if WrongRegionException is thrown from getLock in
-               HRegion.delete (Adam Warrington via Ted Yu)
-   HBASE-3893  HRegion.internalObtainRowLock shouldn't wait forever
-   HBASE-4075  A bug in TestZKBasedOpenCloseRegion (Jieshan Bean via Ted Yu)
-   HBASE-4087  HBaseAdmin should perform validation of connection it holds
-   HBASE-4052  Enabling a table after master switch does not allow table scan,
-               throwing NotServingRegionException (ramkrishna via Ted Yu)
-   HBASE-4112  Creating table may throw NullPointerException (Jinchao via Ted Yu)
-   HBASE-4093  When verifyAndAssignRoot throws exception, the deadServers state
-               cannot be changed (fulin wang via Ted Yu)
-   HBASE-4118  method regionserver.MemStore#updateColumnValue: the check for 
-               qualifier and family is missing (N Keywal via Ted Yu)
-   HBASE-4127  Don't modify table's name away in HBaseAdmin
-   HBASE-4105  Stargate does not support Content-Type: application/json and
-               Content-Encoding: gzip in parallel
-   HBASE-4116  [stargate] StringIndexOutOfBoundsException in row spec parse
-               (Allan Yan)
-   HBASE-3845  data loss because lastSeqWritten can miss memstore edits
-               (Prakash Khemani and ramkrishna.s.vasudevan)
-   HBASE-4083  If Enable table is not completed and is partial, then scanning of
-               the table is not working (ramkrishna.s.vasudevan)
-   HBASE-4138  If zookeeper.znode.parent is not specifed explicitly in Client
-               code then HTable object loops continuously waiting for the root region
-               by using /hbase as the base node.(ramkrishna.s.vasudevan)
-   HBASE-4032  HBASE-451 improperly breaks public API HRegionInfo#getTableDesc
-   HBASE-4003  Cleanup Calls Conservatively On Timeout (Karthick)
-   HBASE-3857  Fix TestHFileBlock.testBlockHeapSize test failure (Mikhail)
-   HBASE-4150  Don't enforce pool size limit with ThreadLocalPool
-               (Karthick Sankarachary via garyh)
-   HBASE-4171  HBase shell broken in trunk (Lars Hofhansl)
-   HBASE-4162  Fix TestHRegionInfo.testGetSetOfHTD: delete /tmp/hbase-<username>
-               if it already exists (Mikhail Bautin)
-   HBASE-4179  Failed to run RowCounter on top of Hadoop branch-0.22
-               (Michael Weng)
-   HBASE-4181  HConnectionManager can't find cached HRegionInterface and makes clients
-               work very slow (Jia Liu)
-   HBASE-4156  ZKConfig defaults clientPort improperly (Michajlo Matijkiw)
-   HBASE-4184  CatalogJanitor doesn't work properly when "fs.default.name" isn't
-               set in config file (Ming Ma)
-   HBASE-4186  No region is added to regionsInTransitionInRS
-   HBASE-4194  RegionSplitter: Split on under-loaded region servers first
-   HBASE-2399  Forced splits only act on the first family in a table (Ming Ma)
-   HBASE-4211  Do init-sizing of the StringBuilder making a ServerName
-               (Benoît Sigoure)
-   HBASE-4175  Fix FSUtils.createTableDescriptor() (Ramkrishna)
-   HBASE-4008  Problem while stopping HBase (Akash Ashok)
-   HBASE-4065  TableOutputFormat ignores failure to create table instance
-               (Brock Noland)
-   HBASE-4167  Potential leak of HTable instances when using HTablePool with
-               PoolType.ThreadLocal (Karthick Sankarachary)
-   HBASE-4239  HBASE-4012 introduced duplicate variable Bytes.LONG_BYTES
-   HBASE-4225  NoSuchColumnFamilyException in multi doesn't say which family
-               is bad (Ramkrishna Vasudevan)
-   HBASE-4220  Lots of DNS queries from client
-   HBASE-4253  Intermittent test failure because of missing config parameter in new
-               HTable(tablename) (Ramkrishna)
-   HBASE-4217  HRS.closeRegion should be able to close regions with only
-               the encoded name (ramkrishna.s.vasudevan)
-   HBASE-3229  HBASE-3229 Table creation, though using "async" call to master,
-               can actually run for a while and cause RPC timeout (Ming Ma)
-   HBASE-4252  TestLogRolling's low-probability failure (Jieshan Bean)
-   HBASE-4278  Race condition in Slab.java that occurs due to spinlock unlocking
-               early (Li Pi)
-   HBASE-4269  Add tests and restore semantics to TableInputFormat/TableRecordReader
-               (Jonathan Hsieh)
-   HBASE-4290  HLogSplitter doesn't mark its MonitoredTask as complete in
-               non-distributed case (todd)
-   HBASE-4303  HRegionInfo.toString has bad quoting (todd)
-   HBASE-4307  race condition in CacheTestUtils (Li Pi)
-   HBASE-4310  SlabCache metrics bugfix (Li Pi)
-   HBASE-4283  HBaseAdmin never recovers from restarted cluster (Lars Hofhansl)
-   HBASE-4315  RPC logging too verbose (todd)
-   HBASE-4273  java.lang.NullPointerException when a table is being disabled and
-               HMaster restarts (Ming Ma)
-   HBASE-4027  Off Heap Cache never creates Slabs (Li Pi)
-   HBASE-4265  zookeeper.KeeperException$NodeExistsException if HMaster restarts
-               while table is being disabled (Ming Ma)
-   HBASE-4338  Package build for rpm and deb are broken (Eric Yang)
-   HBASE-4309  slow query log metrics spewing warnings (Riley Patterson)
-   HBASE-4302  Only run Snappy compression tests if Snappy is available
-               (Alejandro Abdelnur via todd)
-   HBASE-4271  Clean up coprocessor handling of table operations
-               (Ming Ma via garyh)
-   HBASE-4341  HRS#closeAllRegions should take care of HRS#onlineRegions's
-               weak consistency (Jieshan Bean)
-   HBASE-4297  TableMapReduceUtil overwrites user supplied options
-               (Jan Lukavsky)
-   HBASE-4015  Refactor the TimeoutMonitor to make it less racy
-               (ramkrishna.s.vasudevan)
-   HBASE-4350  Fix a Bloom filter bug introduced by HFile v2 and
-               TestMultiColumnScanner that caught it (Mikhail Bautin)
-   HBASE-4007  distributed log splitting can get indefinitely stuck
-               (Prakash Khemani)
-   HBASE-4301  META migration from 0.90 to trunk fails (Subbu Iyer)
-   HBASE-4331  Bypassing default actions in prePut fails sometimes with
-               HTable client (Lars Hofhansl via garyh)
-   HBASE-4340  Hbase can't balance if ServerShutdownHandler encountered
-               exception (Jinchao Gao)
-   HBASE-4394  Add support for seeking hints to FilterList
-   HBASE-4406  TestOpenRegionHandler failing after HBASE-4287 (todd)
-   HBASE-4330  Fix races in slab cache (Li Pi & Todd)
-   HBASE-4383  SlabCache reports negative heap sizes (Li Pi)
-   HBASE-4351  If from Admin we try to unassign a region forcefully,
-               though a valid region name is given the master is not able
-               to identify the region to unassign (Ramkrishna)
-   HBASE-4363  [replication] ReplicationSource won't close if failing
-               to contact the sink (JD and Lars Hofhansl)
-   HBASE-4390  [replication] ReplicationSource's UncaughtExceptionHandler
-               shouldn't join
-   HBASE-4395  EnableTableHandler races with itself
-   HBASE-4414  Region splits by size not being triggered
-   HBASE-4322  HBASE-4322 [hbck] Update checkIntegrity/checkRegionChain
-               to present more accurate region split problem 
-               (Jon Hseih)
-   HBASE-4417  HBaseAdmin.checkHBaseAvailable() doesn't close ZooKeeper connections
-               (Stefan Seelmann)
-   HBASE-4195  Possible inconsistency in a memstore read after a reseek,
-               possible performance improvement (nkeywal)
-   HBASE-4420  MasterObserver preMove() and postMove() should throw
-               IOException instead of UnknownRegionException
-   HBASE-4419  Resolve build warning messages (Praveen Patibandia)
-   HBASE-4428  Two methods in CacheTestUtils don't call setDaemon() on the threads
-   HBASE-4400  .META. getting stuck if RS hosting it is dead and znode state is in
-               RS_ZK_REGION_OPENED (Ramkrishna)
-   HBASE-3421  Very wide rows -- 30M plus -- cause us OOME (Nate Putnam)
-   HBASE-4153  Handle RegionAlreadyInTransitionException in AssignmentManager
-               (Ramkrishna)
-   HBASE-4452  Possibility of RS opening a region though tickleOpening fails due to
-               znode version mismatch (Ramkrishna)
-   HBASE-4446  Rolling restart RSs scenario, regions could stay in OPENING state
-               (Ming Ma)
-   HBASE-4468  Wrong resource name in an error massage: webapps instead of
-               hbase-webapps (nkeywal)
-   HBASE-4472  MiniHBaseCluster.shutdown() doesn't work if no active master
-   HBASE-4455  Rolling restart RSs scenario, -ROOT-, .META. regions are lost in
-               AssignmentManager (Ming Ma)
-   HBASE-4513  NOTICES.txt refers to Facebook for Thrift
-   HBASE-3130  [replication] ReplicationSource can't recover from session
-               expired on remote clusters (Chris Trezzo via JD)
-   HBASE-4212  TestMasterFailover fails occasionally (Gao Jinchao)
-   HBASE-4412  No need to retry scan operation on the same server in case of
-               RegionServerStoppedException (Ming Ma)
-   HBASE-4476  Compactions must fail if column tracker gets columns out of order
-               (Mikhail Bautin)
-   HBASE-4209  The HBase hbase-daemon.sh SIGKILLs master when stopping it
-               (Roman Shaposhnik)
-   HBASE-4496  HFile V2 does not honor setCacheBlocks when scanning (Lars and Mikhail)
-   HBASE-4531  hbase-4454 failsafe broke mvn site; back it out or fix
-               (Akash Ashok)
-   HBASE-4334  HRegion.get never validates row (Lars Hofhansl)
-   HBASE-4494  AvroServer:: get fails with NPE on a non-existent row
-               (Kay Kay)
-   HBASE-4481  TestMergeTool failed in 0.92 build 20
-   HBASE-4386  Fix a potential NPE in TaskMonitor (todd)
-   HBASE-4402  Retaining locality after restart broken
-   HBASE-4482  Race Condition Concerning Eviction in SlabCache (Li Pi)
-   HBASE-4547  TestAdmin failing in 0.92 because .tableinfo not found
-   HBASE-4540  OpenedRegionHandler is not enforcing atomicity of the operation
-               it is performing(Ram)
-   HBASE-4335  Splits can create temporary holes in .META. that confuse clients
-               and regionservers (Lars H)
-   HBASE-4555  TestShell seems passed, but actually errors seen in test output
-               file (Mingjie Lai)
-   HBASE-4582  Store.java cleanup (failing TestHeapSize and has warnings)
-   HBASE-4556  Fix all incorrect uses of InternalScanner.next(...) (Lars H)
-   HBASE-4078  Validate store files after flush/compaction
-   HBASE-3417  CacheOnWrite is using the temporary output path for block
-               names, need to use a more consistent block naming scheme (jgray)
-   HBASE-4551  Fix pom and some test cases to compile and run against
-               Hadoop 0.23 (todd)
-   HBASE-3446  ProcessServerShutdown fails if META moves, orphaning lots of
-               regions
-   HBASE-4589  CacheOnWrite broken in some cases because it can conflict
-               with evictOnClose (jgray)
-   HBASE-4579  CST.requestCompaction semantics changed, logs are now
-               spammed when too many store files
-   HBASE-4620  I broke the build when I submitted HBASE-3581 (Send length
-               of the rpc response)
-   HBASE-4621  TestAvroServer fails quite often intermittently (Akash Ashok)
-   HBASE-4378  [hbck] Does not complain about regions with startkey==endkey.
-               (Jonathan Hsieh)
-   HBASE-4459  HbaseObjectWritable code is a byte, we will eventually run out of codes
-   HBASE-4430  Disable TestSlabCache and TestSingleSizedCache temporarily to
-               see if these are cause of build box failure though all tests
-               pass (Li Pi)
-   HBASE-4510  Check and workaround usage of internal HDFS APIs in HBase
-               (Harsh)
-   HBASE-4595  HFilePrettyPrinter Scanned kv count always 0 (Matteo Bertozzi)
-   HBASE-4580  Some invalid zk nodes were created when a clean cluster restarts
-               (Gaojinchao)
-   HBASE-4588  The floating point arithmetic to validate memory allocation
-               configurations need to be done as integers (dhruba)
-   HBASE-4647  RAT finds about 40 files missing licenses
-   HBASE-4642  Add Apache License Header
-   HBASE-4591  TTL for old HLogs should be calculated from last modification time.
-   HBASE-4578  NPE when altering a table that has moving regions (gaojinchao)
-   HBASE-4070  Improve region server metrics to report loaded coprocessors to
-               master (Eugene Koontz via apurtell)
-   HBASE-3512  Shell support for listing currently loaded coprocessors (Eugene
-               Koontz via apurtell)
-   HBASE-4670  Fix javadoc warnings
-   HBASE-4367  Deadlock in MemStore flusher due to JDK internally synchronizing
-               on current thread
-   HBASE-4645  Edits Log recovery losing data across column families
-   HBASE-4634  "test.build.data" property overused leading to write data at the
-               wrong place (nkeywal)
-   HBASE-4388  Second start after migration from 90 to trunk crashes
-   HBASE-4685  TestDistributedLogSplitting.testOrphanLogCreation failing because
-               of ArithmeticException: / by zero.
-   HBASE-4300  Start of new-version master fails if old master's znode is
-               hanging around
-   HBASE-4679  Thrift null mutation error
-   HBASE-4304  requestsPerSecond counter stuck at 0 (Li Pi)
-   HBASE-4692  HBASE-4300 broke the build
-   HBASE-4641  Block cache can be mistakenly instantiated on Master (jgray)
-   HBASE-4687  regionserver may miss zk-heartbeats to master when replaying
-               edits at region open (prakash via jgray)
-   HBASE-4701  TestMasterObserver fails up on jenkins
-   HBASE-4700  TestSplitTransactionOnCluster fails on occasion when it tries
-               to move a region
-   HBASE-4613  hbase.util.Threads#threadDumpingIsAlive sleeps 1 second,
-               slowing down the shutdown by 0.5s
-   HBASE-4552  multi-CF bulk load is not atomic across column families (Jonathan Hsieh)
-   HBASE-4710  UnknownProtocolException should abort client retries
-   HBASE-4695  WAL logs get deleted before region server can fully flush
-               (gaojinchao)
-   HBASE-4708  Revert safemode related pieces of hbase-4510 (Harsh J)
-   HBASE-3515  [replication] ReplicationSource can miss a log after RS comes out of GC
-   HBASE-4713  Raise debug level to warn on ExecutionException in
-               HConnectionManager$HConnectionImplementation (Lucian George Iordache)
-   HBASE-4716  Improve locking for single column family bulk load
-   HBASE-4609  ThriftServer.getRegionInfo() is expecting old ServerName format, need to
-               use new Addressing class instead (Jonathan Gray)
-   HBASE-4719  HBase script assumes pre-Hadoop 0.21 layout of jar files
-               (Roman Shposhnik)
-   HBASE-4553  The update of .tableinfo is not atomic; we remove then rename
-   HBASE-4725  NPE in AM#updateTimers
-   HBASE-4745  LRU statistics thread should be a daemon
-   HBASE-4749  TestMasterFailover#testMasterFailoverWithMockedRITOnDeadRS
-               occasionally fails
-   HBASE-4753  org.apache.hadoop.hbase.regionserver.TestHRegionInfo#testGetSetOfHTD
-               throws NPE on trunk (nkeywal)
-   HBASE-4754  FSTableDescriptors.getTableInfoPath() should handle FileNotFoundException
-   HBASE-4740  [bulk load] the HBASE-4552 API can't tell if errors on region server are recoverable
-               (Jonathan Hsieh)
-   HBASE-4741  Online schema change doesn't return errors
-   HBASE-4734  [bulk load] Warn if bulk load directory contained no files
-   HBASE-4723  Loads of NotAllMetaRegionsOnlineException traces when starting
-               the master
-   HBASE-4511  There is data loss when master failovers
-   HBASE-4577  Region server reports storefileSizeMB bigger than
-               storefileUncompressedSizeMB (gaojinchao)
-   HBASE-4478  Improve AssignmentManager.handleRegion so that it can process certain ZK state
-               in the case of RS offline
-   HBASE-4777  Write back to client 'incompatible' if we show up with wrong version
-   HBASE-4775  Remove -ea from all but tests; enable it if you need it testing
-   HBASE-4784  Void return types not handled correctly for CoprocessorProtocol
-               methods
-   HBASE-4792  SplitRegionHandler doesn't care if it deletes the znode or not,
-               leaves the parent region stuck offline
-   HBASE-4793  HBase shell still using deprecated methods removed in HBASE-4436
-   HBASE-4801  alter_status shell prints sensible message at completion
-   HBASE-4796  Race between SplitRegionHandlers for the same region kills the master
-   HBASE-4816  Regionserver wouldn't go down because split happened exactly at same
-               time we issued bulk user region close call on our way out
-   HBASE-4815  Disable online altering by default, create a config for it
-   HBASE-4623  Remove @deprecated Scan methods in 0.90 from TRUNK and 0.92
-   HBASE-4842  [hbck] Fix intermittent failures on TestHBaseFsck.testHBaseFsck
-               (Jon Hsieh)
-   HBASE-4308  Race between RegionOpenedHandler and AssignmentManager (Ram)
-   HBASE-4857  Recursive loop on KeeperException in
-               AuthenticationTokenSecretManager/ZKLeaderManager
-   HBASE-4739  Master dying while going to close a region can leave it in transition
-               forever (Gao Jinchao)
-   HBASE-4855  SplitLogManager hangs on cluster restart due to batch.installed doubly counted
-   HBASE-4877  TestHCM failing sporadically on jenkins and always for me on an
-               ubuntu machine
-   HBASE-4878  Master crash when splitting hlog may cause data loss (Chunhui Shen)
-   HBASE-4945  NPE in HRegion.bulkLoadHFiles (Andrew P and Lars H)
-   HBASE-4942  HMaster is unable to start of HFile V1 is used (Honghua Zhu)
-   HBASE-4610  Port HBASE-3380 (Master failover can split logs of live servers) to 92/trunk
-   HBASE-4946  HTable.coprocessorExec (and possibly coprocessorProxy) does not work with
-               dynamically loaded coprocessors (Andrei Dragomir)
-   HBASE-5026  Add coprocessor hook to HRegionServer.ScannerListener.leaseExpired()
-   HBASE-4935  hbase 0.92.0 doesn't work going against 0.20.205.0, its packaged hadoop
-   HBASE-5078  DistributedLogSplitter failing to split file because it has edits for
-               lots of regions
-   HBASE-5077  SplitLogWorker fails to let go of a task, kills the RS
-   HBASE-5096  Replication does not handle deletes correctly. (Lars H)
-   HBASE-5103  Fix improper master znode deserialization (Jonathan Hsieh)
-   HBASE-5099  ZK event thread waiting for root region assignment may block server
-               shutdown handler for the region sever the root region was on (Jimmy)
-   HBASE-5100  Rollback of split could cause closed region to be opened again (Chunhui)
-   HBASE-4397  -ROOT-, .META. tables stay offline for too long in recovery phase after all RSs
-               are shutdown at the same time (Ming Ma)
-   HBASE-5094  The META can hold an entry for a region with a different server name from the one  
-               actually in the AssignmentManager thus making the region inaccessible. (Ram)
-   HBASE-5081  Distributed log splitting deleteNode races against splitLog retry (Prakash)
-   HBASE-4357  Region stayed in transition - in closing state (Ming Ma)
-   HBASE-5088  A concurrency issue on SoftValueSortedMap (Jieshan Bean and Lars H)
-   HBASE-5152  Region is on service before completing initialization when doing rollback of split,
-               it will affect read correctness (Chunhui)
-   HBASE-5137  MasterFileSystem.splitLog() should abort even if waitOnSafeMode() throws IOException(Ted)
-   HBASE-5121  MajorCompaction may affect scan's correctness (chunhui shen and Lars H)
-   HBASE-5143  Fix config typo in pluggable load balancer factory (Harsh J)
-   HBASE-5196  Failure in region split after PONR could cause region hole (Jimmy Xiang)
-
-  TESTS
-   HBASE-4450  test for number of blocks read: to serve as baseline for expected
-               blocks read and for catching regressions (Kannan)
-   HBASE-4492  TestRollingRestart fails intermittently (Ted Yu and Ram)
-   HBASE-4512  JVMClusterUtil throwing wrong exception when master thread cannot be created (Ram)
-   HBASE-4479  TestMasterFailover failure in Hbase-0.92#17(Ram)
-   HBASE-4651  ConcurrentModificationException might be thrown in
-               TestHCM.testConnectionUniqueness (Jinchao)
-   HBASE-4518  TestServerCustomProtocol fails intermittently
-   HBASE-4790  Occasional TestDistributedLogSplitting failure (Jinchao)
-   HBASE-4864  TestMasterObserver#testRegionTransitionOperations occasionally
-               fails (Gao Jinchao)
-   HBASE-4868  TestOfflineMetaRebuildBase#testMetaRebuild occasionally fails
-               (Gao Jinchao)
-   HBASE-4874  Run tests with non-secure random, some tests hang otherwise (Lars H)
-   HBASE-5112  TestReplication#queueFailover flaky due to potentially
-               uninitialized Scan (Jimmy Xiang)
-   HBASE-5113  TestDrainingServer expects round robin region assignment but misses a
-               config parameter
-   HBASE-5105  TestImportTsv failed with hadoop 0.22 (Ming Ma)
-
-  IMPROVEMENTS
-   HBASE-3290  Max Compaction Size (Nicolas Spiegelberg via Stack)  
-   HBASE-3292  Expose block cache hit/miss/evict counts into region server
-               metrics
-   HBASE-2936  Differentiate between daemon & restart sleep periods
-   HBASE-3316  Add support for Java Serialization to HbaseObjectWritable
-               (Ed Kohlwey via Stack)
-   HBASE-1861  Multi-Family support for bulk upload tools
-   HBASE-3308  SplitTransaction.splitStoreFiles slows splits a lot
-   HBASE-3328  Added Admin API to specify explicit split points
-   HBASE-3377  Upgrade Jetty to 6.1.26
-   HBASE-3393  Update Avro gateway to use Avro 1.4.1 and the new
-               server.join() method (Jeff Hammerbacher via Stack)
-   HBASE-3433  KeyValue API to explicitly distinguish between deep & shallow
-               copies
-   HBASE-3522  Unbundle our RPC versioning; rather than a global for all 4
-               Interfaces -- region, master, region to master, and
-               coprocesssors -- instead version each individually
-   HBASE-3520  Update our bundled hadoop from branch-0.20-append to latest
-               (rpc version 43)
-   HBASE-3563  [site] Add one-page-only version of hbase doc
-   HBASE-3564  DemoClient.pl - a demo client in Perl
-   HBASE-3560  the hbase-default entry of "hbase.defaults.for.version" 
-               causes tests not to run via not-maven
-   HBASE-3513  upgrade thrift to 0.5.0 and use mvn version
-   HBASE-3533  Allow HBASE_LIBRARY_PATH env var to specify extra locations
-               of native lib
-   HBASE-3631  CLONE - HBase 2984 breaks ability to specify BLOOMFILTER &
-               COMPRESSION via shell
-   HBASE-3630  DemoClient.Java is outdated (Moaz Reyed via Stack)
-   HBASE-3618  Add to HBase book, 'schema' chapter - pre-creating regions and
-               key types (Doug Meil via Stack)
-   HBASE-2495  Allow record filtering with selected row key values in HBase
-               Export (Subbu M Iyer via Stack)
-   HBASE-3440  Clean out load_table.rb and make sure all roads lead to
-               completebulkload tool (Vidhyashankar Venkataraman via Stack)
-   HBASE-3653  Parallelize Server Requests on HBase Client
-   HBASE-3657  reduce copying of HRegionInfo's (Ted Yu via Stack)
-   HBASE-3422  Balancer will try to rebalance thousands of regions in one go;
-               needs an upper bound added (Ted Yu via Stack)
-   HBASE-3676  Update region server load for AssignmentManager through
-               regionServerReport() (Ted Yu via Stack)
-   HBASE-3468  Enhance checkAndPut and checkAndDelete with comparators
-   HBASE-3683  NMapInputFormat should use a different config param for
-               number of maps
-   HBASE-3673  Reduce HTable Pool Contention Using Concurrent Collections
-               (Karthick Sankarachary via Stack)
-   HBASE-3474  HFileOutputFormat to use column family's compression algorithm
-   HBASE-3541  REST Multi Gets (Elliott Clark via Stack)
-   HBASE-3052  Add ability to have multiple ZK servers in a quorum in
-               MiniZooKeeperCluster for test writing (Liyin Tang via Stack)
-   HBASE-3693  isMajorCompaction() check triggers lots of listStatus DFS RPC
-               calls from HBase (Liyin Tang via Stack)
-   HBASE-3717  deprecate HTable isTableEnabled() methods in favor of
-               HBaseAdmin methods (David Butler via Stack)
-   HBASE-3720  Book.xml - porting conceptual-view / physical-view sections of
-               HBaseArchitecture wiki (Doug Meil via Stack)
-   HBASE-3705  Allow passing timestamp into importtsv (Andy Sautins via Stack)
-   HBASE-3715  Book.xml - adding architecture section on client, adding section
-               on spec-ex under mapreduce (Doug Meil via Stack)
-   HBASE-3684  Support column range filter (Jerry Chen via Stack)
-   HBASE-3647  Distinguish read and write request count in region
-               (Ted Yu via Stack)
-   HBASE-3704  Show per region request count in table.jsp
-               (Ted Yu via Stack)
-   HBASE-3694  high multiput latency due to checking global mem store size
-               in a synchronized function (Liyin Tang via Stack)
-   HBASE-3710  Book.xml - fill out descriptions of metrics
-               (Doug Meil via Stack)
-   HBASE-3738  Book.xml - expanding Architecture Client section
-               (Doug Meil via Stack)
-   HBASE-3587  Eliminate use of read-write lock to guard loaded
-               coprocessor collection
-   HBASE-3729  Get cells via shell with a time range predicate
-               (Ted Yu via Stack)
-   HBASE-3764  Book.xml - adding 2 FAQs (SQL and arch question)
-   HBASE-3770  Make FilterList accept var arg Filters in its constructor
-               as a convenience (Erik Onnen via Stack)
-   HBASE-3769  TableMapReduceUtil is inconsistent with other table-related
-               classes that accept byte[] as a table name (Erik Onnen via Stack)
-   HBASE-3768  Add best practice to book for loading row key only
-               (Erik Onnen via Stack)
-   HBASE-3765  metrics.xml - small format change and adding nav to hbase
-               book metrics section (Doug Meil)
-   HBASE-3759  Eliminate use of ThreadLocals for CoprocessorEnvironment
-               bypass() and complete() 
-   HBASE-3701  revisit ArrayList creation (Ted Yu via Stack)
-   HBASE-3753  Book.xml - architecture, adding more Store info (Doug Meil)
-   HBASE-3784  book.xml - adding small subsection in architecture/client on
-               filters (Doug Meil)
-   HBASE-3785  book.xml - moving WAL into architecture section, plus adding
-               more description on what it does (Doug Meil)
-   HBASE-3699  Make RegionServerServices and MasterServices extend Server
-               (Erik Onnen)
-   HBASE-3757  Upgrade to ZK 3.3.3
-   HBASE-3609  Improve the selection of regions to balance; part 2 (Ted Yu)
-   HBASE-2939  Allow Client-Side Connection Pooling (Karthik Sankarachary)
-   HBASE-3798  [REST] Allow representation to elide row key and column key
-   HBASE-3812  Tidy up naming consistency and documentation in coprocessor
-               framework (Mingjie Lai)
-   HBASE-1512  Support aggregate functions (Himanshu Vashishtha)
-   HBASE-3796  Per-Store Enties in Compaction Queue
-   HBASE-3670  Fix error handling in get(List<Get> gets)
-               (Harsh J Chouraria)
-   HBASE-3835  Switch master and region server pages to Jamon-based templates
-   HBASE-3721  Speedup LoadIncrementalHFiles (Ted Yu)
-   HBASE-3855  Performance degradation of memstore because reseek is linear
-               (dhruba borthakur)
-   HBASE-3797  StoreFile Level Compaction Locking
-   HBASE-1476  Multithreaded Compactions
-   HBASE-3877  Determine Proper Defaults for Compaction ThreadPools
-   HBASE-3880  Make mapper function in ImportTSV plug-able (Bill Graham)
-   HBASE-2938  HBASE-2938 Add Thread-Local Behavior To HTable Pool
-               (Karthick Sankarachary)
-   HBASE-3811  Allow adding attributes to Scan (Alex Baranau)
-   HBASE-3841  HTable and HTableInterface docs are inconsistent with
-               one another (Harsh J Chouraria)
-   HBASE-2937  Facilitate Timeouts In HBase Client (Karthick Sankarachary)
-   HBASE-3921  Allow adding arbitrary blobs to Put (dhruba borthakur)
-   HBASE-3931  Allow adding attributes to Get
-   HBASE-3942  The thrift scannerOpen functions should support row caching
-               (Adam Worthington)
-   HBASE-2556  Add convenience method to HBaseAdmin to get a collection of
-               HRegionInfo objects for each table (Ming Ma)
-   HBASE-3952  Guava snuck back in as a dependency via hbase-3777
-   HBASE-3808  Implement Executor.toString for master handlers at least
-               (Brock Noland)
-   HBASE-3873  Mavenize Hadoop Snappy JAR/SOs project dependencies
-               (Alejandro Abdelnur)
-   HBASE-3941  "hbase version" command line should print version info
-               (Jolly Chen)
-   HBASE-3961  Add Delete.setWriteToWAL functionality (Bruno Dumon)
-   HBASE-3928  Some potential performance improvements to Bytes/KeyValue
-   HBASE-3982  Improvements to TestHFileSeek
-   HBASE-3940  HBase daemons should log version info at startup and possibly
-               periodically (Li Pi)
-   HBASE-3789  Cleanup the locking contention in the master
-   HBASE-3927  Display total uncompressed byte size of a region in web UI
-   HBASE-4011  New MasterObserver hook: post startup of active master
-   HBASE-3994  SplitTransaction has a window where clients can
-               get RegionOfflineException
-   HBASE-4010  HMaster.createTable could be heavily optimized
-   HBASE-3506  Ability to disable, drop and enable tables using regex expression
-               (Joey Echeverria via Ted Yu)
-   HBASE-3516  Coprocessors: add test cases for loading coprocessor jars
-               (Mingjie Lai via garyh)
-   HBASE-4036  Implementing a MultipleColumnPrefixFilter (Anirudh Todi)
-   HBASE-4048  [Coprocessors] Support configuration of coprocessor at load time
-   HBASE-3240  Improve documentation of importtsv and bulk loads.
-               (Aaron T. Myers via todd)
-   HBASE-4054  Usability improvement to HTablePool (Daniel Iancu)
-   HBASE-4079  HTableUtil - helper class for loading data (Doug Meil via Ted Yu)
-   HBASE-3871  Speedup LoadIncrementalHFiles by parallelizing HFile splitting
-   HBASE-4081  Issues with HRegion.compactStores methods (Ming Ma)
-   HBASE-3465  Hbase should use a HADOOP_HOME environment variable if available
-               (Alejandro Abdelnur)
-   HBASE-3899  enhance HBase RPC to support free-ing up server handler threads
-               even if response is not ready (Vlad Dogaru)
-   HBASE-4142  Advise against large batches in javadoc for HTable#put(List<Put>)
-   HBASE-4139  [stargate] Update ScannerModel with support for filter package
-               additions
-   HBASE-1938  Make in-memory table scanning faster (nkeywal)
-   HBASE-4143  HTable.doPut(List) should check the writebuffer length every so often
-               (Doug Meil via Ted Yu)
-   HBASE-3065  Retry all 'retryable' zk operations; e.g. connection loss (Liyin Tang)
-   HBASE-3810  Registering a coprocessor in HTableDescriptor should be easier
-               (Mingjie Lai via garyh)
-   HBASE-4158  Upgrade pom.xml to surefire 2.9 (Aaron Kushner & Mikhail)
-   HBASE-3899  Add ability for delayed RPC calls to set return value
-               immediately at call return. (Vlad Dogaru via todd)
-   HBASE-4169  FSUtils LeaseRecovery for non HDFS FileSystems (Lohit Vijayarenu)
-   HBASE-3807  Fix units in RS UI metrics (subramanian raghunathan)
-   HBASE-4193  Enhance RPC debug logging to provide more details on
-               call contents
-   HBASE-4190  Coprocessors: pull up some cp constants from cp package to
-               o.a.h.h.HConstants (Mingjie Lai)
-   HBASE-4227  Modify the webUI so that default values of column families are
-               not shown (Nileema Shingte)
-   HBASE-4229  Replace Jettison JSON encoding with Jackson in HLogPrettyPrinter
-               (Riley Patterson)
-   HBASE-4230  Compaction threads need names
-   HBASE-4236  Don't lock the stream while serializing the response (Benoit Sigoure)
-   HBASE-4237  Directly remove the call being handled from the map of outstanding RPCs
-               (Benoit Sigoure)
-   HBASE-4199  blockCache summary - backend (Doug Meil)
-   HBASE-4240  Allow Loadbalancer to be pluggable
-   HBASE-4244  Refactor bin/hbase help
-   HBASE-4241  Optimize flushing of the Memstore (Lars Hofhansl)
-   HBASE-4248  Enhancements for Filter Language exposing HBase filters through
-               the Thrift API (Anirudh Todi)
-   HBASE-3900  Expose progress of a major compaction in UI and/or in shell
-               (Brad Anderson)
-   HBASE-4291  Improve display of regions in transition in UI to be more
-               readable (todd)
-   HBASE-4281  Add facility to dump current state of all executors (todd)
-   HBASE-4275  RS should communicate fatal "aborts" back to the master (todd)
-   HBASE-4263  New config property for user-table only RegionObservers
-               (Lars Hofhansl)
-   HBASE-4257  Limit the number of regions in transitions displayed on
-               master webpage. (todd)
-   HBASE-1730  Online Schema Changes
-   HBASE-4206  jenkins hash implementation uses longs unnecessarily
-               (Ron Yang)
-   HBASE-3842  Refactor Coprocessor Compaction API
-   HBASE-4312  Deploy new hbase logo
-   HBASE-4327  Compile HBase against hadoop 0.22 (Joep Rottinghuis)
-   HBASE-4339  Improve eclipse documentation and project file generation
-               (Eric Charles)
-   HBASE-4342  Update Thrift to 0.7.0 (Moaz Reyad)
-   HBASE-4260  Expose a command to manually trigger an HLog roll
-               (ramkrishna.s.vasudevan)
-   HBASE-4347  Remove duplicated code from Put, Delete, Get, Scan, MultiPut
-               (Lars Hofhansl)
-   HBASE-4359  Show dead RegionServer names in the HMaster info page
-               (Harsh J)
-   HBASE-4287  If region opening fails, change region in transition into
-               a FAILED_OPEN state so that it can be retried quickly. (todd)
-   HBASE-4381  Refactor split decisions into a split policy class. (todd)
-   HBASE-4373  HBaseAdmin.assign() does not use force flag (Ramkrishna)
-   HBASE-4425  Provide access to RpcServer instance from RegionServerServices
-   HBASE-4411  When copying tables/CFs, allow CF names to be changed
-               (David Revell)
-   HBASE-4424  Provide coprocessors access to createTable() via 
-               MasterServices
-   HBASE-4432  Enable/Disable off heap cache with config (Li Pi)
-   HBASE-4434  seek optimization: don't do eager HFile Scanner
-               next() unless the next KV is needed
-               (Kannan Muthukkaruppan)
-   HBASE-4280  [replication] ReplicationSink can deadlock itself via handlers
-   HBASE-4014  Coprocessors: Flag the presence of coprocessors in logged
-               exceptions (Eugene Koontz)
-   HBASE-4449  LoadIncrementalHFiles should be able to handle CFs with blooms
-               (David Revell)
-   HBASE-4454  Add failsafe plugin to build and rename integration tests
-               (Jesse Yates)
-   HBASE-4499  [replication] Source shouldn't update ZK if it didn't progress
-               (Chris Trezzo via JD)
-   HBASE-2794  Utilize ROWCOL bloom filter if multiple columns within same family
-               are requested in a Get (Mikhail Bautin)
-   HBASE-4487  The increment operation can release the rowlock before sync-ing
-               the Hlog (dhruba borthakur)
-   HBASE-4526  special case for stopping master in hbase-daemon.sh is no longer
-               required (Roman Shaposhnik)
-   HBASE-4520  Better handling of Bloom filter type discrepancy between HFile
-               and CF config (Mikhail Bautin)
-   HBASE-4558  Refactor TestOpenedRegionHandler and TestOpenRegionHandler.(Ram)
-   HBASE-4558  Addendum for TestMasterFailover (Ram) - Breaks the build
-   HBASE-4568  Make zk dump jsp response faster
-   HBASE-4606  Remove spam in HCM and fix a list.size == 0
-   HBASE-3581  hbase rpc should send size of response
-   HBASE-4585  Avoid seek operation when current kv is deleted(Liyin Tang)
-   HBASE-4486  Improve Javadoc for HTableDescriptor (Akash Ashok)
-   HBASE-4604  hbase.client.TestHTablePool could start a single
-               cluster instead of one per method (nkeywal)
-   HBASE-3929  Add option to HFile tool to produce basic stats (Matteo
-               Bertozzi and todd via todd)
-   HBASE-4694  Some cleanup of log messages in RS and M
-   HBASE-4603  Uneeded sleep time for tests in
-               hbase.master.ServerManager#waitForRegionServers (nkeywal)
-   HBASE-4703  Improvements in tests (nkeywal)
-   HBASE-4611  Add support for Phabricator/Differential as an alternative code review tool
-   HBASE-3939  Some crossports of Hadoop IPC fixes
-   HBASE-4756  Enable tab-completion in HBase shell (Ryan Thiessen)
-   HBASE-4759  Migrate from JUnit 4.8.2 to JUnit 4.10 (nkeywal)
-   HBASE-4554  Allow set/unset coprocessor table attributes from shell
-               (Mingjie Lai)
-   HBASE-4779  TestHTablePool, TestScanWithBloomError, TestRegionSplitCalculator are
-               not tagged and TestPoolMap should not use TestSuite (N Keywal)
-   HBASE-4805  Allow better control of resource consumption in HTable (Lars H)
-   HBASE-4903  Return a result from RegionObserver.preIncrement
-               (Daniel Gómez Ferro via Lars H)
-   HBASE-4683  Always cache index and bloom blocks
-
-  TASKS
-   HBASE-3559  Move report of split to master OFF the heartbeat channel
-   HBASE-3573  Move shutdown messaging OFF hearbeat; prereq for fix of
-               hbase-1502
-   HBASE-3071  Graceful decommissioning of a regionserver
-   HBASE-3970  Address HMaster crash/failure half way through meta migration
-               (Subbu M Iyer)
-   HBASE-4013  Make ZooKeeperListener Abstract (Akash Ashok via Ted Yu)
-   HBASE-4025  Server startup fails during startup due to failure in loading
-               all table descriptors. (Subbu Iyer via Ted Yu)
-   HBASE-4017  BlockCache interface should be truly modular (Li Pi)
-   HBASE-4152  Rename o.a.h.h.regionserver.wal.WALObserver to
-               o.a.h.h.regionserver.wal.WALActionsListener
-   HBASE-4039  Users should be able to choose custom TableInputFormats without
-               modifying TableMapReduceUtil.initTableMapperJob() (Brock Noland)
-   HBASE-4185  Add doc for new hfilev2 format
-   HBASE-4315  RS requestsPerSecond counter seems to be off (subramanian raghunathan)
-   HBASE-4289  Move spinlock to SingleSizeCache rather than the slab allocator
-               (Li Pi)
-   HBASE-4296  Deprecate HTable[Interface].getRowOrBefore(...) (Lars Hofhansl)
-   HBASE-2195  Support cyclic replication (Lars Hofhansl)
-   HBASE-2196  Support more than one slave cluster (Lars Hofhansl)
-   HBASE-4429  Provide synchronous balanceSwitch()
-   HBASE-4437  Update hadoop in 0.92 (0.20.205?)
-   HBASE-4656  Note how dfs.support.append has to be enabled in 0.20.205.0
-               clusters
-   HBASE-4699  Cleanup the UIs
-   HBASE-4552  Remove trivial 0.90 deprecated code from 0.92 and trunk.
-               (Jonathan Hsieh)
-   HBASE-4714  Don't ship w/ icms enabled by default
-   HBASE-4747  Upgrade maven surefire plugin to 2.10
-   HBASE-4288  "Server not running" exception during meta verification causes RS abort
-   HBASE-4856  Upgrade zookeeper to 3.4.0 release
-   HBASE-5111  Upgrade zookeeper to 3.4.2 release
-   HBASE-5125  Upgrade hadoop to 1.0.0
-
-  NEW FEATURES
-   HBASE-2001  Coprocessors: Colocate user code with regions (Mingjie Lai via
-               Andrew Purtell)
-   HBASE-3287  Add option to cache blocks on hfile write and evict blocks on
-               hfile close
-   HBASE-3335  Add BitComparator for filtering (Nathaniel Cook via Stack)
-   HBASE-3260  Coprocessors: Add explicit lifecycle management
-   HBASE-3256  Coprocessors: Coprocessor host and observer for HMaster
-   HBASE-3345  Coprocessors: Allow observers to completely override base
-               function
-   HBASE-2824  A filter that randomly includes rows based on a configured
-               chance (Ferdy via Andrew Purtell)
-   HBASE-3455  Add memstore-local allocation buffers to combat heap
-               fragmentation in the region server. Enabled by default as of
-               0.91
-   HBASE-3257  Coprocessors: Extend server side API to include HLog operations
-               (Mingjie Lai via Andrew Purtell)
-   HBASE-3606  Create an package integration project (Eric Yang via Ryan)
-   HBASE-3488  Add CellCounter to count multiple versions of rows
-               (Subbu M. Iyer via Stack)
-   HBASE-1364  [performance] Distributed splitting of regionserver commit logs
-               (Prakash Khemani)
-   HBASE-3836  Add facility to track currently progressing actions and
-               workflows. (todd)
-   HBASE-3837  Show regions in transition on the master web page (todd)
-   HBASE-3839  Add monitoring of currently running tasks to the master and
-               RS web UIs
-   HBASE-3691  Add compressor support for 'snappy', google's compressor
-               (Nichole Treadway and Nicholas Telford)
-   HBASE-2233  Support both Hadoop 0.20 and 0.22
-   HBASE-3857  Change the HFile Format (Mikhail & Liyin)
-   HBASE-4114  Metrics for HFile HDFS block locality (Ming Ma)
-   HBASE-4176  Exposing HBase Filters to the Thrift API (Anirudh Todi)
-   HBASE-4221  Changes necessary to build and run against Hadoop 0.23
-               (todd)
-   HBASE-4071  Data GC: Remove all versions > TTL EXCEPT the last
-               written version (Lars Hofhansl)
-   HBASE-4242  Add documentation for HBASE-4071 (Lars Hofhansl)
-   HBASE-4027  Enable direct byte buffers LruBlockCache (Li Pi)
-   HBASE-4117  Slow Query Log and Client Operation Fingerprints
-               (Riley Patterson)
-   HBASE-4292  Add a debugging dump servlet to the master and regionserver
-               (todd)
-   HBASE-4057  Implement HBase version of "show processlist" (Riley Patterson)
-   HBASE-4219  Per Column Family Metrics
-   HBASE-4219  Addendum for failure of TestHFileBlock
-   HBASE-4377  [hbck] Offline rebuild .META. from fs data only
-               (Jonathan Hsieh)
-   HBASE-4298  Support to drain RS nodes through ZK (Aravind Gottipati)
-   HBASE-2742  Provide strong authentication with a secure RPC engine
-   HBASE-3025  Coprocessor based access control
-
-Release 0.90.7 - Unreleased
-
-  BUG FIXES
-   HBASE-5271  Result.getValue and Result.getColumnLatest return the wrong column (Ghais Issa)
-
-Release 0.90.6 - Unreleased
-
-  BUG FIXES
-   HBASE-4970  Add a parameter so that keepAliveTime of Htable thread pool can be changed (gaojinchao)
-   HBASE-5060  HBase client is blocked forever (Jinchao)
-   HBASE-5009  Failure of creating split dir if it already exists prevents splits from happening further
-   HBASE-5041  Major compaction on non existing table does not throw error (Shrijeet)
-   HBASE-5327  Print a message when an invalid hbase.rootdir is passed (Jimmy Xiang)
-
-Release 0.90.5 - Released
-
-  BUG FIXES
-   HBASE-4160  HBase shell move and online may be unusable if region name
-               or server includes binary-encoded data (Jonathan Hsieh)
-   HBASE-4168  A client continues to try and connect to a powered down
-               regionserver (Anirudh Todi)
-   HBASE-4196  TableRecordReader may skip first row of region (Ming Ma)
-   HBASE-4170  createTable java doc needs to be improved (Mubarak Seyed)
-   HBASE-4144  RS does not abort if the initialization of RS fails
-               (ramkrishna.s.vasudevan)
-   HBASE-4148  HFileOutputFormat doesn't fill in TIMERANGE_KEY metadata
-               (Jonathan Hsieh)
-   HBASE-4159  HBaseServer - IPC Reader threads are not daemons (Douglas
-               Campbell)
-   HBASE-4095  Hlog may not be rolled in a long time if checkLowReplication's
-               request of LogRoll is blocked (Jieshan Bean)
-   HBASE-4253  TestScannerTimeOut.test3686a and TestHTablePool.
-               testReturnDifferentTable() failure because of using new
-               HTable(tablename) (ramkrishna.s.vasudevan)
-   HBASE-4124  ZK restarted while a region is being assigned, new active HM
-               re-assigns it but the RS warns 'already online on this server'
-               (Gaojinchao)
-   HBASE-4294  HLogSplitter sleeps with 1-second granularity (todd)
-   HBASE-4270  IOE ignored during flush-on-close causes dataloss
-   HBASE-4180  HBase should check the isSecurityEnabled flag before login
-   HBASE-4325  Improve error message when using STARTROW for meta scans
-               (Jonathan Hsieh)
-   HBASE-4238  CatalogJanitor can clear a daughter that split before
-               processing its parent
-   HBASE-4445  Not passing --config when checking if distributed mode or not
-   HBASE-4453  TestReplication failing up on builds.a.o because already
-               running zk with new format root servername
-   HBASE-4387  Error while syncing: DFSOutputStream is closed
-               (Lars Hofhansl)
-   HBASE-4295  rowcounter does not return the correct number of rows in
-               certain circumstances (David Revell)
-   HBASE-4515  User.getCurrent() can fail to initialize the current user
-   HBASE-4473  NPE when executors are down but events are still coming in
-   HBASE-4537  TestUser imports breaking build against secure Hadoop
-   HBASE-4501  [replication] Shutting down a stream leaves recovered
-               sources running
-   HBASE-4563  When error occurs in this.parent.close(false) of split,
-               the split region cannot write or read (bluedavy via Lars H)
-   HBASE-4570. Fix a race condition that could cause inconsistent results
-               from scans during concurrent writes. (todd and Jonathan Jsieh
-               via todd)
-   HBASE-4562  When split doing offlineParentInMeta encounters error, it'll
-               cause data loss (bluedavy via Lars H)
-   HBASE-4800  Result.compareResults is incorrect (James Taylor and Lars H)
-   HBASE-4848  TestScanner failing because hostname can't be null
-   HBASE-4862  Splitting hlog and opening region concurrently may cause data loss
-               (Chunhui Shen)
-   HBASE-4773  HBaseAdmin may leak ZooKeeper connections (Xufeng)
-
-  IMPROVEMENT
-   HBASE-4205  Enhance HTable javadoc (Eric Charles)
-   HBASE-4222  Make HLog more resilient to write pipeline failures
-   HBASE-4293  More verbose logging in ServerShutdownHandler for meta/root
-               cases (todd)
-   HBASE-4276  AssignmentManager debug logs should be at INFO level for
-               META/ROOT regions (todd)
-   HBASE-4323  Add debug logging when AssignmentManager can't make a plan
-               for a region (todd)
-   HBASE-4313  Refactor TestHBaseFsck to make adding individual hbck tests
-               easier (Jonathan Hsieh)
-   HBASE-4272. Add -metaonly flag to hbck feature to only inspect and try
-               to repair META and ROOT. (todd)
-   HBASE-4321. Add a more comprehensive region split calculator for future use
-               in hbck. (Jonathan Hsieh)
-   HBASE-4384  Hard to tell what causes failure in CloseRegionHandler#getCurrentVersion
-               (Harsh J)
-   HBASE-4375  [hbck] Add region coverage visualization to hbck
-               (Jonathan Hsieh)
-   HBASE-4506  [hbck] Allow HBaseFsck to be instantiated without connecting
-               (Jonathan Hsieh)
-   HBASE-4509  [hbck] Improve region map output
-               (Jonathan Hsieh)
-   HBASE-4806  Fix logging message in HbaseObjectWritable
-               (Jonathan Hsieh via todd)
-
-Release 0.90.4 - August 10, 2011
-
-  BUG FIXES
-   HBASE-3878  Hbase client throws NoSuchElementException (Ted Yu)
-   HBASE-3881  Add disable balancer in graceful_stop.sh script
-   HBASE-3895  Fix order of parameters after HBASE-1511
-   HBASE-3874  ServerShutdownHandler fails on NPE if a plan has a random
-               region assignment
-   HBASE-3902  Add Bytes.toBigDecimal and Bytes.toBytes(BigDecimal)
-               (Vaibhav Puranik)
-   HBASE-3820  Splitlog() executed while the namenode was in safemode may
-               cause data-loss (Jieshan Bean)
-   HBASE-3905  HBaseAdmin.createTableAsync() should check for invalid split
-               keys (Ted Yu)
-   HBASE-3908  TableSplit not implementing "hashCode" problem (Daniel Iancu)
-   HBASE-3915  Binary row keys in hbck and other miscellaneous binary key
-               display issues
-   HBASE-3914  ROOT region appeared in two regionserver's onlineRegions at
-               the same time (Jieshan Bean)
-   HBASE-3934  MemStoreFlusher.getMemStoreLimit() doesn't honor defaultLimit
-               (Ted Yu)
-   HBASE-3946  The splitted region can be online again while the standby
-               hmaster becomes the active one (Jieshan Bean)
-   HBASE-3916  Fix the default bind address of ThriftServer to be wildcard
-               instead of localhost. (Li Pi)
-   HBASE-3985  Same Region could be picked out twice in LoadBalance
-               (Jieshan Bean)
-   HBASE-3987  Fix a NullPointerException on a failure to load Bloom filter data
-               (Mikhail Bautin)
-   HBASE-3948  Improve split/compact result page for RegionServer status page
-               (Li Pi)
-   HBASE-3988  Infinite loop for secondary master (Liyin Tang)
-   HBASE-3995  HBASE-3946 broke TestMasterFailover
-   HBASE-2077  NullPointerException with an open scanner that expired causing
-               an immediate region server shutdown -- part 2.
-   HBASE-4005  close_region bugs
-   HBASE-4028  Hmaster crashes caused by splitting log.
-               (gaojinchao via Ted Yu)
-   HBASE-4035  Fix local-master-backup.sh - parameter order wrong
-               (Lars George via Ted Yu)
-   HBASE-4020  "testWritesWhileGetting" unit test needs to be fixed.
-               (Vandana Ayyalasomayajula via Ted Yu)
-   HBASE-3984  CT.verifyRegionLocation isn't doing a very good check,
-               can delay cluster recovery
-   HBASE-4045  [replication] NPE in ReplicationSource when ZK is gone
-   HBASE-4034  HRegionServer should be stopped even if no META regions
-               are hosted by the HRegionServer (Akash Ashok)
-   HBASE-4033  The shutdown RegionServer could be added to
-               AssignmentManager.servers again (Jieshan Bean)
-   HBASE-4088  npes in server shutdown
-   HBASE-3872  Hole in split transaction rollback; edits to .META. need
-               to be rolled back even if it seems like they didn't make it
-   HBASE-4101  Regionserver Deadlock (ramkrishna.s.vasudevan)
-   HBASE-4115  HBase shell assign and unassign unusable if region name
-               includes binary-encoded data (Ryan Brush)
-   HBASE-4126  Make timeoutmonitor timeout after 30 minutes instead of 3
-   HBASE-4129  HBASE-3872 added a warn message 'CatalogJanitor: Daughter regiondir
-               does not exist' that is triggered though its often legit that daughter
-               is not present
-
-  IMPROVEMENT
-   HBASE-3882  hbase-config.sh needs to be updated so it can auto-detects the
-               sun jre provided by RHEL6 (Roman Shaposhnik)
-   HBASE-3920  HLog hbase.regionserver.flushlogentries no longer supported
-               (Dave Latham)
-   HBASE-3919  More places output binary data to text (Dave Latham)
-   HBASE-3873  HBase IRB shell: Don't pretty-print the output when stdout
-               isn't a TTY (Benoît Sigoure)
-   HBASE-3969  Outdated data can not be cleaned in time (Zhou Shuaifeng)
-   HBASE-3968  HLog Pretty Printer (Riley Patterson)
-
-Release 0.90.3 - May 19th, 2011
-
-  BUG FIXES
-   HBASE-3746  Clean up CompressionTest to not directly reference
-               DistributedFileSystem (todd)
-   HBASE-3734  HBaseAdmin creates new configurations in getCatalogTracker
-   HBASE-3756  Can't move META or ROOT from shell
-   HBASE-3740  hbck doesn't reset the number of errors when retrying
-   HBASE-3744  createTable blocks until all regions are out of transition
-               (Ted Yu via Stack)
-   HBASE-3750  HTablePool.putTable() should call releaseHTableInterface()
-               for discarded tables (Ted Yu via garyh)
-   HBASE-3755  Catch zk's ConnectionLossException and augment error
-               message with more help
-   HBASE-3722  A lot of data is lost when name node crashed (gaojinchao)
-   HBASE-3771  All jsp pages don't clean their HBA
-   HBASE-3685  when multiple columns are combined with TimestampFilter, only
-               one column is returned (Jerry Chen)
-   HBASE-3708  createAndFailSilent is not so silent; leaves lots of logging
-               in ensemble logs (Dmitriy Ryaboy)
-   HBASE-3783  hbase-0.90.2.jar exists in hbase root and in 'lib/'
-   HBASE-3539  Improve shell help to reflect all possible options
-               (Harsh J Chouraria)
-   HBASE-3817  HBase Shell has an issue accepting FILTER for the 'scan' command.
-               (Harsh J Chouraria)
-   HBASE-3634  Fix JavaDoc for put(List<Put> puts) in HTableInterface
-               (Harsh J Chouraria)
-   HBASE-3749  Master can't exit when open port failed (gaojinchao)
-   HBASE-3794  TestRpcMetrics fails on machine where region server is running
-               (Alex Newman)
-   HBASE-3741  Make HRegionServer aware of the regions it's opening/closing
-   HBASE-3597  ageOfLastAppliedOp should update after cluster replication
-               failures
-   HBASE-3821  "NOT flushing memstore for region" keep on printing for half
-               an hour (zhoushuaifeng)
-
-  IMPROVEMENTS
-   HBASE-3747  ReplicationSource should differanciate remote and local exceptions
-   HBASE-3652  Speed up tests by lowering some sleeps
-   HBASE-3767  Improve how HTable handles threads used for multi actions
-   HBASE-3795  Remove the "Cache hit for row" message
-   HBASE-3580  Remove RS from DeadServer when new instance checks in
-   HBASE-2470  Add Scan.setTimeRange() support in Shell (Harsh J Chouraria)
-   HBASE-3805  Log RegionState that are processed too late in the master
-   HBASE-3695  Some improvements to Hbck to test the entire region chain in
-                Meta and provide better error reporting (Marc Limotte)
-   HBASE-3813  Change RPC callQueue size from 'handlerCount *
-               MAX_QUEUE_SIZE_PER_HANDLER;'
-   HBASE-3860  HLog shouldn't create a new HBC when rolling
-
-  TASKS
-   HBASE-3748  Add rolling of thrift/rest daemons to graceful_stop.sh script
-   HBASE-3846  Set RIT timeout higher
-
-Release 0.90.2 - 20110408
-  
-  BUG FIXES
-   HBASE-3545  Possible liveness issue with MasterServerAddress in
-               HRegionServer getMaster (Greg Bowyer via Stack)
-   HBASE-3548  Fix type in documentation of pseudo distributed mode
-   HBASE-3553  HTable ThreadPoolExecutor does not properly initialize
-               for hbase.htable.threads.max threads
-               (Himanshu Vashishtha via garyh)
-   HBASE-3566  writeToWAL is not serialized for increment operation
-   HBASE-3576  MasterAddressTracker is registered to ZooKeeperWatcher twice
-   HBASE-3561  OPTS arguments are duplicated
-   HBASE-3572  memstore lab can leave half inited data structs (bad!)
-   HBASE-3589  test jar should not include mapred-queues.xml and
-               log4j.properties
-   HBASE-3593  DemoClient.cpp is outdated
-   HBASE-3591  completebulkload doesn't honor generic -D options
-   HBASE-3594  Rest server fails because of missing asm jar
-   HBASE-3582  Allow HMaster and HRegionServer to login from keytab
-               when on secure Hadoop
-   HBASE-3608  MemstoreFlusher error message doesnt include exception!
-   HBASE-1960  Master should wait for DFS to come up when creating
-               hbase.version; use alternate strategy for waiting for DNs
-   HBASE-3612  HBaseAdmin::isTableAvailable returns true when the table does
-               not exit
-   HBASE-3626  Update instructions in thrift demo files (Moaz Reyad via Stack)
-   HBASE-3633  ZKUtil::createSetData should only create a node when it
-               nonexists (Guanpeng Xu via Stack)
-   HBASE-3636  a bug about deciding whether this key is a new key for the ROWCOL
-               bloomfilter (Liyin Tang via Stack)
-   HBASE-3639  FSUtils.getRootDir should qualify path
-   HBASE-3648  [replication] failover is sloppy with znodes
-   HBASE-3613  NPE in MemStoreFlusher
-   HBASE-3650  HBA.delete can return too fast
-   HBASE-3659  Fix TestHLog to pass on newer versions of Hadoop
-   HBASE-3595  get_counter broken in shell
-   HBASE-3664  [replication] Adding a slave when there's none may kill the cluster
-   HBASE-3671  Split report before we finish parent region open; workaround
-               till 0.92; Race between split and OPENED processing
-   HBASE-3674  Treat ChecksumException as we would a ParseException splitting
-               logs; else we replay split on every restart
-   HBASE-3621  The timeout handler in AssignmentManager does an RPC while
-               holding lock on RIT; a big no-no (Ted Yu via Stack)
-   HBASE-3575  Update rename table script
-   HBASE-3687  Bulk assign on startup should handle a ServerNotRunningException
-   HBASE-3617  NoRouteToHostException during balancing will cause Master abort
-               (Ted Yu via Stack)
-   HBASE-3668  CatalogTracker.waitForMeta can wait forever and totally stall a RS
-   HBASE-3627  NPE in EventHandler when region already reassigned
-   HBASE-3660  HMaster will exit when starting with stale data in cached locations
-               such as -ROOT- or .META.
-   HBASE-3654  Weird blocking between getOnlineRegion and createRegionLoad
-               (Subbu M Iyer via Stack)
-   HBASE-3666  TestScannerTimeout fails occasionally
-   HBASE-3497  TableMapReduceUtil.initTableReducerJob broken due to setConf 
-               method in TableOutputFormat
-   HBASE-3686  ClientScanner skips too many rows on recovery if using scanner
-               caching (Sean Sechrist via Stack)
-
-  IMPROVEMENTS
-   HBASE-3542  MultiGet methods in Thrift
-   HBASE-3586  Improve the selection of regions to balance (Ted Yu via Andrew
-               Purtell)  
-   HBASE-3603  Remove -XX:+HeapDumpOnOutOfMemoryError autodump of heap option
-               on OOME
-   HBASE-3285  Hlog recovery takes too much time
-   HBASE-3623  Allow non-XML representable separator characters in the ImportTSV tool
-               (Harsh J Chouraria via Stack)
-   HBASE-3620  Make HBCK utility faster
-   HBASE-3625  improve/fix support excluding Tests via Maven -D property
-               (Alejandro Abdelnur via todd)
-   HBASE-3437  Support Explict Split Points from the Shell
-   HBASE-3448  RegionSplitter, utility class to manually split tables
-   HBASE-3610  Improve RegionSplitter performance
-   HBASE-3496  HFile CLI Improvements
-   HBASE-3596  [replication] Wait a few seconds before transferring queues
-   HBASE-3600  Update our jruby to 1.6.0
-   HBASE-3640  [replication] Transferring queues shouldn't be done inline with RS startup
-   HBASE-3658  Alert when heap is over committed (Subbu M Iyer via Stack)
-   HBASE-3681  Check the sloppiness of the region load before balancing (Ted Yu via JD)
-   HBASE-3703  hbase-config.sh needs to be updated so it can auto-detect
-               the sun jdk provided by RHEL6 (Bruno Mahe via todd)
-
-Release 0.90.1 - February 9th, 2011
-
-  NEW FEATURES
-   HBASE-3455  Add memstore-local allocation buffers to combat heap
-               fragmentation in the region server. Experimental / disabled
-               by default in 0.90.1
-  
-  BUG FIXES
-   HBASE-3445  Master crashes on data that was moved from different host
-   HBASE-3449  Server shutdown handlers deadlocked waiting for META
-   HBASE-3456  Fix hardcoding of 20 second socket timeout down in HBaseClient
-   HBASE-3476  HFile -m option need not scan key values
-               (Prakash Khemani via Lars George)
-   HBASE-3481  max seq id in flushed file can be larger than its correct value 
-               causing data loss during recovery
-   HBASE-3493  HMaster sometimes hangs during initialization due to missing
-               notify call (Bruno Dumon via Stack)
-   HBASE-3483  Memstore lower limit should trigger asynchronous flushes
-   HBASE-3494  checkAndPut implementation doesnt verify row param and writable 
-               row are the same
-   HBASE-3416  For intra-row scanning, the update readers notification resets
-               the query matcher and can lead to incorrect behavior
-   HBASE-3495  Shell is failing on subsequent split calls
-   HBASE-3502  Can't open region because can't open .regioninfo because
-               AlreadyBeingCreatedException
-   HBASE-3501  Remove the deletion limit in LogCleaner
-   HBASE-3500  Documentation update for replicatio
-   HBASE-3419  If re-transition to OPENING during log replay fails, server
-               aborts. Instead, should just cancel region open.
-   HBASE-3524  NPE from CompactionChecker
-   HBASE-3531  When under global memstore pressure, dont try to flush
-               unflushable regions.
-   HBASE-3550  FilterList reports false positives (Bill Graham via Andrew
-               Purtell)
-
-  IMPROVEMENTS
-   HBASE-3305  Allow round-robin distribution for table created with
-               multiple regions (ted yu via jgray)
-   HBASE-3508  LruBlockCache statistics thread should have a name
-   HBASE-3511  Allow rolling restart to apply to only RS or only masters
-   HBASE-3510  Add thread name for IPC reader threads
-   HBASE-3509  Add metric for flush queue length
-   HBASE-3517  Store build version in hbase-default.xml and verify at runtime
-
-Release 0.90.0 - January 19th, 2011
-  INCOMPATIBLE CHANGES
-   HBASE-1822  Remove the deprecated APIs
-   HBASE-1848  Fixup shell for HBASE-1822
-   HBASE-1854  Remove the Region Historian
-   HBASE-1930  Put.setTimeStamp misleading (doesn't change timestamp on
-               existing KeyValues, not copied in copy constructor)
-               (Dave Latham via Stack)
-   HBASE-1360  move up to Thrift 0.2.0 (Kay Kay and Lars Francke via Stack)
-   HBASE-2212  Refactor out lucene dependencies from HBase
-               (Kay Kay via Stack)
-   HBASE-2219  stop using code mapping for method names in the RPC
-   HBASE-1728  Column family scoping and cluster identification
-   HBASE-2099  Move build to Maven (Paul Smith via Stack)
-   HBASE-2260  Remove all traces of Ant and Ivy (Lars Francke via Stack)
-   HBASE-2255  take trunk back to hadoop 0.20
-   HBASE-2378  Bulk insert with multiple reducers broken due to improper
-               ImmutableBytesWritable comparator (Todd Lipcon via Stack)
-   HBASE-2392  Upgrade to ZooKeeper 3.3.0
-   HBASE-2294  Enumerate ACID properties of HBase in a well defined spec
-               (Todd Lipcon via Stack)
-   HBASE-2541  Remove transactional contrib (Clint Morgan via Stack)
-   HBASE-2542  Fold stargate contrib into core
-   HBASE-2565  Remove contrib module from hbase
-   HBASE-2397  Bytes.toStringBinary escapes printable chars
-   HBASE-2771  Update our hadoop jar to be latest from 0.20-append branch
-   HBASE-2803  Remove remaining Get code from Store.java,etc
-   HBASE-2553  Revisit IncrementColumnValue implementation in 0.22
-   HBASE-2692  Master rewrite and cleanup for 0.90
-               (Karthik Ranganathan, Jon Gray & Stack)
-   HBASE-2961  Close zookeeper when done with it (HCM, Master, and RS)
-   HBASE-2641  HBASE-2641 Refactor HLog splitLog, hbase-2437 continued;
-               break out split code as new classes
-               (James Kennedy via Stack)
-
-  BUG FIXES
-   HBASE-1791  Timeout in IndexRecordWriter (Bradford Stephens via Andrew
-               Purtell)
-   HBASE-1737  Regions unbalanced when adding new node (recommit)
-   HBASE-1792  [Regression] Cannot save timestamp in the future
-   HBASE-1793  [Regression] HTable.get/getRow with a ts is broken
-   HBASE-1698  Review documentation for o.a.h.h.mapreduce
-   HBASE-1798  [Regression] Unable to delete a row in the future
-   HBASE-1790  filters are not working correctly (HBASE-1710 HBASE-1807 too)
-   HBASE-1779  ThriftServer logged error if getVer() result is empty
-   HBASE-1778  Improve PerformanceEvaluation (Schubert Zhang via Stack)
-   HBASE-1751  Fix KeyValue javadoc on getValue for client-side
-   HBASE-1795  log recovery doesnt reset the max sequence id, new logfiles can
-               get tossed as 'duplicates'
-   HBASE-1794  recovered log files are not inserted into the storefile map
-   HBASE-1824  [stargate] default timestamp should be LATEST_TIMESTAMP
-   HBASE-1740  ICV has a subtle race condition only visible under high load
-   HBASE-1808  [stargate] fix how columns are specified for scanners
-   HBASE-1828  CompareFilters are broken from client-side
-   HBASE-1836  test of indexed hbase broken
-   HBASE-1838  [javadoc] Add javadoc to Delete explaining behavior when no
-               timestamp provided
-   HBASE-1821  Filtering by SingleColumnValueFilter bug
-   HBASE-1840  RowLock fails when used with IndexTable
-               (Keith Thomas via Stack)
-   HBASE-818   HFile code review and refinement (Schubert Zhang via Stack)
-   HBASE-1830  HbaseObjectWritable methods should allow null HBCs
-               for when Writable is not Configurable (Stack via jgray)
-   HBASE-1847  Delete latest of a null qualifier when non-null qualifiers
-               exist throws a RuntimeException 
-   HBASE-1850  src/examples/mapred do not compile after HBASE-1822
-   HBASE-1853  Each time around the regionserver core loop, we clear the
-               messages to pass master, even if we failed to deliver them
-   HBASE-1815  HBaseClient can get stuck in an infinite loop while attempting
-               to contact a failed regionserver
-   HBASE-1856  HBASE-1765 broke MapReduce when using Result.list()
-               (Lars George via Stack)
-   HBASE-1857  WrongRegionException when setting region online after .META.
-               split (Cosmin Lehane via Stack)
-   HBASE-1809  NPE thrown in BoundedRangeFileInputStream
-   HBASE-1859  Misc shell fixes patch (Kyle Oba via Stack)
-   HBASE-1865  0.20.0 TableInputFormatBase NPE
-   HBASE-1866  Scan(Scan) copy constructor does not copy value of
-               cacheBlocks
-   HBASE-1869  IndexedTable delete fails when used in conjunction with
-               RowLock (Keith Thomas via Stack)
-   HBASE-1858  Master can't split logs created by THBase (Clint Morgan via
-               Andrew Purtell)
-   HBASE-1871  Wrong type used in TableMapReduceUtil.initTableReduceJob()
-               (Lars George via Stack)
-   HBASE-1883  HRegion passes the wrong minSequenceNumber to
-               doReconstructionLog (Clint Morgan via Stack)
-   HBASE-1878  BaseScanner results can't be trusted at all (Related to
-               hbase-1784)
-   HBASE-1831  Scanning API must be reworked to allow for fully functional
-               Filters client-side
-   HBASE-1890  hbase-1506 where assignment is done at regionserver doesn't
-               work
-   HBASE-1889  ClassNotFoundException on trunk for REST
-   HBASE-1905  Remove unused config. hbase.hstore.blockCache.blockSize
-   HBASE-1906  FilterList of prefix and columnvalue not working properly with
-               deletes and multiple values
-   HBASE-1896  WhileMatchFilter.reset should call encapsulated filter reset
-   HBASE-1912  When adding a secondary index to an existing table, it will
-               cause NPE during re-indexing (Mingjui Ray Liao via Andrew
-               Purtell)
-   HBASE-1916  FindBugs and javac warnings cleanup
-   HBASE-1908  ROOT not reassigned if only one regionserver left
-   HBASE-1915  HLog.sync is called way too often, needs to be only called one
-               time per RPC
-   HBASE-1777  column length is not checked before saved to memstore
-   HBASE-1925  IllegalAccessError: Has not been initialized (getMaxSequenceId)
-   HBASE-1929  If hbase-default.xml is not in CP, zk session timeout is 10
-               seconds!
-   HBASE-1927  Scanners not closed properly in certain circumstances
-   HBASE-1934  NullPointerException in ClientScanner (Andrew Purtell via Stack)
-   HBASE-1946  Unhandled exception at regionserver (Dmitriy Lyfar via Stack)
-   HBASE-1682  IndexedRegion does not properly handle deletes
-               (Andrew McCall via Clint Morgan and Stack)
-   HBASE-1953  Overhaul of overview.html (html fixes, typos, consistency) -
-               no content changes (Lars Francke via Stack)
-   HBASE-1954  Transactional scans do not see newest put (Clint Morgan via
-               Stack)
-   HBASE-1919  code: HRS.delete seems to ignore exceptions it shouldnt
-   HBASE-1951  Stack overflow when calling HTable.checkAndPut() 
-               when deleting a lot of values
-   HBASE-1781  Weird behavior of WildcardColumnTracker.checkColumn(), 
-               looks like recursive loop
-   HBASE-1949  KeyValue expiration by Time-to-Live during major compaction is
-               broken (Gary Helmling via Stack)
-   HBASE-1957  Get-s can't set a Filter
-   HBASE-1928  ROOT and META tables stay in transition state (making the system
-               not usable) if the designated regionServer dies before the
-               assignment is complete (Yannis Pavlidis via Stack)
-   HBASE-1962  Bulk loading script makes regions incorrectly (loadtable.rb)
-   HBASE-1966  Apply the fix from site/ to remove the forrest dependency on
-               Java 5
-   HBASE-1967  [Transactional] client.TestTransactions.testPutPutScan fails
-               sometimes -- Temporary fix
-   HBASE-1841  If multiple of same key in an hfile and they span blocks, may
-               miss the earlier keys on a lookup
-               (Schubert Zhang via Stack)
-   HBASE-1977  Add ts and allow setting VERSIONS when scanning in shell
-   HBASE-1979  MurmurHash does not yield the same results as the reference C++
-               implementation when size % 4 >= 2 (Olivier Gillet via Andrew
-               Purtell)
-   HBASE-1999  When HTable goes away, close zk session in shutdown hook or
-               something...
-   HBASE-1997  zk tick time bounds maximum zk session time
-   HBASE-2003  [shell] deleteall ignores column if specified
-   HBASE-2018  Updates to .META. blocked under high MemStore load
-   HBASE-1994  Master will lose hlog entries while splitting if region has
-               empty oldlogfile.log (Lars George via Stack)
-   HBASE-2022  NPE in housekeeping kills RS
-   HBASE-2034  [Bulk load tools] loadtable.rb calls an undefined method
-               'descendingIterator' (Ching-Shen Chen via Stack)
-   HBASE-2033  Shell scan 'limit' is off by one
-   HBASE-2040  Fixes to group commit
-   HBASE-2047  Example command in the "Getting Started" 
-               documentation doesn't work (Benoit Sigoure via JD)
-   HBASE-2048  Small inconsistency in the "Example API Usage"
-               (Benoit Sigoure via JD)
-   HBASE-2044  HBASE-1822 removed not-deprecated APIs
-   HBASE-1960  Master should wait for DFS to come up when creating
-               hbase.version
-   HBASE-2054  memstore size 0 is >= than blocking -2.0g size
-   HBASE-2064  Cannot disable a table if at the same the Master is moving 
-               its regions around
-   HBASE-2065  Cannot disable a table if any of its region is opening 
-               at the same time
-   HBASE-2026  NPE in StoreScanner on compaction
-   HBASE-2072  fs.automatic.close isn't passed to FileSystem
-   HBASE-2075  Master requires HDFS superuser privileges due to waitOnSafeMode
-   HBASE-2077  NullPointerException with an open scanner that expired causing 
-               an immediate region server shutdown (Sam Pullara via JD)
-   HBASE-2078  Add JMX settings as commented out lines to hbase-env.sh
-               (Lars George via JD)
-   HBASE-2082  TableInputFormat is ignoring input scan's stop row setting
-               (Scott Wang via Andrew Purtell)
-   HBASE-2068  MetricsRate is missing "registry" parameter
-               (Lars George and Gary Helmling via Stack)
-   HBASE-2093  [stargate] RowSpec parse bug
-   HBASE-2114  Can't start HBase in trunk (JD and Kay Kay via JD)
-   HBASE-2115  ./hbase shell would not launch due to missing jruby dependency
-               (Kay Kay via JD)
-   HBASE-2101  KeyValueSortReducer collapses all values to last passed
-   HBASE-2119  Fix top-level NOTICES.txt file. Its stale.
-   HBASE-2120  [stargate] Unable to delete column families (Greg Lu via Andrew
-               Purtell)
-   HBASE-2123  Remove 'master' command-line option from PE
-   HBASE-2024  [stargate] Deletes not working as expected (Greg Lu via Andrew
-               Purtell)
-   HBASE-2122  [stargate] Initializing scanner column families doesn't work
-               (Greg Lu via Andrew Purtell)
-   HBASE-2124  Useless exception in HMaster on startup
-   HBASE-2127  randomWrite mode of PerformanceEvaluation benchmark program
-               writes only to a small range of keys (Kannan Muthukkaruppan
-               via Stack)
-   HBASE-2126  Fix build break - ec2 (Kay Kay via JD)
-   HBASE-2134  Ivy nit regarding checking with latest snapshots (Kay Kay via
-               Andrew Purtell)
-   HBASE-2138  unknown metrics type (Stack via JD)
-   HBASE-2137  javadoc warnings from 'javadoc' target (Kay Kay via Stack)
-   HBASE-2135  ant javadoc complains about missing classe (Kay Kay via Stack)
-   HBASE-2130  bin/* scripts - not to include lib/test/**/*.jar
-               (Kay Kay via Stack)
-   HBASE-2140  findbugs issues - 2 performance warnings as suggested by
-               findbugs (Kay Kay via Stack)
-   HBASE-2139  findbugs task in build.xml (Kay Kay via Stack)
-   HBASE-2147  run zookeeper in the same jvm as master during non-distributed
-               mode
-   HBASE-65    Thrift Server should have an option to bind to ip address
-               (Lars Francke via Stack)
-   HBASE-2146  RPC related metrics are missing in 0.20.3 since recent changes
-               (Gary Helmling via Lars George)
-   HBASE-2150  Deprecated HBC(Configuration) constructor doesn't call this()
-   HBASE-2154  Fix Client#next(int) javadoc
-   HBASE-2152  Add default jmxremote.{access|password} files into conf
-               (Lars George and Gary Helmling via Stack)
-   HBASE-2156  HBASE-2037 broke Scan - only a test for trunk
-   HBASE-2057  Cluster won't stop (Gary Helmling and JD via JD)
-   HBASE-2160  Can't put with ts in shell
-   HBASE-2144  Now does \x20 for spaces
-   HBASE-2163  ZK dependencies - explicitly add them until ZK artifacts are
-               published to mvn repository (Kay Kay via Stack)
-   HBASE-2164  Ivy nit - clean up configs (Kay Kay via Stack)
-   HBASE-2184  Calling HTable.getTableDescriptor().* on a full cluster takes
-               a long time (Cristian Ivascu via Stack)
-   HBASE-2193  Better readability of - hbase.regionserver.lease.period
-               (Kay Kay via Stack)
-   HBASE-2199  hbase.client.tableindexed.IndexSpecification, lines 72-73
-               should be reversed (Adrian Popescu via Stack)
-   HBASE-2224  Broken build: TestGetRowVersions.testGetRowMultipleVersions
-   HBASE-2129  ant tar build broken since switch to Ivy (Kay Kay via Stack)
-   HBASE-2226  HQuorumPeerTest doesnt run because it doesnt start with the
-               word Test
-   HBASE-2230  SingleColumnValueFilter has an ungaurded debug log message
-   HBASE-2258  The WhileMatchFilter doesn't delegate the call to filterRow()
-   HBASE-2259  StackOverflow in ExplicitColumnTracker when row has many columns
-   HBASE-2268  [stargate] Failed tests and DEBUG output is dumped to console
-               since move to Mavenized build 
-   HBASE-2276  Hbase Shell hcd() method is broken by the replication scope 
-               parameter (Alexey Kovyrin via Lars George)
-   HBASE-2244  META gets inconsistent in a number of crash scenarios
-   HBASE-2284  fsWriteLatency metric may be incorrectly reported 
-               (Kannan Muthukkaruppan via Stack)
-   HBASE-2063  For hfileoutputformat, on timeout/failure/kill clean up
-               half-written hfile (Ruslan Salyakhov via Stack)
-   HBASE-2281  Hbase shell does not work when started from the build dir
-               (Alexey Kovyrin via Stack)
-   HBASE-2293  CME in RegionManager#isMetaServer
-   HBASE-2261  The javadoc in WhileMatchFilter and it's tests in TestFilter
-               are not accurate/wrong
-   HBASE-2299  [EC2] mapreduce fixups for PE
-   HBASE-2295  Row locks may deadlock with themselves
-               (dhruba borthakur via Stack)
-   HBASE-2308  Fix the bin/rename_table.rb script, make it work again
-   HBASE-2307  hbase-2295 changed hregion size, testheapsize broke... fix it
-   HBASE-2269  PerformanceEvaluation "--nomapred" may assign duplicate random
-               seed over multiple testing threads (Tatsuya Kawano via Stack) 
-   HBASE-2287  TypeError in shell (Alexey Kovyrin via Stack)
-   HBASE-2023  Client sync block can cause 1 thread of a multi-threaded client
-               to block all others (Karthik Ranganathan via Stack)
-   HBASE-2305  Client port for ZK has no default (Suraj Varma via Stack)
-   HBASE-2323  filter.RegexStringComparator does not work with certain bytes
-               (Benoit Sigoure via Stack)
-   HBASE-2313  Nit-pick about hbase-2279 shell fixup, if you do get with
-               non-existant column family, throws lots of exceptions
-               (Alexey Kovyrin via Stack)
-   HBASE-2334  Slimming of Maven dependency tree - improves assembly build
-               speed (Paul Smith via Stack)
-   HBASE-2336  Fix build broken with HBASE-2334 (Lars Francke via Lars George)
-   HBASE-2283  row level atomicity (Kannan Muthukkaruppan via Stack)
-   HBASE-2355  Unsynchronized logWriters map is mutated from several threads in
-               HLog splitting (Todd Lipcon via Andrew Purtell)
-   HBASE-2358  Store doReconstructionLog will fail if oldlogfile.log is empty
-               and won't load region (Cosmin Lehene via Stack)
-   HBASE-2370  saveVersion.sh doesnt properly grab the git revision
-   HBASE-2373  Remove confusing log message of how "BaseScanner GET got
-               different address/startcode than SCAN"
-   HBASE-2361  WALEdit broke replication scope
-   HBASE-2365  Double-assignment around split
-   HBASE-2398  NPE in HLog.append when calling writer.getLength
-               (Kannan Muthukkaruppan via Stack)
-   HBASE-2410  spurious warnings from util.Sleeper
-   HBASE-2335  mapred package docs don't say zookeeper jar is a dependent
-   HBASE-2417  HCM.locateRootRegion fails hard on "Connection refused"
-   HBASE-2346  Usage of FilterList slows down scans
-   HBASE-2341  ZK settings for initLimit/syncLimit should not have been removed
-               from hbase-default.xml
-   HBASE-2439  HBase can get stuck if updates to META are blocked
-               (Kannan Muthukkaruppan via Stack)
-   HBASE-2451  .META. by-passes cache; BLOCKCACHE=>'false'
-   HBASE-2453  Revisit compaction policies after HBASE-2248 commit
-               (Jonathan Gray via Stack)
-   HBASE-2458  Client stuck in TreeMap,remove (Todd Lipcon via Stack)
-   HBASE-2460  add_table.rb deletes any tables for which the target table name
-               is a prefix (Todd Lipcon via Stack)
-   HBASE-2463  Various Bytes.* functions silently ignore invalid arguments
-               (Benoit Sigoure via Stack)
-   HBASE-2443  IPC client can throw NPE if socket creation fails
-               (Todd Lipcon via Stack)
-   HBASE-2447  LogSyncer.addToSyncQueue doesn't check if syncer is still
-               running before waiting (Todd Lipcon via Stack)
-   HBASE-2494  Does not apply new.name parameter to CopyTable
-               (Yoonsik Oh via Stack)
-   HBASE-2481  Client is not getting UnknownScannerExceptions; they are
-               being eaten (Jean-Daniel Cryans via Stack)
-   HBASE-2448  Scanner threads are interrupted without acquiring lock properly
-               (Todd Lipcon via Stack)
-   HBASE-2491  master.jsp uses absolute links to table.jsp. This broke when
-               master.jsp moved under webapps/master(Cristian Ivascu via Stack)
-   HBASE-2487  Uncaught exceptions in receiving IPC responses orphan clients
-               (Todd Lipcon via Stack)
-   HBASE-2497  ProcessServerShutdown throws NullPointerException for offline
-               regiond (Miklos Kurucz via Stack)
-   HBASE-2499  Race condition when disabling a table leaves regions in transition
-   HBASE-2489  Make the "Filesystem needs to be upgraded" error message more
-               useful (Benoit Sigoure via Stack)
-   HBASE-2482  regions in transition do not get reassigned by master when RS
-               crashes (Todd Lipcon via Stack)
-   HBASE-2513  hbase-2414 added bug where we'd tight-loop if no root available
-   HBASE-2503  PriorityQueue isn't thread safe, KeyValueHeap uses it that way
-   HBASE-2431  Master does not respect generation stamps, may result in meta
-               getting permanently offlined
-   HBASE-2515  ChangeTableState considers split&&offline regions as being served
-   HBASE-2544  Forward port branch 0.20 WAL to TRUNK
-   HBASE-2546  Specify default filesystem in both the new and old way (needed
-               if we are to run on 0.20 and 0.21 hadoop)
-   HBASE-1895  HConstants.MAX_ROW_LENGTH is incorrectly 64k, should be 32k      
-   HBASE-1968  Give clients access to the write buffer      
-   HBASE-2028  Add HTable.incrementColumnValue support to shell
-               (Lars George via Andrew Purtell)  
-   HBASE-2138  unknown metrics type
-   HBASE-2551  Forward port fixes that are in branch but not in trunk (part of
-               the merge of old 0.20 into TRUNK task) -- part 1.
-   HBASE-2474  Bug in HBASE-2248 - mixed version reads (not allowed by spec)
-   HBASE-2509  NPEs in various places, HRegion.get, HRS.close
-   HBASE-2344  InfoServer and hence HBase Master doesn't fully start if you
-               have HADOOP-6151 patch (Kannan Muthukkaruppan via Stack)
-   HBASE-2382  Don't rely on fs.getDefaultReplication() to roll HLogs
-               (Nicolas Spiegelberg via Stack)  
-   HBASE-2415  Disable META splitting in 0.20 (Todd Lipcon via Stack)
-   HBASE-2421  Put hangs for 10 retries on failed region servers
-   HBASE-2442  Log lease recovery catches IOException too widely
-               (Todd Lipcon via Stack)
-   HBASE-2457  RS gets stuck compacting region ad infinitum
-   HBASE-2562  bin/hbase doesn't work in-situ in maven
-               (Todd Lipcon via Stack)
-   HBASE-2449  Local HBase does not stop properly
-   HBASE-2539  Cannot start ZK before the rest in tests anymore
-   HBASE-2561  Scanning .META. while split in progress yields
-               IllegalArgumentException (Todd Lipcon via Stack)
-   HBASE-2572  hbase/bin/set_meta_block_caching.rb:72: can't convert
-               Java::JavaLang::String into String (TypeError) - little
-               issue with script
-   HBASE-2483  Some tests do not use ephemeral ports
-   HBASE-2573  client.HConnectionManager$TableServers logs non-printable
-               binary bytes (Benoît Sigoure via Stack)
-   HBASE-2576  TestHRegion.testDelete_mixed() failing on hudson
-   HBASE-2581  Bloom commit broke some tests... fix
-   HBASE-2582  TestTableSchemaModel not passing after commit of blooms
-   HBASE-2583  Make webapps work in distributed mode again and make webapps
-               deploy at / instead of at /webapps/master/master.jsp
-   HBASE-2590  Failed parse of branch element in saveVersion.sh
-   HBASE-2591  HBASE-2587 hardcoded the port that dfscluster runs on
-   HBASE-2519  StoreFileScanner.seek swallows IOEs (Todd Lipcon via Stack)
-   HBASE-2516  Ugly IOE when region is being closed; rather, should NSRE
-               (Daniel Ploeg via Stack)
-   HBASE-2589  TestHRegion.testWritesWhileScanning flaky on trunk
-               (Todd Lipcon via Stack)
-   HBASE-2590  Failed parse of branch element in saveVersion.sh
-               (Benoît Sigoure via Stack)
-   HBASE-2586  Move hbase webapps to a hbase-webapps dir (Todd Lipcon via
-               Andrew Purtell)
-   HBASE-2610  ValueFilter copy pasted javadoc from QualifierFilter
-   HBASE-2619  HBase shell 'alter' command cannot set table properties to False
-               (Christo Wilson via Stack)
-   HBASE-2621  Fix bad link to HFile documentation in javadoc
-               (Jeff Hammerbacher via Todd Lipcon)
-   HBASE-2371  Fix 'list' command in shell (Alexey Kovyrin via Todd Lipcon)
-   HBASE-2620  REST tests don't use ephemeral ports
-   HBASE-2635  ImmutableBytesWritable ignores offset in several cases
-   HBASE-2654  Add additional maven repository temporarily to fetch Guava
-   HBASE-2560  Fix IllegalArgumentException when manually splitting table
-               from web UI
-   HBASE-2657  TestTableResource is broken in trunk
-   HBASE-2662  TestScannerResource.testScannerResource broke in trunk
-   HBASE-2667  TestHLog.testSplit failing in trunk (Cosmin and Stack)
-   HBASE-2614  killing server in TestMasterTransitions causes NPEs and test deadlock
-   HBASE-2615  M/R on bulk imported tables
-   HBASE-2676  TestInfoServers should use ephemeral ports
-   HBASE-2616  TestHRegion.testWritesWhileGetting flaky on trunk
-   HBASE-2684  TestMasterWrongRS flaky in trunk
-   HBASE-2691  LeaseStillHeldException totally ignored by RS, wrongly named
-   HBASE-2703  ui not working in distributed context
-   HBASE-2710  Shell should use default terminal width when autodetection fails
-               (Kannan Muthukkaruppan via Todd Lipcon)
-   HBASE-2712  Cached region location that went stale won't recover if 
-               asking for first row
-   HBASE-2732  TestZooKeeper was broken, HBASE-2691 showed it
-   HBASE-2670  Provide atomicity for readers even when new insert has
-               same timestamp as current row.
-   HBASE-2733  Replacement of LATEST_TIMESTAMP with real timestamp was broken
-               by HBASE-2353.
-   HBASE-2734  TestFSErrors should catch all types of exceptions, not just RTE
-   HBASE-2738  TestTimeRangeMapRed updated now that we keep multiple cells with
-               same timestamp in MemStore
-   HBASE-2725  Shutdown hook management is gone in trunk; restore
-   HBASE-2740  NPE in ReadWriteConsistencyControl
-   HBASE-2752  Don't retry forever when waiting on too many store files
-   HBASE-2737  CME in ZKW introduced in HBASE-2694 (Karthik Ranganathan via JD)
-   HBASE-2756  MetaScanner.metaScan doesn't take configurations
-   HBASE-2656  HMaster.getRegionTableClosest should not return null for closed
-               regions
-   HBASE-2760  Fix MetaScanner TableNotFoundException when scanning starting at
-               the first row in a table.
-   HBASE-1025  Reconstruction log playback has no bounds on memory used
-   HBASE-2757  Fix flaky TestFromClientSide test by forcing region assignment
-   HBASE-2741  HBaseExecutorService needs to be multi-cluster friendly
-               (Karthik Ranganathan via JD)
-   HBASE-2769  Fix typo in warning message for HBaseConfiguration
-   HBASE-2768  Fix teardown order in TestFilter
-   HBASE-2763  Cross-port HADOOP-6833 IPC parameter leak bug
-   HBASE-2758  META region stuck in RS2ZK_REGION_OPENED state
-               (Karthik Ranganathan via jgray)
-   HBASE-2767  Fix reflection in tests that was made incompatible by HDFS-1209
-   HBASE-2617  Load balancer falls into pathological state if one server under
-               average - slop; endless churn
-   HBASE-2729  Interrupted or failed memstore flushes should not corrupt the
-               region
-   HBASE-2772  Scan doesn't recover from region server failure
-   HBASE-2775  Update of hadoop jar in HBASE-2771 broke TestMultiClusters
-   HBASE-2774  Spin in ReadWriteConsistencyControl eating CPU (load > 40) and
-               no progress running YCSB on clean cluster startup                     
-   HBASE-2785  TestScannerTimeout.test2772 is flaky
-   HBASE-2787  PE is confused about flushCommits
-   HBASE-2707  Can't recover from a dead ROOT server if any exceptions happens
-               during log splitting
-   HBASE-2501  Refactor StoreFile Code
-   HBASE-2806  DNS hiccups cause uncaught NPE in HServerAddress#getBindAddress
-               (Benoit Sigoure via Stack)
-   HBASE-2806  (small compile fix via jgray)
-   HBASE-2797  Another NPE in ReadWriteConsistencyControl
-   HBASE-2831  Fix '$bin' path duplication in setup scripts
-               (Nicolas Spiegelberg via Stack)
-   HBASE-2781  ZKW.createUnassignedRegion doesn't make sure existing znode is 
-               in the right state (Karthik Ranganathan via JD)
-   HBASE-2727  Splits writing one file only is untenable; need dir of recovered
-               edits ordered by sequenceid
-   HBASE-2843  Readd bloomfilter test over zealously removed by HBASE-2625 
-   HBASE-2846  Make rest server be same as thrift and avro servers
-   HBASE-1511  Pseudo distributed mode in LocalHBaseCluster
-               (Nicolas Spiegelberg via Stack)
-   HBASE-2851  Remove testDynamicBloom() unit test
-               (Nicolas Spiegelberg via Stack)
-   HBASE-2853  TestLoadIncrementalHFiles fails on TRUNK
-   HBASE-2854  broken tests on trunk         
-   HBASE-2859  Cleanup deprecated stuff in TestHLog (Alex Newman via Stack)
-   HBASE-2858  TestReplication.queueFailover fails half the time
-   HBASE-2863  HBASE-2553 removed an important edge case
-   HBASE-2866  Region permanently offlined
-   HBASE-2849  HBase clients cannot recover when their ZooKeeper session
-               becomes invalid (Benôit Sigoure via Stack)
-   HBASE-2876  HBase hbck: false positive error reported for parent regions
-               that are in offline state in meta after a split
-   HBASE-2815  not able to run the test suite in background because TestShell
-               gets suspended on tty output (Alexey Kovyrin via Stack)
-   HBASE-2852  Bloom filter NPE (pranav via jgray)
-   HBASE-2820  hbck throws an error if HBase root dir isn't on the default FS
-   HBASE-2884  TestHFileOutputFormat flaky when map tasks generate identical
-               data
-   HBASE-2890  Initialize RPC JMX metrics on startup (Gary Helmling via Stack)
-   HBASE-2755  Duplicate assignment of a region after region server recovery
-               (Kannan Muthukkaruppan via Stack)
-   HBASE-2892  Replication metrics aren't updated
-   HBASE-2461  Split doesn't handle IOExceptions when creating new region
-               reference files
-   HBASE-2871  Make "start|stop" commands symmetric for Master & Cluster
-               (Nicolas Spiegelberg via Stack)
-   HBASE-2901  HBASE-2461 broke build
-   HBASE-2823  Entire Row Deletes not stored in Row+Col Bloom
-               (Alexander Georgiev via Stack)
-   HBASE-2897  RowResultGenerator should handle NoSuchColumnFamilyException
-   HBASE-2905  NPE when inserting mass data via REST interface (Sandy Yin via
-               Andrew Purtell)
-   HBASE-2908  Wrong order of null-check [in TIF] (Libor Dener via Stack)
-   HBASE-2909  SoftValueSortedMap is broken, can generate NPEs
-   HBASE-2919  initTableReducerJob: Unused method parameter
-               (Libor Dener via Stack)
-   HBASE-2923  Deadlock between HRegion.internalFlushCache and close
-   HBASE-2927  BaseScanner gets stale HRegionInfo in some race cases
-   HBASE-2928  Fault in logic in BinaryPrefixComparator leads to
-               ArrayIndexOutOfBoundsException (pranav via jgray)
-   HBASE-2924  TestLogRolling doesn't use the right HLog half the time
-   HBASE-2931  Do not throw RuntimeExceptions in RPC/HbaseObjectWritable
-               code, ensure we log and rethrow as IOE
-               (Karthik Ranganathan via Stack)
-   HBASE-2915  Deadlock between HRegion.ICV and HRegion.close
-   HBASE-2920  HTable.checkAndPut/Delete doesn't handle null values
-   HBASE-2944  cannot alter bloomfilter setting for a column family from
-               hbase shell (Kannan via jgray)
-   HBASE-2948  bin/hbase shell broken (after hbase-2692)
-               (Sebastian Bauer via Stack)
-   HBASE-2954  Fix broken build caused by hbase-2692 commit
-   HBASE-2918  SequenceFileLogWriter doesnt make it clear if there is no
-               append by config or by missing lib/feature
-   HBASE-2799  "Append not enabled" warning should not show if hbase
-               root dir isn't on DFS
-   HBASE-2943  major_compact (and other admin commands) broken for .META.
-   HBASE-2643  Figure how to deal with eof splitting logs
-               (Nicolas Spiegelberg via Stack)
-   HBASE-2925  LRU of HConnectionManager.HBASE_INSTANCES breaks if
-               HBaseConfiguration is changed
-               (Robert Mahfoud via Stack)
-   HBASE-2964  Deadlock when RS tries to RPC to itself inside SplitTransaction
-   HBASE-1485  Wrong or indeterminate behavior when there are duplicate
-               versions of a column (pranav via jgray)
-   HBASE-2967  Failed split: IOE 'File is Corrupt!' -- sync length not being
-               written out to SequenceFile
-   HBASE-2969  missing sync in HTablePool.getTable()
-               (Guilherme Mauro Germoglio Barbosa via Stack)
-   HBASE-2973  NPE in LogCleaner
-   HBASE-2974  LoadBalancer ArithmeticException: / by zero
-   HBASE-2975  DFSClient names in master and RS should be unique
-   HBASE-2978  LoadBalancer IndexOutOfBoundsException
-   HBASE-2983  TestHLog unit test is mis-comparing an assertion
-               (Alex Newman via Todd Lipcon)
-   HBASE-2986  multi writable can npe causing client hang
-   HBASE-2979  Fix failing TestMultParrallel in hudson build
-   HBASE-2899  hfile.min.blocksize.size ignored/documentation wrong
-   HBASE-3006  Reading compressed HFile blocks causes way too many DFS RPC
-               calls severly impacting performance
-               (Kannan Muthukkaruppan via Stack)
-   HBASE-3010  Can't start/stop/start... cluster using new master
-   HBASE-3015  recovered.edits files not deleted if it only contain edits that
-               have already been flushed; hurts perf for all future opens of
-               the region
-   HBASE-3018  Bulk assignment on startup runs serially through the cluster
-               servers assigning in bulk to one at a time
-   HBASE-3023  NPE processing server crash in MetaReader. getServerUserRegions
-   HBASE-3024  NPE processing server crash in MetaEditor.addDaughter
-   HBASE-3026  Fixup of "missing" daughters on split is too aggressive
-   HBASE-3003  ClassSize constants dont use 'final'
-   HBASE-3002  Fix zookeepers.sh to work properly with strange JVM options
-   HBASE-3028  No basescanner means no GC'ing of split, offlined parent regions
-   HBASE-2989  [replication] RSM won't cleanup after locking if 0 peers
-   HBASE-2992  [replication] MalformedObjectNameException in ReplicationMetrics
-   HBASE-3037  When new master joins running cluster does "Received report from
-               unknown server -- telling it to STOP_REGIONSERVER.
-   HBASE-3039  Stuck in regionsInTransition because rebalance came in at same
-               time as a split
-   HBASE-3042  Use LO4J in SequenceFileLogReader
-               (Nicolas Spiegelberg via Stack)
-   HBASE-2995  Incorrect dependency on Log class from Jetty
-   HBASE-3038  WALReaderFSDataInputStream.getPos() fails if Filesize > MAX_INT
-               (Nicolas Spiegelberg via Stack)
-   HBASE-3047  If new master crashes, restart is messy
-   HBASE-3054  Remore TestEmptyMetaInfo; it doesn't make sense any more.
-   HBASE-3056  Fix ordering in ZKWatcher constructor to prevent weird race
-               condition
-   HBASE-3057  Race condition when closing regions that causes flakiness in
-               TestRestartCluster
-   HBASE-3058  Fix REST tests on trunk
-   HBASE-3068  IllegalStateException when new server comes online, is given
-               200 regions to open and 200th region gets timed out of regions
-               in transition
-   HBASE-3064  Long sleeping in HConnectionManager after thread is interrupted
-               (Bruno Dumon via Stack)
-   HBASE-2753  Remove sorted() methods from Result now that Gets are Scans
-   HBASE-3059  TestReadWriteConsistencyControl occasionally hangs (Hairong 
-               via Ryan)
-   HBASE-2906  [rest/stargate] URI decoding in RowResource
-   HBASE-3008  Memstore.updateColumnValue passes wrong flag to heapSizeChange
-               (Causes memstore size to go negative)
-   HBASE-3089  REST tests are broken locally and up in hudson
-   HBASE-3062  ZooKeeper KeeperException$ConnectionLossException is a
-               "recoverable" exception; we should retry a while on server
-               startup at least.
-   HBASE-3074  Zookeeper test failing on hudson
-   HBASE-3089  REST tests are broken locally and up in hudson
-   HBASE-3085  TestSchemaResource broken on TRUNK up on HUDSON
-   HBASE-3080  TestAdmin hanging on hudson
-   HBASE-3063  TestThriftServer failing in TRUNK
-   HBASE-3094  Fixes for miscellaneous broken tests
-   HBASE-3060  [replication] Reenable replication on trunk with unit tests
-   HBASE-3041  [replication] ReplicationSink shouldn't kill the whole RS when
-               it fails to replicate
-   HBASE-3044  [replication] ReplicationSource won't cleanup logs if there's
-               nothing to replicate
-   HBASE-3113  Don't reassign regions if cluster is being shutdown
-   HBASE-2933  Skip EOF Errors during Log Recovery
-               (Nicolas Spiegelberg via Stack)
-   HBASE-3081  Log Splitting & Replay: Distinguish between Network IOE and
-               Parsing IOE (Nicolas Spiegelberg via Stack)
-   HBASE-3098  TestMetaReaderEditor is broken in TRUNK; hangs
-   HBASE-3110  TestReplicationSink failing in TRUNK up on Hudson
-   HBASE-3101  bin assembly doesn't include -tests or -source jars
-   HBASE-3121  [rest] Do not perform cache control when returning results
-   HBASE-2669  HCM.shutdownHook causes data loss with
-               hbase.client.write.buffer != 0
-   HBASE-2985  HRegionServer.multi() no longer calls HRegion.put(List) when 
-               possible
-   HBASE-3031  CopyTable MR job named "Copy Table" in Driver
-   HBASE-2658  REST (stargate) TableRegionModel Regions need to be updated to
-               work w/ new region naming convention from HBASE-2531
-   HBASE-3140  Rest schema modification throw null pointer exception
-               (David Worms via Stack)
-   HBASE-2998  rolling-restart.sh shouldn't rely on zoo.cfg
-   HBASE-3145  importtsv fails when the line contains no data
-               (Kazuki Ohta via Todd Lipcon)
-   HBASE-2984  [shell] Altering a family shouldn't reset to default unchanged
-               attributes
-   HBASE-3143  Adding the tests' hbase-site.xml to the jar breaks some clients
-   HBASE-3139  Server shutdown processor stuck because meta not online
-   HBASE-3136  Stale reads from ZK can break the atomic CAS operations we
-               have in ZKAssign
-   HBASE-2753  Remove sorted() methods from Result now that Gets are Scans
-   HBASE-3147  Regions stuck in transition after rolling restart, perpetual
-               timeout handling but nothing happens
-   HBASE-3158  Bloom File Writes Broken if keySize is large
-               (Nicolas Spiegelberg via Stack)
-   HBASE-3155  HFile.appendMetaBlock() uses wrong comparator
-               (Nicolas Spiegelberg via Stack)
-   HBASE-3012  TOF doesn't take zk client port for remote clusters
-   HBASE-3159  Double play of OpenedRegionHandler for a single region
-               and assorted fixes around this + TestRollingRestart added
-   HBASE-3160  Use more intelligent priorities for PriorityCompactionQueue
-               (Nicolas Spiegelberg via Stack)
-   HBASE-3172  Reverse order of AssignmentManager and MetaNodeTracker in
-               ZooKeeperWatcher
-   HBASE-2406  Define semantics of cell timestamps/versions
-   HBASE-3175  Commit of HBASE-3160 broke TestPriorityCompactionQueue up on
-               hudson (nicolas via jgray)
-   HBASE-3163  If we timeout PENDING_CLOSE and send another closeRegion RPC,
-               need to handle NSRE from RS (comes as a RemoteException)
-   HBASE-3164  Handle case where we open META, ROOT has been closed but
-               znode location not deleted yet, and try to update META
-               location in ROOT
-   HBASE-2006  Documentation of hbase-site.xml parameters
-   HBASE-2672  README.txt should contain basic information like how to run
-               or build HBase
-   HBASE-3179  Enable ReplicationLogsCleaner only if replication is,
-               and fix its test
-   HBASE-3185  User-triggered compactions are triggering splits!
-   HBASE-1932  Encourage use of 'lzo' compression... add the wiki page to
-               getting started
-   HBASE-3151  NPE when trying to read regioninfo from .META.
-   HBASE-3191  FilterList with MUST_PASS_ONE and SCVF isn't working
-               (Stefan Seelmann via Stack)
-   HBASE-2471  Splitting logs, we'll make an output file though the
-               region no longer exists
-   HBASE-3095  Client needs to reconnect if it expires its zk session
-   HBASE-2935  Refactor "Corrupt Data" Tests in TestHLogSplit
-               (Alex Newman via Stack)
-   HBASE-3202  Closing a region, if we get a ConnectException, handle
-               it rather than abort
-   HBASE-3198  Log rolling archives files prematurely
-   HBASE-3203  We can get an order to open a region while shutting down
-               and it'll hold up regionserver shutdown
-   HBASE-3204  Reenable deferred log flush
-   HBASE-3195  [rest] Fix TestTransform breakage on Hudson
-   HBASE-3205  TableRecordReaderImpl.restart NPEs when first next is restarted
-   HBASE-3208  HLog.findMemstoresWithEditsOlderThan needs to look for edits
-               that are equal to too
-   HBASE-3141  Master RPC server needs to be started before an RS can check in
-   HBASE-3112  Enable and disable of table needs a bit of loving in new master
-   HBASE-3207  If we get IOException when closing a region, we should still
-               remove it from online regions and complete the close in ZK
-   HBASE-3199  large response handling: some fixups and cleanups
-   HBASE-3212  More testing of enable/disable uncovered base condition not in
-               place; i.e. that only one enable/disable runs at a time
-   HBASE-2898  MultiPut makes proper error handling impossible and leads to 
-   	       corrupted data
-   HBASE-3213  If do abort of backup master will get NPE instead of graceful
-               abort
-   HBASE-3214  TestMasterFailover.testMasterFailoverWithMockedRITOnDeadRS is
-               failing (Gary via jgray)
-   HBASE-3216  Move HBaseFsck from client to util
-   HBASE-3219  Split parents are reassigned on restart and on disable/enable
-   HBASE-3222  Regionserver region listing in UI is no longer ordered
-   HBASE-3221  Race between splitting and disabling
-   HBASE-3224  NPE in KeyValue$KVComparator.compare when compacting
-   HBASE-3233  Fix Long Running Stats
-   HBASE-3232  Fix KeyOnlyFilter + Add Value Length (Nicolas via Ryan)
-   HBASE-3235  Intermittent incrementColumnValue failure in TestHRegion 
-   	       (Gary via Ryan)
-   HBASE-3241  check to see if we exceeded hbase.regionserver.maxlogs limit is
-               incorrect (Kannan Muthukkaruppan via JD)
-   HBASE-3239  Handle null regions to flush in HLog.cleanOldLogs (Kannan
-               Muthukkaruppan via JD)
-   HBASE-3237  Split request accepted -- BUT CURRENTLY A NOOP
-   HBASE-3252  TestZooKeeperNodeTracker sometimes fails due to a race condition
-               in test notification (Gary Helmling via Andrew Purtell)
-   HBASE-3253  Thrift's missing from all the repositories in pom.xml
-   HBASE-3258  EOF when version file is empty
-   HBASE-3259  Can't kill the region servers when they wait on the master or
-               the cluster state znode
-   HBASE-3249  Typing 'help shutdown' in the shell shouldn't shutdown the cluster
-   HBASE-3262  TestHMasterRPCException uses non-ephemeral port for master
-   HBASE-3272  Remove no longer used options
-   HBASE-3269  HBase table truncate semantics seems broken as "disable" table
-               is now async by default
-   HBASE-3275  [rest] No gzip/deflate content encoding support
-   HBASE-3261  NPE out of HRS.run at startup when clock is out of sync
-   HBASE-3277  HBase Shell zk_dump command broken
-   HBASE-3267  close_region shell command breaks region
-   HBASE-3265  Regionservers waiting for ROOT while Master waiting for RegionServers
-   HBASE-3263  Stack overflow in AssignmentManager
-   HBASE-3234  hdfs-724 "breaks" TestHBaseTestingUtility multiClusters
-   HBASE-3286  Master passes IP and not hostname back to region server
-   HBASE-3297  If rows in .META. with no HRegionInfo cell, then hbck fails read
-               of .META.
-   HBASE-3294  WARN org.apache.hadoop.hbase.regionserver.Store: Not in set
-               (double-remove?) org.apache.hadoop.hbase.regionserver.StoreScanner@76607d3d
-   HBASE-3299  If failed open, we don't output the IOE
-   HBASE-3291  If split happens while regionserver is going down, we can stick open.
-   HBASE-3295  Dropping a 1k+ regions table likely ends in a client socket timeout
-               and it's very confusing
-   HBASE-3301  Treat java.net.SocketTimeoutException same as ConnectException
-               assigning/unassigning regions
-   HBASE-3296  Newly created table ends up disabled instead of assigned
-   HBASE-3304  Get spurious master fails during bootup
-   HBASE-3298  Regionserver can close during a split causing double assignment
-   HBASE-3309  " Not running balancer because dead regionserver processing" is a lie
-   HBASE-3314  [shell] 'move' is broken
-   HBASE-3315  Add debug output for when balancer makes bad balance
-   HBASE-3278  AssertionError in LoadBalancer
-   HBASE-3318  Split rollback leaves parent with writesEnabled=false
-   HBASE-3334  Refresh our hadoop jar because of HDFS-1520
-   HBASE-3347  Can't truncate/disable table that has rows in .META. that have empty
-               info:regioninfo column
-   HBASE-3321  Replication.join shouldn't clear the logs znode
-   HBASE-3352  enabling a non-existent table from shell prints no error
-   HBASE-3353  table.jsp doesn't handle entries in META without server info
-   HBASE-3351  ReplicationZookeeper goes to ZK every time a znode is modified
-   HBASE-3326  Replication state's znode should be created else it 
-               defaults to false
-   HBASE-3355  Stopping a stopped cluster leaks an HMaster
-   HBASE-3356  Add more checks in replication if RS is stopped
-   HBASE-3358  Recovered replication queue wait on themselves when terminating
-   HBASE-3359  LogRoller not added as a WAL listener when replication is enabled
-   HBASE-3360  ReplicationLogCleaner is enabled by default in 0.90 -- causes NPE
-   HBASE-3363  ReplicationSink should batch delete
-   HBASE-3365  EOFE contacting crashed RS causes Master abort
-   HBASE-3362  If .META. offline between OPENING and OPENED, then wrong server
-               location in .META. is possible
-   HBASE-3368  Split message can come in before region opened message; results
-               in 'Region has been PENDING_CLOSE for too long' cycle
-   HBASE-3366  WALObservers should be notified before the lock
-   HBASE-3367  Failed log split not retried
-   HBASE-3370  ReplicationSource.openReader fails to locate HLogs when they
-               aren't split yet
-   HBASE-3371  Race in TestReplication can make it fail
-   HBASE-3323  OOME in master splitting logs
-   HBASE-3374  Our jruby jar has *GPL jars in it; fix
-   HBASE-3343  Server not shutting down after losing log lease
-   HBASE-3381  Interrupt of a region open comes across as a successful open
-   HBASE-3386  NPE in TableRecordReaderImpl.restart
-   HBASE-3388  NPE processRegionInTransition(AssignmentManager.java:264)
-               doing rolling-restart.sh
-   HBASE-3383  [0.90RC1] bin/hbase script displays "no such file" warning on
-               target/cached_classpath.txt
-   HBASE-3344  Master aborts after RPC to server that was shutting down
-   HBASE-3408  AssignmentManager NullPointerException
-   HBASE-3402  Web UI shows two META regions
-   HBASE-3409  Failed server shutdown processing when retrying hlog split
-   HBASE-3412  HLogSplitter should handle missing HLogs
-   HBASE-3420  Handling a big rebalance, we can queue multiple instances of
-               a Close event; messes up state
-   HBASE-3423  hbase-env.sh over-rides HBASE_OPTS incorrectly (Ted Dunning via
-               Andrew Purtell)
-   HBASE-3407  hbck should pause between fixing and re-checking state
-   HBASE-3401  Region IPC operations should be high priority
-   HBASE-3430  hbase-daemon.sh should clean up PID files on process stop
-
-
-  IMPROVEMENTS
-   HBASE-1760  Cleanup TODOs in HTable
-   HBASE-1759  Ability to specify scanner caching on a per-scan basis
-               (Ken Weiner via jgray)
-   HBASE-1763  Put writeToWAL methods do not have proper getter/setter names
-               (second commit to fix compile error in hregion)
-   HBASE-1770  HTable.setWriteBufferSize does not flush the writeBuffer when
-               its size is set to a value lower than its current size.
-               (Mathias via jgray)
-   HBASE-1771  PE sequentialWrite is 7x slower because of
-               MemStoreFlusher#checkStoreFileCount
-   HBASE-1758  Extract interface out of HTable (Vaibhav Puranik via Andrew
-               Purtell)
-   HBASE-1776  Make rowcounter enum public
-   HBASE-1276  [testing] Upgrade to JUnit 4.x and use @BeforeClass
-               annotations to optimize tests
-   HBASE-1800  Too many ZK connections
-   HBASE-1819  Update to 0.20.1 hadoop and zk 3.2.1
-   HBASE-1820  Update jruby from 1.2 to 1.3.1
-   HBASE-1687  bin/hbase script doesn't allow for different memory settings
-               for each daemon type
-   HBASE-1823  Ability for Scanners to bypass the block cache
-   HBASE-1827  Add disabling block cache scanner flag to the shell
-   HBASE-1835  Add more delete tests
-   HBASE-1574  Client and server APIs to do batch deletes
-   HBASE-1833  hfile.main fixes
-   HBASE-1684  Backup (Export/Import) contrib tool for 0.20
-   HBASE-1860  Change HTablePool#createHTable from private to protected
-   HBASE-48    Bulk load tools
-   HBASE-1855  HMaster web application doesn't show the region end key in the
-               table detail page (Andrei Dragomir via Stack)
-   HBASE-1870  Bytes.toFloat(byte[], int) is marked private
-   HBASE-1874  Client Scanner mechanism that is used for HbaseAdmin methods
-               (listTables, tableExists), is very slow if the client is far
-               away from the HBase cluster (Andrei Dragomir via Stack)
-   HBASE-1879  ReadOnly transactions generate WAL activity (Clint Morgan via
-               Stack)
-   HBASE-1875  Compression test utility
-   HBASE-1832  Faster enable/disable/delete
-   HBASE-1481  Add fast row key only scanning
-   HBASE-1506  [performance] Make splits faster
-   HBASE-1722  Add support for exporting HBase metrics via JMX
-               (Gary Helming via Stack)
-   HBASE-1899  Use scanner caching in shell count
-   HBASE-1887  Update hbase trunk to latests on hadoop 0.21 branch so we can
-               all test sync/append
-   HBASE-1902  Let PerformanceEvaluation support setting tableName and compress
-               algorithm (Schubert Zhang via Stack)
-   HBASE-1885  Simplify use of IndexedTable outside Java API
-               (Kevin Patterson via Stack)
-   HBASE-1903  Enable DEBUG by default
-   HBASE-1907  Version all client writables
-   HBASE-1914  hlog should be able to set replication level for the log
-               indendently from any other files
-   HBASE-1537  Intra-row scanning
-   HBASE-1918  Don't do DNS resolving in .META. scanner for each row
-   HBASE-1756  Refactor HLog (changing package first)
-   HBASE-1926  Remove unused xmlenc jar from trunk
-   HBASE-1936  HLog group commit
-   HBASE-1921  When the Master's session times out and there's only one,
-               cluster is wedged
-   HBASE-1942  Update hadoop jars in trunk; update to r831142
-   HBASE-1943  Remove AgileJSON; unused
-   HBASE-1944  Add a "deferred log flush" attribute to HTD
-   HBASE-1945  Remove META and ROOT memcache size bandaid 
-   HBASE-1947  If HBase starts/stops often in less than 24 hours, 
-               you end up with lots of store files
-   HBASE-1829  Make use of start/stop row in TableInputFormat
-               (Lars George via Stack)
-   HBASE-1867  Tool to regenerate an hbase table from the data files
-   HBASE-1904  Add tutorial for installing HBase on Windows using Cygwin as
-               a test and development environment (Wim Van Leuven via Stack)
-   HBASE-1963  Output to multiple tables from Hadoop MR without use of HTable
-               (Kevin Peterson via Andrew Purtell)
-   HBASE-1975  SingleColumnValueFilter: Add ability to match the value of
-               previous versions of the specified column
-               (Jeremiah Jacquet via Stack)
-   HBASE-1971  Unit test the full WAL replay cycle
-   HBASE-1970  Export does one version only; make it configurable how many
-               it does
-   HBASE-1987  The Put object has no simple read methods for checking what
-               has already been added (Ryan Smith via Stack)
-   HBASE-1985  change HTable.delete(ArrayList) to HTable.delete(List)
-   HBASE-1958  Remove "# TODO: PUT BACK !!! "${HADOOP_HOME}"/bin/hadoop
-               dfsadmin -safemode wait"
-   HBASE-2011  Add zktop like output to HBase's master UI (Lars George via
-               Andrew Purtell)
-   HBASE-1995  Add configurable max value size check (Lars George via Andrew
-               Purtell)
-   HBASE-2017  Set configurable max value size check to 10MB
-   HBASE-2029  Reduce shell exception dump on console
-               (Lars George and J-D via Stack)
-   HBASE-2027  HConnectionManager.HBASE_INSTANCES leaks TableServers
-               (Dave Latham via Stack)
-   HBASE-2013  Add useful helpers to HBaseTestingUtility.java (Lars George
-               via J-D)
-   HBASE-2031  When starting HQuorumPeer, try to match on more than 1 address
-   HBASE-2043  Shell's scan broken
-   HBASE-2044  HBASE-1822 removed not-deprecated APIs
-   HBASE-2049  Cleanup HLog binary log output (Dave Latham via Stack)
-   HBASE-2052  Make hbase more 'live' when comes to noticing table creation,
-               splits, etc., for 0.20.3
-   HBASE-2059  Break out WAL reader and writer impl from HLog
-   HBASE-2060  Missing closing tag in mapreduce package info (Lars George via
-               Andrew Purtell)
-   HBASE-2028  Add HTable.incrementColumnValue support to shell (Lars George
-               via Andrew Purtell)
-   HBASE-2062  Metrics documentation outdated (Lars George via JD)
-   HBASE-2045  Update trunk and branch zk to just-release 3.2.2.
-   HBASE-2074  Improvements to the hadoop-config script (Bassam Tabbara via
-               Stack)
-   HBASE-2076  Many javadoc warnings
-   HBASE-2068  MetricsRate is missing "registry" parameter (Lars George via JD)
-   HBASE-2025  0.20.2 accessed from older client throws 
-               UndeclaredThrowableException; frustrates rolling upgrade
-   HBASE-2081  Set the retries higher in shell since client pause is lower
-   HBASE-1956  Export HDFS read and write latency as a metric
-   HBASE-2036  Use Configuration instead of HBaseConfiguration (Enis Soztutar
-               via Stack)
-   HBASE-2085  StringBuffer -> StringBuilder - conversion of references as
-               necessary (Kay Kay via Stack)
-   HBASE-2052  Upper bound of outstanding WALs can be overrun
-   HBASE-2086  Job(configuration,String) deprecated (Kay Kay via Stack)
-   HBASE-1996  Configure scanner buffer in bytes instead of number of rows
-               (Erik Rozendaal and Dave Latham via Stack)
-   HBASE-2090  findbugs issues (Kay Kay via Stack)
-   HBASE-2089  HBaseConfiguration() ctor. deprecated (Kay Kay via Stack)
-   HBASE-2035  Binary values are formatted wrong in shell
-   HBASE-2095  TIF shuold support more confs for the scanner (Bassam Tabbara
-               via Andrew Purtell)
-   HBASE-2107  Upgrading Lucene 2.2 to Lucene 3.0.0 (Kay Kay via Stack)
-   HBASE-2111  Move to ivy broke our being able to run in-place; i.e.
-               ./bin/start-hbase.sh in a checkout
-   HBASE-2136  Forward-port the old mapred package
-   HBASE-2133  Increase default number of client handlers
-   HBASE-2109  status 'simple' should show total requests per second, also 
-   	       the requests/sec is wrong as is
-   HBASE-2151  Remove onelab and include generated thrift classes in javadoc
-               (Lars Francke via Stack)
-   HBASE-2149  hbase.regionserver.global.memstore.lowerLimit is too low
-   HBASE-2157  LATEST_TIMESTAMP not replaced by current timestamp in KeyValue
-               (bulk loading)
-   HBASE-2153  Publish generated HTML documentation for Thrift on the website
-               (Lars Francke via Stack)
-   HBASE-1373  Update Thrift to use compact/framed protocol (Lars Francke via
-               Stack)
-   HBASE-2172  Add constructor to Put for row key and timestamp
-               (Lars Francke via Stack)
-   HBASE-2178  Hooks for replication
-   HBASE-2180  Bad random read performance from synchronizing
-               hfile.fddatainputstream
-   HBASE-2194  HTable - put(Put) , put(List<Put) code duplication (Kay Kay via
-               Stack)
-   HBASE-2185  Add html version of default hbase-site.xml (Kay Kay via Stack)
-   HBASE-2198  SingleColumnValueFilter should be able to find the column value
-               even when it's not specifically added as input on the sc
-               (Ferdy via Stack)
-   HBASE-2189  HCM trashes meta cache even when not needed
-   HBASE-2190  HRS should report to master when HMsg are available
-   HBASE-2209  Support of List [ ] in HBaseOutputWritable for serialization
-               (Kay Kay via Stack)
-   HBASE-2177  Add timestamping to gc logging option
-   HBASE-2066  Perf: parallelize puts
-   HBASE-2222  Improve log "Trying to contact region server Some server for
-               region, row 'ip_info_100,,1263329969690', but failed after
-               11 attempts".
-   HBASE-2220  Add a binary comparator that only compares up to the length
-               of the supplied byte array (Bruno Dumon via Stack)
-   HBASE-2211  Add a new Filter that checks a single column value but does not
-               emit it. (Ferdy via Stack)
-   HBASE-2241  Change balancer sloppyness from 0.1 to 0.3
-   HBASE-2250  typo in the maven pom
-   HBASE-2254  Improvements to the Maven POMs (Lars Francke via Stack)
-   HBASE-2262  ZKW.ensureExists should check for existence
-   HBASE-2264  Adjust the contrib apps to the Maven project layout 
-               (Lars Francke via Lars George)
-   HBASE-2245  Unnecessary call to syncWal(region); in HRegionServer 
-               (Benoit Sigoure via JD)
-   HBASE-2246  Add a getConfiguration method to HTableInterface
-               (Benoit Sigoure via JD)
-   HBASE-2282  More directories should be ignored when using git for
-               development (Alexey Kovyrin via Stack)
-   HBASE-2267  More improvements to the Maven build (Lars Francke via Stack)
-   HBASE-2174  Stop from resolving HRegionServer addresses to names using DNS
-               on every heartbeat (Karthik Ranganathan via Stack) 
-   HBASE-2302  Optimize M-R by bulk excluding regions - less InputSplit-s to
-               avoid traffic on region servers when performing M-R on a subset
-               of the table (Kay Kay via Stack) 
-   HBASE-2309  Add apache releases to pom (list of ) repositories
-               (Kay Kay via Stack)
-   HBASE-2279  Hbase Shell does not have any tests (Alexey Kovyrin via Stack)
-   HBASE-2314  [shell] Support for getting counters (Alexey Kovyrin via Stack)
-   HBASE-2324  Refactoring of TableRecordReader (mapred / mapreduce) for reuse
-               outside the scope of InputSplit / RecordReader (Kay Kay via
-               Stack)
-   HBASE-2313  Nit-pick about hbase-2279 shell fixup, if you do get with
-               non-existant column family, throws lots of exceptions
-               (Alexey Kovyrin via Stack)
-   HBASE-2331  [shell] count command needs a way to specify scan caching
-               (Alexey Kovyrin via Stack)
-   HBASE-2364  Ignore Deprecations during build (Paul Smith via Stack)
-   HBASE-2338  log recovery: deleted items may be resurrected
-               (Aravind Menon via Stack)
-   HBASE-2359  WALEdit doesn't implement HeapSize
-               (Kannan Muthukkaruppan via Stack)
-   HBASE-2348  [stargate] Stargate needs both JAR and WAR artifacts (Paul Smith
-               via Andrew Purtell)
-   HBASE-2389  HTable - delete / put unnecessary sync (Kay Kay via Stack)
-   HBASE-2385  Debug Message "Received report from unknown server" should be
-               INFO or WARN
-   HBASE-2374  TableInputFormat - Configurable parameter to add column families
-               (Kay Kay via Stack)
-   HBASE-2388  Give a very explicit message when we figure a big GC pause
-   HBASE-2270  Improve how we handle recursive calls in ExplicitColumnTracker 
-               and WildcardColumnTracker
-   HBASE-2402  [stargate] set maxVersions on gets
-   HBASE-2087  The wait on compaction because "Too many store files" 
-               holds up all flushing
-   HBASE-2252  Mapping a very big table kills region servers
-   HBASE-2412  [stargate] PerformanceEvaluation
-   HBASE-2419  Remove from RS logs the fat NotServingRegionException stack
-   HBASE-2286  [Transactional Contrib] Correctly handle or avoid cases where 
-               writes occur in same millisecond (Clint Morgan via J-D)
-   HBASE-2360  Make sure we have all the hadoop fixes in our our copy of its rpc
-               (Todd Lipcon via Stack)
-   HBASE-2423  Update 'Getting Started' for 0.20.4 including making
-               "important configurations more visiable"
-   HBASE-2435  HTablePool - method to release resources after use
-               (Kay Kay via Stack)
-   HBASE-1933  Upload Hbase jars to a public maven repository
-               (Kay Kay via Stack)
-   HBASE-2440  Master UI should check against known bad JDK versions and
-               warn the user (Todd Lipcon via Stack)
-   HBASE-2430  Disable frag display in trunk, let HBASE-2165 replace it
-   HBASE-1892  [performance] make hbase splits run faster
-   HBASE-2456  deleteChangedReaderObserver spitting warnings after HBASE-2248
-   HBASE-2452  Fix our Maven dependencies (Lars Francke via Stack)
-   HBASE-2490  Improve the javadoc of the client API for HTable
-               (Benoit Sigoure via Stack)
-   HBASE-2488  Master should warn more loudly about unexpected events
-               (Todd Lipcon via Stack)
-   HBASE-2393  ThriftServer instantiates a new HTable per request
-               (Bogdan DRAGU via Stack)
-   HBASE-2496  Less ArrayList churn on the scan path
-   HBASE-2414  Enhance test suite to be able to specify distributed scenarios
-   HBASE-2518  Kill all the trailing whitespaces in the code base
-               (Benoit Sigoure via Stack)
-   HBASE-2528  ServerManager.ServerMonitor isn't daemonized
-   HBASE-2537  Change ordering of maven repos listed in pom.xml to have
-               ibiblio first
-   HBASE-2540  Make QueryMatcher.MatchCode public (Clint Morgan via Stack)
-   HBASE-2524  Unresponsive region server, potential deadlock
-               (Todd Lipcon via Stack)
-   HBASE-2547  [mvn] assembly:assembly does not include hbase-X.X.X-test.jar
-               (Paul Smith via Stack)
-   HBASE-2037  The core elements of HBASE-2037: refactoring flushing, and adding 
-   	           configurability in which HRegion subclass is instantiated
-   HBASE-2248  Provide new non-copy mechanism to assure atomic reads in get and scan
-   HBASE-2523  Add check for licenses before rolling an RC, add to
-               how-to-release doc. and check for inlining a tool that does
-               this for us
-   HBASE-2234  HBASE-2234  Roll Hlog if any datanode in the write pipeline dies
-               (Nicolas Spiegelberg via Stack)
-   HBASE-2340  Add end-to-end test of sync/flush (Forward-port from branch)
-   HBASE-2555  Get rid of HColumnDescriptor.MAPFILE_INDEX_INTERVAL
-   HBASE-2520  Cleanup arrays vs Lists of scanners (Todd Lipcon via Stack)
-   HBASE-2551  Forward port fixes that are in branch but not in trunk (part
-               of the merge of old 0.20 into TRUNK task)
-   HBASE-2466  Improving filter API to allow for modification of keyvalue list 
-   	           by filter (Juhani Connolly via Ryan)
-   HBASE-2566  Remove 'lib' dir; it only has libthrift and that is being
-               pulled from http://people.apache.org/~rawson/repo/....
-   HBASE-2534  Recursive deletes and misc improvements to ZKW
-   HBASE-2577  Remove 'core' maven module; move core up a level
-   HBASE-2587  Coral where tests write data when running and make sure clean
-               target removes all written
-   HBASE-2580  Make the hlog file names unique
-   HBASE-2594  Narrow pattern used finding unit tests to run -- make it same
-               was we had in 0.20
-   HBASE-2538  Work on repository order in pom (adding fbmirror to top,
-               ibiblio on bottom)
-   HBASE-2613  Remove the code around MSG_CALL_SERVER_STARTUP
-   HBASE-2599  BaseScanner says "Current assignment of X is not valid" over
-               and over for same region
-   HBASE-2630  HFile should use toStringBinary in various places
-   HBASE-2632  Shell should autodetect terminal width
-   HBASE-2636  Upgrade Jetty to 6.1.24
-   HBASE-2437  Refactor HLog splitLog (Cosmin Lehene via Stack)
-   HBASE-2638  Speed up REST tests
-   HBASE-2653  Remove unused DynamicBloomFilter (especially as its tests are
-               failing hudson on occasion)
-   HBASE-2651  Allow alternate column separators to be specified for ImportTsv
-   HBASE-2661  Add test case for row atomicity guarantee
-   HBASE-2578  Add ability for tests to override server-side timestamp 
-   	           setting (currentTimeMillis) (Daniel Ploeg via Ryan Rawson)
-   HBASE-2558  Our javadoc overview -- "Getting Started", requirements, etc. --
-               is not carried across by mvn javadoc:javadoc target
-   HBASE-2618  Don't inherit from HConstants (Benoit Sigoure via Stack)
-   HBASE-2208  TableServers # processBatchOfRows - converts from List to [ ]
-               - Expensive copy 
-   HBASE-2694  Move RS to Master region open/close messaging into ZooKeeper
-   HBASE-2716  Make HBase's maven artifacts configurable with -D
-               (Alex Newman via Stack)
-   HBASE-2718  Update .gitignore for trunk after removal of contribs
-               (Lars Francke via Stack)
-   HBASE-2468  Improvements to prewarm META cache on clients
-               (Mingjie Lai via Stack)
-   HBASE-2353  Batch puts should sync HLog as few times as possible
-   HBASE-2726  Region Server should never abort without an informative log
-               message
-   HBASE-2724  Update to new release of Guava library
-   HBASE-2735  Make HBASE-2694 replication-friendly
-   HBASE-2683  Make it obvious in the documentation that ZooKeeper needs 
-               permanent storage
-   HBASE-2764  Force all Chore tasks to have a thread name
-   HBASE-2762  Add warning to master if running without append enabled
-   HBASE-2779  Build a -src tgz to sit beside our -bin tgz when you call
-               maven assembly:assembly
-   HBASE-2783  Quick edit of 'Getting Started' for development release 0.89.x
-   HBASE-2345  Add Test in 0.20 to Check for proper HDFS-200 append/sync support
-               (Nicolas Spiegelberg via JD)
-   HBASE-2786  TestHLog.testSplit hangs (Nicolas Spiegelberg via JD)
-   HBASE-2790  Purge apache-forrest from TRUNK
-   HBASE-2793  Add ability to extract a specified list of versions of a column 
-               in a single roundtrip (Kannan via Ryan)
-   HBASE-2828  HTable unnecessarily coupled with HMaster
-               (Nicolas Spiegelberg via Stack)
-   HBASE-2265  HFile and Memstore should maintain minimum and maximum timestamps
-               (Pranav via Ryan)
-   HBASE-2836  Speed mvn site building by removing generation of useless reports
-   HBASE-2808  Document the implementation of replication
-   HBASE-2517  During reads when passed the specified time range, seek to
-               next column (Pranav via jgray)
-   HBASE-2835  Update hadoop jar to head of branch-0.20-append to catch three
-               added patches
-   HBASE-2840  Remove the final remnants of the old Get code - the query matchers 
-               and other helper classes
-   HBASE-2845  Small edit of shell main help page cutting down some on white
-               space and text
-   HBASE-2850  slf4j version needs to be reconciled in pom: thrift wants 1.5.x
-               and hadoop/avro 1.4.x
-   HBASE-2865  Cleanup of LRU logging; its hard to read, uses custom MB'maker,
-               repeats info, too many numbers after the point, etc.
-   HBASE-2869  Regularize how we log sequenceids -- sometimes its myseqid,
-               other times its sequence id, etc.
-   HBASE-2873  Minor clean up in basescanner; fix a log and make deletes of
-               region processing run in order
-   HBASE-2830  NotServingRegionException shouldn't log a stack trace
-   HBASE-2874  Unnecessary double-synchronization in ZooKeeperWrapper
-               (Benoît Sigoure via Stack)
-   HBASE-2879  Offer ZK CLI outside of HBase Shell
-               (Nicolas Spiegelberg via Stack)
-   HBASE-2886  Add search box to site (Alex Baranau via Stack)
-   HBASE-2792  Create a better way to chain log cleaners
-               (Chongxin Li via Stack)
-   HBASE-2844  Capping the number of regions (Pranav Khaitan via Stack)
-   HBASE-2870  Add Backup CLI Option to HMaster (Nicolas Spiegelberg via Stack)
-   HBASE-2868  Do some small cleanups in org.apache.hadoop.hbase.regionserver.wal
-               (Alex Newman via Stack)
-   HBASE-1660  HBASE-1660 script to handle rolling restarts
-               (Nicolas Spiegelberg via Stack)
-   HBASE-1517  Implement inexpensive seek operations in HFile (Pranav via Ryan)
-   HBASE-2903  ColumnPrefix filtering (Pranav via Ryan)
-   HBASE-2904  Smart seeking using filters (Pranav via Ryan)
-   HBASE-2922  HLog preparation and cleanup are done under the updateLock, 
-               major slowdown
-   HBASE-1845  MultiGet, MultiDelete, and MultiPut - batched to the 
-               appropriate region servers (Marc Limotte via Ryan)
-   HBASE-2867  Have master show its address using hostname rather than IP
-   HBASE-2696  ZooKeeper cleanup and refactor
-   HBASE-2695  HMaster cleanup and refactor
-   HBASE-2692  Open daughters immediately on parent's regionserver
-   HBASE-2405  Close, split, open of regions in RegionServer are run by a single
-               thread only.
-   HBASE-1676  load balancing on a large cluster doesn't work very well
-   HBASE-2953  Edit of hbase-default.xml removing stale configs.
-   HBASE-2857  HBaseAdmin.tableExists() should not require a full meta scan
-   HBASE-2962  Add missing methods to HTableInterface (and HTable)
-               (Lars Francke via Stack)
-   HBASE-2942  Custom filters should not require registration in 
-               HBaseObjectWritable (Gary Helmling via Andrew Purtell)
-   HBASE-2976  Running HFile tool passing fully-qualified filename I get
-               'IllegalArgumentException: Wrong FS'
-   HBASE-2977  Refactor master command line to a new class
-   HBASE-2980  Refactor region server command line to a new class
-   HBASE-2988  Support alternate compression for major compactions
-   HBASE-2941  port HADOOP-6713 - threading scalability for RPC reads - to HBase
-   HBASE-2782  QOS for META table access
-   HBASE-3017  More log pruning
-   HBASE-3022  Change format of enum messages in o.a.h.h.executor package
-   HBASE-3001  Ship dependency jars to the cluster for all jobs
-   HBASE-3033  [replication] ReplicationSink.replicateEntries improvements
-   HBASE-3040  BlockIndex readIndex too slowly in heavy write scenario
-               (Andy Chen via Stack)
-   HBASE-3030  The return code of many filesystem operations are not checked
-               (dhruba borthakur via Stack)
-   HBASE-2646  Compaction requests should be prioritized to prevent blocking
-               (Jeff Whiting via Stack)
-   HBASE-3019  Make bulk assignment on cluster startup run faster
-   HBASE-3066  We don't put the port for hregionserver up into znode since
-               new master
-   HBASE-2825  Scans respect row locks
-   HBASE-3070  Add to hbaseadmin means of shutting down a regionserver
-   HBASE-2996  Fix and clean up Maven (Lars Francke via Stack)
-   HBASE-2917  Reseek directly to next row (Pranav Khaitan)
-   HBASE-2907  [rest/stargate] Improve error response when trying to create a
-               scanner on a nonexistant table
-   HBASE-3092  Replace deprecated "new HBaseConfiguration(...)" calls
-               (Lars Francke)
-   HBASE-2968  No standard family filter provided (Andrey Stepachev)
-   HBASE-3088  TestAvroServer and TestThriftServer broken because use same
-               table in all tests and tests enable/disable/delete
-   HBASE-3097  Merge in hbase-1200 doc on bloomfilters into hbase book
-   HBASE-2700  Test of: Handle master failover for regions in transition
-   HBASE-3115  HBaseClient wastes 1 TCP packet per RPC
-   HBASE-3076  Allow to disable automatic shipping of dependency jars
-               for mapreduce jobs (Bruno Dumon)
-   HBASE-3128  On assign, if ConnectException, reassign another server
-   HBASE-3133  Only log compaction requests when a request is actually added
-               to the queue
-   HBASE-3132  Print TimestampRange and BloomFilters in HFile pretty print
-   HBASE-2514  RegionServer should refuse to be assigned a region that use 
-   	       LZO when LZO isn't available
-   HBASE-3082  For ICV gets, first look in MemStore before reading StoreFiles
-               (prakash via jgray)
-   HBASE-3167  HBase Export: Add ability to export specific Column Family;
-               Turn Block Cache off during export; improve usage doc
-               (Kannan Muthukkaruppan via Stack)
-   HBASE-3102  Enhance HBase rMetrics for Long-running Stats
-               (Nicolas Spiegelberg via Stack)
-   HBASE-3169  NPE when master joins running cluster if a RIT references
-               a RS no longer present
-   HBASE-3174  Add ability for Get operations to enable/disable use of block
-               caching
-   HBASE-3162  Add TimeRange support into Increment to optimize for counters
-               that are partitioned on time
-   HBASE-2253  Show Block cache hit ratio for requests where
-               cacheBlocks=true
-   HBASE-3126  Force use of 'mv -f' when moving aside hbase logfiles
-   HBASE-3176  Remove compile warnings in HRegionServer
-   HBASE-3154  HBase RPC should support timeout (Hairong via jgray)
-   HBASE-3184  Xmx setting in pom to use for tests/surefire does not appear
-               to work
-   HBASE-3120  [rest] Content transcoding
-   HBASE-3181  Review, document, and fix up Regions-in-Transition timeout
-               logic
-   HBASE-3180  Review periodic master logging, especially ServerManager once
-               a minute
-   HBASE-3189  Stagger Major Compactions (Nicolas Spiegelberg via Stack)
-   HBASE-2564  [rest] Tests use deprecated foundation
-   HBASE-2819  hbck should have the ability to repair basic problems
-   HBASE-3200  Make is so can disable DEBUG logging on HConnectionImplemenation
-               without losing important messages
-   HBASE-3201  Add accounting of empty regioninfo_qualifier rows in meta to
-               hbasefsck.
-   HBASE-3048  unify code for major/minor compactions (Amit via jgray)
-   HBASE-3083  Major compaction check should use new timestamp meta
-               information in HFiles (rather than dfs timestamp) along with
-               TTL to allow major even if single file
-   HBASE-3194  HBase should run on both secure and vanilla versions of Hadoop 0.20
-               (Gary Helmling via Stack)
-   HBASE-3209  HBASE-3209 : New Compaction Algorithm
-               (Nicolas Spiegelberg via Stack)
-   HBASE-3168  Sanity date and time check when a region server joins the
-               cluster (Jeff Whiting and jgray)
-   HBASE-3090  Don't include hbase-default in conf/ assembly
-   HBASE-3161  Provide option for Stargate to only serve GET requests
-               (Bennett Neale via Stack)
-   HBASE-3218  Shell help cleanup/cosmetics/edit
-   HBASE-3079  Shell displaying uninformative exceptions
-   HBASE-3227  Edit of log messages before branching.
-   HBASE-3230  Refresh our hadoop jar and update zookeeper to
-               just-released 3.3.2
-   HBASE-3231  Update to zookeeper 3.3.2.
-   HBASE-3273  Set the ZK default timeout to 3 minutes
-   HBASE-3279  [rest] Filter for gzip content encoding that wraps both input
-               and output side.
-   HBASE-3223  Get VersionInfo for Running HBase Process
-               (Nicolas Spiegelberg via Stack)
-   HBASE-3303  Lower hbase.regionserver.handler.count from 25 back to 10
-   HBASE-2467  Concurrent flushers in HLog sync using HDFS-895
-   HBASE-3349  Pass HBase configuration to HttpServer
-   HBASE-3372  HRS shouldn't print a full stack for ServerNotRunningException
-   HBASE-3392  Update backport of InputSampler to reflect MAPREDUCE-1820
-   HBASE-3405  Allow HBaseRpcMetrics to register custom interface methods
-
-
-  NEW FEATURES
-   HBASE-1961  HBase EC2 scripts
-   HBASE-1982  [EC2] Handle potentially large and uneven instance startup times
-   HBASE-2009  [EC2] Support mapreduce
-   HBASE-2012  [EC2] LZO support
-   HBASE-2019  [EC2] remember credentials if not configured
-   HBASE-2080  [EC2] Support multivolume local instance storage
-   HBASE-2083  [EC2] HDFS DataNode no longer required on master
-   HBASE-2084  [EC2] JAVA_HOME handling broken
-   HBASE-2100  [EC2] Adjust fs.file-max
-   HBASE-2103  [EC2] pull version from build
-   HBASE-2131  [EC2] Mount data volumes as xfs, noatime
-   HBASE-1901  "General" partitioner for "hbase-48" bulk (behind the api, write
-               hfiles direct) uploader
-   HBASE-1433  Update hbase build to match core, use ivy, publish jars to maven
-               repo, etc. (Kay Kay via Stack)
-   HBASE-2129  Simple Master/Slave replication
-   HBASE-2070  Collect HLogs and delete them after a period of time
-   HBASE-2221  MR to copy a table
-   HBASE-2257  [stargate] multiuser mode
-   HBASE-2263  [stargate] multiuser mode: authenticator for zookeeper
-   HBASE-2273  [stargate] export metrics via Hadoop metrics, JMX, and zookeeper
-   HBASE-2274  [stargate] filter support: JSON descriptors
-   HBASE-2316  Need an ability to run shell tests w/o invoking junit
-               (Alexey Kovyrin via Stack)
-   HBASE-2327  [EC2] Allocate elastic IP addresses for ZK and master nodes
-   HBASE-2319  [stargate] multiuser mode: request shaping
-   HBASE-2403  [stargate] client HTable interface to REST connector
-   HBASE-2438  Addition of a Column Pagination Filter (Paul Kist via Stack)
-   HBASE-2473  Add to admin create table start and end key params and
-               desired number of regions
-   HBASE-2529  Make OldLogsCleaner easier to extend
-   HBASE-2527  Add the ability to easily extend some HLog actions
-   HBASE-2559  Set hbase.hregion.majorcompaction to 0 to disable
-   HBASE-1200  Add bloomfilters (Nicolas Spiegelberg via Stack)
-   HBASE-2588  Add easier way to ship HBase dependencies to MR cluster within Job
-   HBASE-1923  Bulk incremental load into an existing table
-   HBASE-2579  Add atomic checkAndDelete support (Michael Dalton via Stack)
-   HBASE-2400  new connector for Avro RPC access to HBase cluster
-               (Jeff Hammerbacher via Ryan Rawson)
-   HBASE-7     Provide a HBase checker and repair tool similar to fsck
-               (dhruba borthakur via Stack)
-   HBASE-2223  Handle 10min+ network partitions between clusters
-   HBASE-2862  Name DFSClient for Improved Debugging
-               (Nicolas Spiegelberg via Stack)
-   HBASE-2838  Replication metrics
-   HBASE-3000  Add "hbase classpath" command to dump classpath
-   HBASE-3043  'hbase-daemon.sh stop regionserver' should kill compactions
-               that are in progress
-               (Nicolas Spiegelberg via Stack)
-   HBASE-3073  New APIs for Result, faster implementation for some calls
-   HBASE-3053  Add ability to have multiple Masters LocalHBaseCluster for
-               test writing
-   HBASE-2201  JRuby shell for replication
-   HBASE-2946  Increment multiple columns in a row at once
-   HBASE-3013  Tool to verify data in two clusters
-   HBASE-2896  Retain assignment information between cluster
-               shutdown/startup
-   HBASE-3211  Key (Index) Only Fetches
-
-
-  OPTIMIZATIONS
-   HBASE-410   [testing] Speed up the test suite
-   HBASE-2041  Change WAL default configuration values
-   HBASE-2997  Performance fixes - profiler driven
-   HBASE-2450  For single row reads of specific columns, seek to the 
-   	       first column in HFiles rather than start of row
-	       (Pranav via Ryan, some Ryan)
-
-
-Release 0.20.0 - Tue Sep  8 12:53:05 PDT 2009
-  INCOMPATIBLE CHANGES
-   HBASE-1147  Modify the scripts to use Zookeeper
-   HBASE-1144  Store the ROOT region location in Zookeeper
-               (Nitay Joffe via Stack)
-   HBASE-1146  Replace the HRS leases with Zookeeper
-   HBASE-61    Create an HBase-specific MapFile implementation
-               (Ryan Rawson via Stack)
-   HBASE-1145  Ensure that there is only 1 Master with Zookeeper (Removes
-               hbase.master) (Nitay Joffe via Stack)
-   HBASE-1289  Remove "hbase.fully.distributed" option and update docs
-               (Nitay Joffe via Stack)
-   HBASE-1234  Change HBase StoreKey format
-   HBASE-1348  Move 0.20.0 targeted TRUNK to 0.20.0 hadoop
-               (Ryan Rawson and Stack)
-   HBASE-1342  Add to filesystem info needed to rebuild .META.
-   HBASE-1361  Disable bloom filters
-   HBASE-1367  Get rid of Thrift exception 'NotFound'
-   HBASE-1381  Remove onelab and bloom filters files from hbase
-   HBASE-1411  Remove HLogEdit.
-   HBASE-1357  If one sets the hbase.master to 0.0.0.0 non local regionservers
-               can't find the master
-   HBASE-1304  New client server implementation of how gets and puts are
-               handled (holstad, jgray, rawson, stack)
-   HBASE-1582  Translate ColumnValueFilter and RowFilterSet to the new
-               Filter interface (Clint Morgan and Stack)
-   HBASE-1599  Fix TestFilterSet, broken up on hudson (Jon Gray via Stack)
-   HBASE-1799  deprecate o.a.h.h.rest in favor of stargate
-
-  BUG FIXES
-   HBASE-1140  "ant clean test" fails (Nitay Joffe via Stack)
-   HBASE-1129  Master won't go down; stuck joined on rootScanner
-   HBASE-1136  HashFunction inadvertently destroys some randomness
-               (Jonathan Ellis via Stack)
-   HBASE-1138  Test that readers opened after a sync can see all data up to the
-               sync (temporary until HADOOP-4379 is resolved)
-   HBASE-1121  Cluster confused about where -ROOT- is
-   HBASE-1148  Always flush HLog on root or meta region updates
-   HBASE-1181  src/saveVersion.sh bails on non-standard Bourne shells
-               (e.g. dash) (K M via Jean-Daniel Cryans)
-   HBASE-1175  HBA administrative tools do not work when specifying region
-               name (Jonathan Gray via Andrew Purtell)
-   HBASE-1190  TableInputFormatBase with row filters scan too far (Dave
-               Latham via Andrew Purtell)
-   HBASE-1198  OOME in IPC server does not trigger abort behavior
-   HBASE-1209  Make port displayed the same as is used in URL for RegionServer
-               table in UI (Lars George via Stack)
-   HBASE-1217  add new compression and hfile blocksize to HColumnDescriptor
-   HBASE-859   HStoreKey needs a reworking
-   HBASE-1211  NPE in retries exhausted exception
-   HBASE-1233  Transactional fixes: Overly conservative scan read-set,
-               potential CME (Clint Morgan via Stack)
-   HBASE-1239  in the REST interface does not correctly clear the character
-               buffer each iteration-1185  wrong request/sec in the gui
-               reporting wrong (Brian Beggs via Stack)
-   HBASE-1245  hfile meta block handling bugs (Ryan Rawson via Stack)
-   HBASE-1238  Under upload, region servers are unable
-               to compact when loaded with hundreds of regions
-   HBASE-1247  checkAndSave doesn't Write Ahead Log
-   HBASE-1243  oldlogfile.dat is screwed, so is it's region
-   HBASE-1169  When a shutdown is requested, stop scanning META regions
-               immediately
-   HBASE-1251  HConnectionManager.getConnection(HBaseConfiguration) returns 
-               same HConnection for different HBaseConfigurations 
-   HBASE-1157, HBASE-1156 If we do not take start code as a part of region
-               server recovery, we could inadvertantly try to reassign regions
-               assigned to a restarted server with a different start code;
-               Improve lease handling
-   HBASE-1267  binary keys broken in trunk (again) -- part 2 and 3
-               (Ryan Rawson via Stack)
-   HBASE-1268  ZooKeeper config parsing can break HBase startup
-               (Nitay Joffe via Stack)
-   HBASE-1270  Fix TestInfoServers (Nitay Joffe via Stack)
-   HBASE-1277  HStoreKey: Wrong comparator logic (Evgeny Ryabitskiy)
-   HBASE-1275  TestTable.testCreateTable broken (Ryan Rawson via Stack)
-   HBASE-1274  TestMergeTable is broken in Hudson (Nitay Joffe via Stack)
-   HBASE-1283  thrift's package descrpition needs to update for start/stop
-               procedure (Rong-en Fan via Stack)
-   HBASE-1284  drop table drops all disabled tables
-   HBASE-1290  table.jsp either 500s out or doesnt list the regions (Ryan
-               Rawson via Andrew Purtell)
-   HBASE-1293  hfile doesn't recycle decompressors (Ryan Rawson via Andrew
-               Purtell)
-   HBASE-1150  HMsg carries safemode flag; remove (Nitay Joffe via Stack)
-   HBASE-1232  zookeeper client wont reconnect if there is a problem (Nitay
-               Joffe via Andrew Purtell)
-   HBASE-1303  Secondary index configuration prevents HBase from starting
-               (Ken Weiner via Stack)
-   HBASE-1298  master.jsp & table.jsp do not URI Encode table or region
-               names in links (Lars George via Stack)
-   HBASE-1310  Off by one error in Bytes.vintToBytes
-   HBASE-1202  getRow does not always work when specifying number of versions
-   HBASE-1324  hbase-1234 broke testget2 unit test (and broke the build)
-   HBASE-1321  hbase-1234 broke TestCompaction; fix and reenable
-   HBASE-1330  binary keys broken on trunk (Ryan Rawson via Stack)
-   HBASE-1332  regionserver carrying .META. starts sucking all cpu, drives load
-               up - infinite loop? (Ryan Rawson via Stack)
-   HBASE-1334  .META. region running into hfile errors (Ryan Rawson via Stack)
-   HBASE-1338  lost use of compaction.dir; we were compacting into live store
-               subdirectory
-   HBASE-1058  Prevent runaway compactions
-   HBASE-1292  php thrift's getRow() would throw an exception if the row does
-               not exist (Rong-en Fan via Stack)
-   HBASE-1340  Fix new javadoc warnings (Evgeny Ryabitskiy via Stack)
-   HBASE-1287  Partitioner class not used in TableMapReduceUtil
-               .initTableReduceJob() (Lars George and Billy Pearson via Stack)
-   HBASE-1320  hbase-1234 broke filter tests
-   HBASE-1355  [performance] Cache family maxversions; we were calculating on
-               each access
-   HBASE-1358  Bug in reading from Memcache method (read only from snapshot)
-               (Evgeny Ryabitskiy via Stack)
-   HBASE-1322  hbase-1234 broke TestAtomicIncrement; fix and reenable
-               (Evgeny Ryabitskiy and Ryan Rawson via Stack)
-   HBASE-1347  HTable.incrementColumnValue does not take negative 'amount'
-               (Evgeny Ryabitskiy via Stack)
-   HBASE-1365  Typo in TableInputFormatBase.setInputColums (Jon Gray via Stack)
-   HBASE-1279  Fix the way hostnames and IPs are handled
-   HBASE-1368  HBASE-1279 broke the build
-   HBASE-1264  Wrong return values of comparators for ColumnValueFilter
-               (Thomas Schneider via Andrew Purtell)
-   HBASE-1374  NPE out of ZooKeeperWrapper.loadZooKeeperConfig
-   HBASE-1336  Splitting up the compare of family+column into 2 different
-               compare 
-   HBASE-1377  RS address is null in master web UI
-   HBASE-1344  WARN IllegalStateException: Cannot set a region as open if it
-               has not been pending
-   HBASE-1386  NPE in housekeeping
-   HBASE-1396  Remove unused sequencefile and mapfile config. from
-               hbase-default.xml
-   HBASE-1398  TableOperation doesnt format keys for meta scan properly
-               (Ryan Rawson via Stack)
-   HBASE-1399  Can't drop tables since HBASE-1398 (Ryan Rawson via Andrew
-               Purtell)
-   HBASE-1311  ZooKeeperWrapper: Failed to set watcher on ZNode /hbase/master
-               (Nitay Joffe via Stack)
-   HBASE-1391  NPE in TableInputFormatBase$TableRecordReader.restart if zoo.cfg
-               is wrong or missing on task trackers
-   HBASE-1323  hbase-1234 broke TestThriftServer; fix and reenable
-   HBASE-1425  ColumnValueFilter and WhileMatchFilter fixes on trunk
-               (Clint Morgan via Stack)
-   HBASE-1431  NPE in HTable.checkAndSave when row doesn't exist (Guilherme
-               Mauro Germoglio Barbosa via Andrew Purtell)
-   HBASE-1421  Processing a regionserver message -- OPEN, CLOSE, SPLIT, etc. --
-               and if we're carrying more than one message in payload, if
-               exception, all messages that follow are dropped on floor
-   HBASE-1434  Duplicate property in hbase-default.xml (Lars George via Andrew
-               Purtell)
-   HBASE-1435  HRegionServer is using wrong info bind address from
-               hbase-site.xml (Lars George via Stack)
-   HBASE-1438  HBASE-1421 broke the build (#602 up on hudson)
-   HBASE-1440  master won't go down because joined on a rootscanner that is
-               waiting for ever
-   HBASE-1441  NPE in ProcessRegionStatusChange#getMetaRegion
-   HBASE-1162  CME in Master in RegionManager.applyActions
-   HBASE-1010  IOE on regionserver shutdown because hadn't opened an HLog
-   HBASE-1415  Stuck on memcache flush
-   HBASE-1257  base64 encoded values are not contained in quotes during the
-               HBase REST JSON serialization (Brian Beggs via Stack)
-   HBASE-1436  Killing regionserver can make corrupted hfile
-   HBASE-1272  Unreadable log messages -- "... to the only server
-               localhost_1237525439599_56094" <- You'd have to be perverse
-               to recognize that as a hostname, startcode, and port
-   HBASE-1395  InfoServers no longer put up a UI
-   HBASE-1302  When a new master comes up, regionservers should continue with
-               their region assignments from the last master
-   HBASE-1457  Taking down ROOT/META regionserver can result in cluster
-               becoming in-operational (Ryan Rawson via Stack)
-   HBASE-1471  During cluster shutdown, deleting zookeeper regionserver nodes
-               causes exceptions
-   HBASE-1483  HLog split loses track of edits (Clint Morgan via Stack)
-   HBASE-1484  commit log split writes files with newest edits first
-               (since hbase-1430); should be other way round
-   HBASE-1493  New TableMapReduceUtil methods should be static (Billy Pearson
-               via Andrew Purtell)
-   HBASE-1486  BLOCKCACHE always on even when disabled (Lars George via Stack)
-   HBASE-1491  ZooKeeper errors: "Client has seen zxid 0xe our last zxid
-               is 0xd"
-   HBASE-1499  Fix javadoc warnings after HBASE-1304 commit (Lars George via
-               Stack)
-   HBASE-1504  Remove left-over debug from 1304 commit
-   HBASE-1518  Delete Trackers using compareRow, should just use raw
-               binary comparator (Jon Gray via Stack)
-   HBASE-1500  KeyValue$KeyComparator array overrun
-   HBASE-1513  Compactions too slow
-   HBASE-1516  Investigate if StoreScanner will not return the next row if 
-               earlied-out of previous row (Jon Gray)
-   HBASE-1520  StoreFileScanner catches and ignore IOExceptions from HFile
-   HBASE-1522  We delete splits before their time occasionally
-   HBASE-1523  NPE in BaseScanner
-   HBASE-1525  HTable.incrementColumnValue hangs()
-   HBASE-1526  mapreduce fixup
-   HBASE-1503  hbase-1304 dropped updating list of store files on flush
-               (jgray via stack)
-   HBASE-1480  compaction file not cleaned up after a crash/OOME server
-               (Evgeny Ryabitskiy via Stack)
-   HBASE-1529  familyMap not invalidated when a Result is (re)read as a
-               Writable
-   HBASE-1528  Ensure scanners work across memcache snapshot
-   HBASE-1447  Take last version of the hbase-1249 design doc. and make
-               documentation out of it
-   HBASE-1206  Scanner spins when there are concurrent inserts to column family
-   HBASE-1536  Controlled crash of regionserver not hosting meta/root leaves
-               master in spinning state, regions not reassigned
-   HBASE-1543  Unnecessary toString during scanning costs us some CPU
-   HBASE-1544  Cleanup HTable (Jonathan Gray via Stack)
-   HBASE-1488  After 1304 goes in, fix and reenable test of thrift, mr indexer,
-               and merge tool
-   HBASE-1531  Change new Get to use new filter API
-   HBASE-1549  in zookeeper.sh, use localhost instead of 127.0.0.1
-   HBASE-1534  Got ZooKeeper event, state: Disconnected on HRS and then NPE on
-               reinit
-   HBASE-1387  Before release verify all object sizes using Ryans' instrumented
-               JVM trick (Erik Holstad via Stack)
-   HBASE-1545  atomicIncrements creating new values with Long.MAX_VALUE
-   HBASE-1547  atomicIncrement doesnt increase hregion.memcacheSize
-   HBASE-1553  ClassSize missing in trunk
-   HBASE-1561  HTable Mismatch between javadoc and what it actually does
-   HBASE-1558  deletes use 'HConstants.LATEST_TIMESTAMP' but no one translates
-               that into 'now'
-   HBASE-1508  Shell "close_region" reveals a Master<>HRS problem, regions are
-               not reassigned
-   HBASE-1568  Client doesnt consult old row filter interface in
-               filterSaysStop() - could result in NPE or excessive scanning
-   HBASE-1564  in UI make host addresses all look the same -- not IP sometimes
-               and host at others
-   HBASE-1567  cant serialize new filters
-   HBASE-1585  More binary key/value log output cleanup
-               (Lars George via Stack)
-   HBASE-1563  incrementColumnValue does not write to WAL (Jon Gray via Stack)
-   HBASE-1569  rare race condition can take down a regionserver
-   HBASE-1450  Scripts passed to hbase shell do not have shell context set up
-               for them
-   HBASE-1566  using Scan(startRow,stopRow) will cause you to iterate the
-               entire table
-   HBASE-1560  TIF can't seem to find one region
-   HBASE-1580  Store scanner does not consult filter.filterRow at end of scan
-               (Clint Morgan via Stack)
-   HBASE-1437  broken links in hbase.org
-   HBASE-1582  Translate ColumnValueFilter and RowFilterSet to the new Filter
-               interface
-   HBASE-1594  Fix scan addcolumns after hbase-1385 commit (broke hudson build)
-   HBASE-1595  hadoop-default.xml and zoo.cfg in hbase jar
-   HBASE-1602  HRegionServer won't go down since we added in new LruBlockCache
-   HBASE-1608  TestCachedBlockQueue failing on some jvms (Jon Gray via Stack)
-   HBASE-1615  HBASE-1597 introduced a bug when compacting after a split
-               (Jon Gray via Stack)
-   HBASE-1616  Unit test of compacting referenced StoreFiles (Jon Gray via
-               Stack)
-   HBASE-1618  Investigate further into the MemStoreFlusher StoreFile limit
-               (Jon Gray via Stack)
-   HBASE-1625  Adding check to Put.add(KeyValue), to see that it has the same
-               row as when instantiated (Erik Holstad via Stack)
-   HBASE-1629  HRS unable to contact master
-   HBASE-1633  Can't delete in TRUNK shell; makes it hard doing admin repairs
-   HBASE-1641  Stargate build.xml causes error in Eclipse
-   HBASE-1627  TableInputFormatBase#nextKeyValue catches the wrong exception
-               (Doğacan Güney via Stack)
-   HBASE-1644  Result.row is cached in getRow; this breaks MapReduce
-               (Doğacan Güney via Stack)
-   HBASE-1639  clean checkout with empty hbase-site.xml, zk won't start
-   HBASE-1646  Scan-s can't set a Filter (Doğacan Güney via Stack)
-   HBASE-1649  ValueFilter may not reset its internal state
-               (Doğacan Güney via Stack)
-   HBASE-1651  client is broken, it requests ROOT region location from ZK too
-               much
-   HBASE-1650  HBASE-1551 broke the ability to manage non-regionserver
-               start-up/shut down. ie: you cant start/stop thrift on a cluster
-               anymore
-   HBASE-1658  Remove UI refresh -- its annoying
-   HBASE-1659  merge tool doesnt take binary regions with \x escape format
-   HBASE-1663  Request compaction only once instead of every time 500ms each
-               time we cycle the hstore.getStorefilesCount() >
-               this.blockingStoreFilesNumber loop
-   HBASE-1058  Disable 1058 on catalog tables
-   HBASE-1583  Start/Stop of large cluster untenable
-   HBASE-1668  hbase-1609 broke TestHRegion.testScanSplitOnRegion unit test
-   HBASE-1669  need dynamic extensibility of HBaseRPC code maps and interface
-               lists (Clint Morgan via Stack)
-   HBASE-1359  After a large truncating table HBase becomes unresponsive
-   HBASE-1215  0.19.0 -> 0.20.0 migration (hfile, HCD changes, HSK changes)
-   HBASE-1689  Fix javadoc warnings and add overview on client classes to
-               client package
-   HBASE-1680  FilterList writable only works for HBaseObjectWritable
-               defined types (Clint Morgan via Stack and Jon Gray)
-   HBASE-1607  transactions / indexing fixes: trx deletes not handeled, index
-               scan can't specify stopRow (Clint Morgan via Stack)
-   HBASE-1693  NPE close_region ".META." in shell
-   HBASE-1706  META row with missing HRI breaks UI
-   HBASE-1709  Thrift getRowWithColumns doesn't accept column-family only
-               (Mathias Lehmann via Stack)
-   HBASE-1692  Web UI is extremely slow / freezes up if you have many tables
-   HBASE-1686  major compaction can create empty store files, causing AIOOB
-               when trying to read
-   HBASE-1705  Thrift server: deletes in mutateRow/s don't delete
-               (Tim Sell and Ryan Rawson via Stack)
-   HBASE-1703  ICVs across /during a flush can cause multiple keys with the 
-               same TS (bad)
-   HBASE-1671  HBASE-1609 broke scanners riding across splits
-   HBASE-1717  Put on client-side uses passed-in byte[]s rather than always
-               using copies
-   HBASE-1647  Filter#filterRow is called too often, filters rows it shouldn't
-               have (Doğacan Güney via Ryan Rawson and Stack)
-   HBASE-1718  Reuse of KeyValue during log replay could cause the wrong
-               data to be used
-   HBASE-1573  Holes in master state change; updated startcode and server
-               go into .META. but catalog scanner just got old values (redux)
-   HBASE-1534  Got ZooKeeper event, state: Disconnected on HRS and then NPE
-               on reinit
-   HBASE-1725  Old TableMap interface's definitions are not generic enough
-               (Doğacan Güney via Stack)
-   HBASE-1732  Flag to disable regionserver restart
-   HBASE-1727  HTD and HCD versions need update
-   HBASE-1604  HBaseClient.getConnection() may return a broken connection
-               without throwing an exception (Eugene Kirpichov via Stack)
-   HBASE-1737  Regions unbalanced when adding new node
-   HBASE-1739  hbase-1683 broke splitting; only split three logs no matter
-               what N was
-   HBASE-1745  [tools] Tool to kick region out of inTransistion
-   HBASE-1757  REST server runs out of fds
-   HBASE-1768  REST server has upper limit of 5k PUT
-   HBASE-1766  Add advanced features to HFile.main() to be able to analyze
-               storefile problems
-   HBASE-1761  getclosest doesn't understand delete family; manifests as
-               "HRegionInfo was null or empty in .META" A.K.A the BS problem
-   HBASE-1738  Scanner doesnt reset when a snapshot is created, could miss
-               new updates into the 'kvset' (active part)
-   HBASE-1767  test zookeeper broken in trunk and 0.20 branch; broken on
-               hudson too
-   HBASE-1780  HTable.flushCommits clears write buffer in finally clause
-   HBASE-1784  Missing rows after medium intensity insert
-   HBASE-1809  NPE thrown in BoundedRangeFileInputStream
-   HBASE-1810  ConcurrentModificationException in region assignment
-               (Mathias Herberts via Stack)
-   HBASE-1804  Puts are permitted (and stored) when including an appended colon
-   HBASE-1715  Compaction failure in ScanWildcardColumnTracker.checkColumn
-   HBASE-2352  Small values for hbase.client.retries.number and
-               ipc.client.connect.max.retries breaks long ops in hbase shell
-               (Alexey Kovyrin via Stack)
-   HBASE-2531  32-bit encoding of regionnames waaaaaaayyyyy too susceptible to
-               hash clashes (Kannan Muthukkaruppan via Stack)
-
-  IMPROVEMENTS
-   HBASE-1089  Add count of regions on filesystem to master UI; add percentage
-               online as difference between whats open and whats on filesystem
-               (Samuel Guo via Stack)
-   HBASE-1130  PrefixRowFilter (Michael Gottesman via Stack)
-   HBASE-1139  Update Clover in build.xml
-   HBASE-876   There are a large number of Java warnings in HBase; part 1,
-               part 2, part 3, part 4, part 5, part 6, part 7 and part 8
-               (Evgeny Ryabitskiy via Stack)
-   HBASE-896   Update jruby from 1.1.2 to 1.1.6
-   HBASE-1031  Add the Zookeeper jar
-   HBASE-1142  Cleanup thrift server; remove Text and profuse DEBUG messaging
-               (Tim Sell via Stack)
-   HBASE-1064  HBase REST xml/json improvements (Brian Beggs working of
-               initial Michael Gottesman work via Stack)
-   HBASE-5121  Fix shell usage for format.width
-   HBASE-845   HCM.isTableEnabled doesn't really tell if it is, or not
-   HBASE-903   [shell] Can't set table descriptor attributes when I alter a
-               table
-   HBASE-1166  saveVersion.sh doesn't work with git (Nitay Joffe via Stack)
-   HBASE-1167  JSP doesn't work in a git checkout (Nitay Joffe via Andrew
-               Purtell)
-   HBASE-1178  Add shutdown command to shell
-   HBASE-1184  HColumnDescriptor is too restrictive with family names
-               (Toby White via Andrew Purtell)
-   HBASE-1180  Add missing import statements to SampleUploader and remove
-               unnecessary @Overrides (Ryan Smith via Andrew Purtell)
-   HBASE-1191  ZooKeeper ensureParentExists calls fail 
-               on absolute path (Nitay Joffe via Jean-Daniel Cryans)
-   HBASE-1187  After disabling/enabling a table, the regions seems to 
-               be assigned to only 1-2 region servers
-   HBASE-1210  Allow truncation of output for scan and get commands in shell
-               (Lars George via Stack)
-   HBASE-1221  When using ant -projecthelp to build HBase not all the important
-               options show up (Erik Holstad via Stack)
-   HBASE-1189  Changing the map type used internally for HbaseMapWritable
-               (Erik Holstad via Stack)
-   HBASE-1188  Memory size of Java Objects - Make cacheable objects implement
-               HeapSize (Erik Holstad via Stack)
-   HBASE-1230  Document installation of HBase on Windows
-   HBASE-1241  HBase additions to ZooKeeper part 1 (Nitay Joffe via JD)
-   HBASE-1231  Today, going from a RowResult to a BatchUpdate reqiures some
-               data processing even though they are pretty much the same thing
-               (Erik Holstad via Stack)
-   HBASE-1240  Would be nice if RowResult could be comparable
-               (Erik Holstad via Stack)
-   HBASE-803   Atomic increment operations (Ryan Rawson and Jon Gray via Stack)
-               Part 1 and part 2 -- fix for a crash.
-   HBASE-1252  Make atomic increment perform a binary increment
-               (Jonathan Gray via Stack)
-   HBASE-1258,1259 ganglia metrics for 'requests' is confusing
-               (Ryan Rawson via Stack)
-   HBASE-1265  HLogEdit static constants should be final (Nitay Joffe via
-               Stack)
-   HBASE-1244  ZooKeeperWrapper constants cleanup (Nitay Joffe via Stack)
-   HBASE-1262  Eclipse warnings, including performance related things like
-               synthetic accessors (Nitay Joffe via Stack)
-   HBASE-1273  ZooKeeper WARN spits out lots of useless messages
-               (Nitay Joffe via Stack)
-   HBASE-1285  Forcing compactions should be available via thrift
-               (Tim Sell via Stack)
-   HBASE-1186  Memory-aware Maps with LRU eviction for cell cache 
-               (Jonathan Gray via Andrew Purtell)
-   HBASE-1205  RegionServers should find new master when a new master comes up
-               (Nitay Joffe via Andrew Purtell)
-   HBASE-1309  HFile rejects key in Memcache with empty value
-   HBASE-1331  Lower the default scanner caching value
-   HBASE-1235  Add table enabled status to shell and UI
-               (Lars George via Stack)
-   HBASE-1333  RowCounter updates
-   HBASE-1195  If HBase directory exists but version file is inexistent, still
-               proceed with bootstrapping (Evgeny Ryabitskiy via Stack)
-   HBASE-1301  HTable.getRow() returns null if the row does no exist
-               (Rong-en Fan via Stack)
-   HBASE-1176  Javadocs in HBA should be clear about which functions are
-               asynchronous and which are synchronous
-               (Evgeny Ryabitskiy via Stack)
-   HBASE-1260  Bytes utility class changes: remove usage of ByteBuffer and
-               provide additional ByteBuffer primitives (Jon Gray via Stack)
-   HBASE-1183  New MR splitting algorithm and other new features need a way to
-               split a key range in N chunks (Jon Gray via Stack)
-   HBASE-1350  New method in HTable.java to return start and end keys for
-               regions in a table (Vimal Mathew via Stack)
-   HBASE-1271  Allow multiple tests to run on one machine
-               (Evgeny Ryabitskiy via Stack)
-   HBASE-1112  we will lose data if the table name happens to be the logs' dir
-               name (Samuel Guo via Stack)
-   HBASE-889   The current Thrift API does not allow a new scanner to be
-               created without supplying a column list unlike the other APIs.
-               (Tim Sell via Stack)
-   HBASE-1341  HTable pooler
-   HBASE-1379  re-enable LZO using hadoop-gpl-compression library
-               (Ryan Rawson via Stack)
-   HBASE-1383  hbase shell needs to warn on deleting multi-region table
-   HBASE-1286  Thrift should support next(nbRow) like functionality
-               (Alex Newman via Stack)
-   HBASE-1392  change how we build/configure lzocodec (Ryan Rawson via Stack)
-   HBASE-1397  Better distribution in the PerformanceEvaluation MapReduce
-               when rows run to the Billions
-   HBASE-1393  Narrow synchronization in HLog
-   HBASE-1404  minor edit of regionserver logging messages
-   HBASE-1405  Threads.shutdown has unnecessary branch
-   HBASE-1407  Changing internal structure of ImmutableBytesWritable
-               contructor (Erik Holstad via Stack)
-   HBASE-1345  Remove distributed mode from MiniZooKeeper (Nitay Joffe via
-               Stack)
-   HBASE-1414  Add server status logging chore to ServerManager
-   HBASE-1379  Make KeyValue implement Writable
-               (Erik Holstad and Jon Gray via Stack)
-   HBASE-1380  Make KeyValue implement HeapSize
-               (Erik Holstad and Jon Gray via Stack)
-   HBASE-1413  Fall back to filesystem block size default if HLog blocksize is
-               not specified
-   HBASE-1417  Cleanup disorientating RPC message
-   HBASE-1424  have shell print regioninfo and location on first load if
-               DEBUG enabled
-   HBASE-1008  [performance] The replay of logs on server crash takes way too
-               long
-   HBASE-1394  Uploads sometimes fall to 0 requests/second (Binding up on
-               HLog#append?)
-   HBASE-1429  Allow passing of a configuration object to HTablePool
-   HBASE-1432  LuceneDocumentWrapper is not public
-   HBASE-1401  close HLog (and open new one) if there hasnt been edits in N
-               minutes/hours
-   HBASE-1420  add abliity to add and remove (table) indexes on existing
-               tables (Clint Morgan via Stack)
-   HBASE-1430  Read the logs in batches during log splitting to avoid OOME
-   HBASE-1017  Region balancing does not bring newly added node within
-               acceptable range (Evgeny Ryabitskiy via Stack)
-   HBASE-1454  HBaseAdmin.getClusterStatus
-   HBASE-1236  Improve readability of table descriptions in the UI
-               (Lars George and Alex Newman via Stack)
-   HBASE-1455  Update DemoClient.py for thrift 1.0 (Tim Sell via Stack)
-   HBASE-1464  Add hbase.regionserver.logroll.period to hbase-default
-   HBASE-1192  LRU-style map for the block cache (Jon Gray and Ryan Rawson
-               via Stack)
-   HBASE-1466  Binary keys are not first class citizens
-               (Ryan Rawson via Stack)
-   HBASE-1445  Add the ability to start a master from any machine
-   HBASE-1474  Add zk attributes to list of attributes 
-               in master and regionserver UIs
-   HBASE-1448  Add a node in ZK to tell all masters to shutdown
-   HBASE-1478  Remove hbase master options from shell (Nitay Joffe via Stack)
-   HBASE-1462  hclient still seems to depend on master
-   HBASE-1143  region count erratic in master UI
-   HBASE-1490  Update ZooKeeper library
-   HBASE-1489  Basic git ignores for people who use git and eclipse
-   HBASE-1453  Add HADOOP-4681 to our bundled hadoop, add to 'gettting started'
-               recommendation that hbase users backport 
-   HBASE-1507  iCMS as default JVM
-   HBASE-1509  Add explanation to shell "help" command on how to use binarykeys
-               (Lars George via Stack)
-   HBASE-1514  hfile inspection tool
-   HBASE-1329  Visibility into ZooKeeper
-   HBASE-867   If millions of columns in a column family, hbase scanner won't
-               come up (Jonathan Gray via Stack)
-   HBASE-1538  Up zookeeper timeout from 10 seconds to 30 seconds to cut down
-               on hbase-user traffic
-   HBASE-1539  prevent aborts due to missing zoo.cfg
-   HBASE-1488  Fix TestThriftServer and re-enable it
-   HBASE-1541  Scanning multiple column families in the presence of deleted 
-               families results in bad scans
-   HBASE-1540  Client delete unit test, define behavior
-               (Jonathan Gray via Stack)
-   HBASE-1552  provide version running on cluster via getClusterStatus
-   HBASE-1550  hbase-daemon.sh stop should provide more information when stop
-               command fails
-   HBASE-1515  Address part of config option hbase.regionserver unnecessary
-   HBASE-1532  UI Visibility into ZooKeeper
-   HBASE-1572  Zookeeper log4j property set to ERROR on default, same output
-               when cluster working and not working (Jon Gray via Stack)
-   HBASE-1576  TIF needs to be able to set scanner caching size for smaller
-               row tables & performance
-   HBASE-1577  Move memcache to ConcurrentSkipListMap from
-               ConcurrentSkipListSet
-   HBASE-1578  Change the name of the in-memory updates from 'memcache' to
-               'memtable' or....
-   HBASE-1562  How to handle the setting of 32 bit versus 64 bit machines
-               (Erik Holstad via Stack)
-   HBASE-1584  Put add methods should return this for ease of use (Be
-               consistant with Get) (Clint Morgan via Stack)
-   HBASE-1581  Run major compaction on .META. when table is dropped or
-               truncated
-   HBASE-1587  Update ganglia config and doc to account for ganglia 3.1 and
-               hadoop-4675
-   HBASE-1589  Up zk maxClientCnxns from default of 10 to 20 or 30 or so
-   HBASE-1385  Revamp TableInputFormat, needs updating to match hadoop 0.20.x
-               AND remove bit where we can make < maps than regions
-               (Lars George via Stack)
-   HBASE-1596  Remove WatcherWrapper and have all users of Zookeeper provide a
-               Watcher
-   HBASE-1597  Prevent unnecessary caching of blocks during compactions
-               (Jon Gray via Stack)
-   HBASE-1607  Redo MemStore heap sizing to be accurate, testable, and more
-               like new LruBlockCache (Jon Gray via Stack)
-   HBASE-1218  Implement in-memory column (Jon Gray via Stack)
-   HBASE-1606  Remove zoo.cfg, put config options into hbase-site.xml
-   HBASE-1575  HMaster does not handle ZK session expiration
-   HBASE-1620  Need to use special StoreScanner constructor for major
-               compactions (passed sf, no caching, etc) (Jon Gray via Stack)
-   HBASE-1624  Don't sort Puts if only one in list in HCM#processBatchOfRows
-   HBASE-1626  Allow emitting Deletes out of new TableReducer
-               (Lars George via Stack)
-   HBASE-1551  HBase should manage multiple node ZooKeeper quorum
-   HBASE-1637  Delete client class methods should return itself like Put, Get,
-               Scan (Jon Gray via Nitay)
-   HBASE-1640  Allow passing arguments to jruby script run when run by hbase
-               shell
-   HBASE-698   HLog recovery is not performed after master failure
-   HBASE-1643  ScanDeleteTracker takes comparator but it unused
-   HBASE-1603  MR failed "RetriesExhaustedException: Trying to contact region
-               server Some server for region TestTable..." -- deubugging
-   HBASE-1470  hbase and HADOOP-4379, dhruba's flush/sync
-   HBASE-1632  Write documentation for configuring/managing ZooKeeper
-   HBASE-1662  Tool to run major compaction on catalog regions when hbase is
-               shutdown
-   HBASE-1665  expose more load information to the client side
-   HBASE-1609  We wait on leases to expire before regionserver goes down.
-               Rather, just let client fail
-   HBASE-1655  Usability improvements to HTablePool (Ken Weiner via jgray)
-   HBASE-1688  Improve javadocs in Result and KeyValue
-   HBASE-1694  Add TOC to 'Getting Started', add references to THBase and
-               ITHBase
-   HBASE-1699  Remove hbrep example as it's too out of date
-               (Tim Sell via Stack)
-   HBASE-1683  OOME on master splitting logs; stuck, won't go down
-   HBASE-1704  Better zk error when failed connect
-   HBASE-1714  Thrift server: prefix scan API
-   HBASE-1719  hold a reference to the region in stores instead of only the
-               region info
-   HBASE-1743  [debug tool] Add regionsInTransition list to ClusterStatus
-               detailed output
-   HBASE-1772  Up the default ZK session timeout from 30seconds to 60seconds
-   HBASE-2625  Make testDynamicBloom()'s "randomness" deterministic
-               (Nicolas Spiegelberg via Stack)
-
-  OPTIMIZATIONS
-   HBASE-1412  Change values for delete column and column family in KeyValue
-   HBASE-1535  Add client ability to perform mutations without the WAL
-               (Jon Gray via Stack)
-   HBASE-1460  Concurrent LRU Block Cache (Jon Gray via Stack)
-   HBASE-1635  PerformanceEvaluation should use scanner prefetching
-
-Release 0.19.0 - 01/21/2009
-  INCOMPATIBLE CHANGES
-   HBASE-885   TableMap and TableReduce should be interfaces
-               (Doğacan Güney via Stack)
-   HBASE-905   Remove V5 migration classes from 0.19.0 (Jean-Daniel Cryans via
-               Jim Kellerman)
-   HBASE-852   Cannot scan all families in a row with a LIMIT, STARTROW, etc.
-               (Izaak Rubin via Stack)
-   HBASE-953   Enable BLOCKCACHE by default [WAS -> Reevaluate HBASE-288 block
-               caching work....?] -- Update your hbase-default.xml file!
-   HBASE-636   java6 as a requirement
-   HBASE-994   IPC interfaces with different versions can cause problems
-   HBASE-1028  If key does not exist, return null in getRow rather than an
-               empty RowResult
-   HBASE-1134  OOME in HMaster when HBaseRPC is older than 0.19
-
-  BUG FIXES
-   HBASE-891   HRS.validateValuesLength throws IOE, gets caught in the retries
-   HBASE-892   Cell iteration is broken (Doğacan Güney via Jim Kellerman)
-   HBASE-898   RowResult.containsKey(String) doesn't work
-               (Doğacan Güney via Jim Kellerman)
-   HBASE-906   [shell] Truncates output
-   HBASE-912   PE is broken when other tables exist
-   HBASE-853   [shell] Cannot describe meta tables (Izaak Rubin via Stack)
-   HBASE-844   Can't pass script to hbase shell 
-   HBASE-837   Add unit tests for ThriftServer.HBaseHandler (Izaak Rubin via
-               Stack)
-   HBASE-913   Classes using log4j directly
-   HBASE-914   MSG_REPORT_CLOSE has a byte array for a message
-   HBASE-918   Region balancing during startup makes cluster unstable
-   HBASE-921   region close and open processed out of order; makes for 
-               disagreement between master and regionserver on region state
-   HBASE-925   HRS NPE on way out if no master to connect to
-   HBASE-928   NPE throwing RetriesExhaustedException
-   HBASE-924   Update hadoop in lib on 0.18 hbase branch to 0.18.1
-   HBASE-929   Clarify that ttl in HColumnDescriptor is seconds
-   HBASE-930   RegionServer stuck: HLog: Could not append. Requesting close of
-               log java.io.IOException: Could not get block locations
-   HBASE-926   If no master, regionservers should hang out rather than fail on
-               connection and shut themselves down
-   HBASE-919   Master and Region Server need to provide root region location if
-               they are using HTable
-               With J-D's one line patch, test cases now appear to work and
-               PerformanceEvaluation works as before.
-   HBASE-939   NPE in HStoreKey
-   HBASE-945   Be consistent in use of qualified/unqualified mapfile paths
-   HBASE-946   Row with 55k deletes timesout scanner lease
-   HBASE-950   HTable.commit no longer works with existing RowLocks though it's
-               still in API
-   HBASE-952   Deadlock in HRegion.batchUpdate
-   HBASE-954   Don't reassign root region until ProcessServerShutdown has split
-               the former region server's log
-   HBASE-957   PerformanceEvaluation tests if table exists by comparing
-               descriptors
-   HBASE-728,  HBASE-956, HBASE-955 Address thread naming, which threads are
-               Chores, vs Threads, make HLog manager the write ahead log and
-               not extend it to provided optional HLog sync operations.
-   HBASE-970   Update the copy/rename scripts to go against change API
-   HBASE-966   HBASE-748 misses some writes
-   HBASE-971   Fix the failing tests on Hudson
-   HBASE-973   [doc] In getting started, make it clear that hbase needs to
-               create its directory in hdfs
-   HBASE-963   Fix the retries in HTable.flushCommit
-   HBASE-969   Won't when storefile > 2G.
-   HBASE-976   HADOOP 0.19.0 RC0 is broke; replace with HEAD of branch-0.19
-   HBASE-977   Arcane HStoreKey comparator bug
-   HBASE-979   REST web app is not started automatically
-   HBASE-980   Undo core of HBASE-975, caching of start and end row
-   HBASE-982   Deleting a column in MapReduce fails (Doğacan Güney via
-               Stack)
-   HBASE-984   Fix javadoc warnings
-   HBASE-985   Fix javadoc warnings
-   HBASE-951   Either shut down master or let it finish cleanup
-   HBASE-964   Startup stuck "waiting for root region"
-   HBASE-964, HBASE-678 provide for safe-mode without locking up HBase "waiting
-               for root region"
-   HBASE-990   NoSuchElementException in flushSomeRegions; took two attempts.
-   HBASE-602   HBase Crash when network card has a IPv6 address
-   HBASE-996   Migration script to up the versions in catalog tables
-   HBASE-991   Update the mapred package document examples so they work with
-               TRUNK/0.19.0.
-   HBASE-1003  If cell exceeds TTL but not VERSIONs, will not be removed during
-               major compaction
-   HBASE-1005  Regex and string comparison operators for ColumnValueFilter
-   HBASE-910   Scanner misses columns / rows when the scanner is obtained
-               during a memcache flush
-   HBASE-1009  Master stuck in loop wanting to assign but regions are closing
-   HBASE-1016  Fix example in javadoc overvie
-   HBASE-1021  hbase metrics FileContext not working
-   HBASE-1023  Check global flusher
-   HBASE-1036  HBASE-1028 broke Thrift
-   HBASE-1037  Some test cases failing on Windows/Cygwin but not UNIX/Linux
-   HBASE-1041  Migration throwing NPE
-   HBASE-1042  OOME but we don't abort; two part commit.
-   HBASE-927   We don't recover if HRS hosting -ROOT-/.META. goes down
-   HBASE-1029  REST wiki documentation incorrect
-               (Sishen Freecity via Stack)
-   HBASE-1043  Removing @Override attributes where they are no longer needed.
-               (Ryan Smith via Jim Kellerman)
-   HBASE-927   We don't recover if HRS hosting -ROOT-/.META. goes down -
-               (fix bug in createTable which caused tests to fail)
-   HBASE-1039  Compaction fails if bloomfilters are enabled
-   HBASE-1027  Make global flusher check work with percentages rather than
-               hard code memory sizes
-   HBASE-1000  Sleeper.sleep does not go back to sleep when interrupted
-               and no stop flag given.
-   HBASE-900   Regionserver memory leak causing OOME during relatively
-               modest bulk importing; part 1 and part 2
-   HBASE-1054  Index NPE on scanning (Clint Morgan via Andrew Purtell)
-   HBASE-1052  Stopping a HRegionServer with unflushed cache causes data loss
-               from org.apache.hadoop.hbase.DroppedSnapshotException
-   HBASE-1059  ConcurrentModificationException in notifyChangedReadersObservers
-   HBASE-1063  "File separator problem on Windows" (Max Lehn via Stack)
-   HBASE-1068  TestCompaction broken on hudson
-   HBASE-1067  TestRegionRebalancing broken by running of hdfs shutdown thread
-   HBASE-1070  Up default index interval in TRUNK and branch
-   HBASE-1045  Hangup by regionserver causes write to fail
-   HBASE-1079  Dumb NPE in ServerCallable hides the RetriesExhausted exception
-   HBASE-782   The DELETE key in the hbase shell deletes the wrong character
-               (Tim Sell via Stack)
-   HBASE-543,  HBASE-1046, HBase-1051 A region's state is kept in several places
-               in the master opening the possibility for race conditions
-   HBASE-1087  DFS failures did not shutdown regionserver
-   HBASE-1072  Change Thread.join on exit to a timed Thread.join
-   HBASE-1098  IllegalStateException: Cannot set a region to be closed it it
-               was not already marked as closing
-   HBASE-1100  HBASE-1062 broke TestForceSplit
-   HBASE-1191  shell tools -> close_region does not work for regions that did
-               not deploy properly on startup
-   HBASE-1093  NPE in HStore#compact
-   HBASE-1097  SequenceFile.Reader keeps around buffer whose size is that of
-               largest item read -> results in lots of dead heap
-   HBASE-1107  NPE in HStoreScanner.updateReaders
-   HBASE-1083  Will keep scheduling major compactions if last time one ran, we
-               didn't.
-   HBASE-1101  NPE in HConnectionManager$TableServers.processBatchOfRows
-   HBASE-1099  Regions assigned while master is splitting logs of recently
-               crashed server; regionserver tries to execute incomplete log
-   HBASE-1104, HBASE-1098, HBASE-1096: Doubly-assigned regions redux,
-               IllegalStateException: Cannot set a region to be closed it it was
-               not already marked as closing, Does not recover if HRS carrying 
-               -ROOT- goes down
-   HBASE-1114  Weird NPEs compacting
-   HBASE-1116  generated web.xml and svn don't play nice together
-   HBASE-1119  ArrayOutOfBoundsException in HStore.compact
-   HBASE-1121  Cluster confused about where -ROOT- is
-   HBASE-1125  IllegalStateException: Cannot set a region to be closed if it was
-               not already marked as pending close
-   HBASE-1124  Balancer kicks in way too early
-   HBASE-1127  OOME running randomRead PE
-   HBASE-1132  Can't append to HLog, can't roll log, infinite cycle (another
-               spin on HBASE-930)
-
-  IMPROVEMENTS
-   HBASE-901   Add a limit to key length, check key and value length on client side
-   HBASE-890   Alter table operation and also related changes in REST interface
-               (Sishen Freecity via Stack)
-   HBASE-894   [shell] Should be able to copy-paste table description to create
-               new table (Sishen Freecity via Stack)
-   HBASE-886, HBASE-895 Sort the tables in the web UI, [shell] 'list' command
-               should emit a sorted list of tables (Krzysztof Szlapinski via Stack)
-   HBASE-884   Double and float converters for Bytes class
-               (Doğacan Güney via Stack)
-   HBASE-908   Add approximate counting to CountingBloomFilter
-               (Andrzej Bialecki via Stack)
-   HBASE-920   Make region balancing sloppier
-   HBASE-902   Add force compaction and force split operations to UI and Admin
-   HBASE-942   Add convenience methods to RowFilterSet
-               (Clint Morgan via Stack)
-   HBASE-943   to ColumnValueFilter: add filterIfColumnMissing property, add
-               SubString operator (Clint Morgan via Stack)
-   HBASE-937   Thrift getRow does not support specifying columns
-               (Doğacan Güney via Stack)
-   HBASE-959   Be able to get multiple RowResult at one time from client side
-               (Sishen Freecity via Stack)
-   HBASE-936   REST Interface: enable get number of rows from scanner interface
-               (Sishen Freecity via Stack)
-   HBASE-960   REST interface: more generic column family configure and also
-               get Rows using offset and limit (Sishen Freecity via Stack)
-   HBASE-817   Hbase/Shell Truncate
-   HBASE-949   Add an HBase Manual
-   HBASE-839   Update hadoop libs in hbase; move hbase TRUNK on to an hadoop
-               0.19.0 RC
-   HBASE-785   Remove InfoServer, use HADOOP-3824 StatusHttpServer 
-               instead (requires hadoop 0.19)
-   HBASE-81    When a scanner lease times out, throw a more "user friendly" exception
-   HBASE-978   Remove BloomFilterDescriptor. It is no longer used.
-   HBASE-975   Improve MapFile performance for start and end key
-   HBASE-961   Delete multiple columns by regular expression
-               (Samuel Guo via Stack)
-   HBASE-722   Shutdown and Compactions
-   HBASE-983   Declare Perl namespace in Hbase.thrift
-   HBASE-987   We need a Hbase Partitioner for TableMapReduceUtil.initTableReduceJob
-               MR Jobs (Billy Pearson via Stack)
-   HBASE-993   Turn off logging of every catalog table row entry on every scan
-   HBASE-992   Up the versions kept by catalog tables; currently 1. Make it 10?
-   HBASE-998   Narrow getClosestRowBefore by passing column family
-   HBASE-999   Up versions on historian and keep history of deleted regions for a
-               while rather than delete immediately
-   HBASE-938   Major compaction period is not checked periodically
-   HBASE-947   [Optimization] Major compaction should remove deletes as well as
-               the deleted cell
-   HBASE-675   Report correct server hosting a table split for assignment to
-               for MR Jobs
-   HBASE-927   We don't recover if HRS hosting -ROOT-/.META. goes down
-   HBASE-1013  Add debugging around commit log cleanup
-   HBASE-972   Update hbase trunk to use released hadoop 0.19.0
-   HBASE-1022  Add storefile index size to hbase metrics
-   HBASE-1026  Tests in mapred are failing
-   HBASE-1020  Regionserver OOME handler should dump vital stats
-   HBASE-1018  Regionservers should report detailed health to master
-   HBASE-1034  Remove useless TestToString unit test
-   HBASE-1030  Bit of polish on HBASE-1018
-   HBASE-847   new API: HTable.getRow with numVersion specified
-               (Doğacan Güney via Stack)
-   HBASE-1048  HLog: Found 0 logs to remove out of total 1450; oldest
-               outstanding seqnum is 162297053 fr om region -ROOT-,,0
-   HBASE-1055  Better vm stats on startup
-   HBASE-1065  Minor logging improvements in the master
-   HBASE-1053  bring recent rpc changes down from hadoop
-   HBASE-1056  [migration] enable blockcaching on .META. table
-   HBASE-1069  Show whether HRegion major compacts or not in INFO level
-   HBASE-1066  Master should support close/open/reassignment/enable/disable
-               operations on individual regions
-   HBASE-1062  Compactions at (re)start on a large table can overwhelm DFS
-   HBASE-1102  boolean HTable.exists()
-   HBASE-1105  Remove duplicated code in HCM, add javadoc to RegionState, etc.
-   HBASE-1106  Expose getClosestRowBefore in HTable
-               (Michael Gottesman via Stack)
-   HBASE-1082  Administrative functions for table/region maintenance
-   HBASE-1090  Atomic Check And Save in HTable (Michael Gottesman via Stack)
-   HBASE-1137  Add not on xceivers count to overview documentation
-
-  NEW FEATURES
-   HBASE-875   Use MurmurHash instead of JenkinsHash [in bloomfilters]
-               (Andrzej Bialecki via Stack)
-   HBASE-625   Metrics support for cluster load history: emissions and graphs
-   HBASE-883   Secondary indexes (Clint Morgan via Andrew Purtell)
-   HBASE-728   Support for HLog appends
-
-  OPTIMIZATIONS
-   HBASE-748   Add an efficient way to batch update many rows
-   HBASE-887   Fix a hotspot in scanners
-   HBASE-967   [Optimization] Cache cell maximum length (HCD.getMaxValueLength);
-               its used checking batch size
-   HBASE-940   Make the TableOutputFormat batching-aware
-   HBASE-576   Investigate IPC performance
-
-Release 0.18.0 - September 21st, 2008
-
-  INCOMPATIBLE CHANGES
-   HBASE-697   Thrift idl needs update/edit to match new 0.2 API (and to fix bugs)
-               (Tim Sell via Stack)
-   HBASE-822   Update thrift README and HBase.thrift to use thrift 20080411
-               Updated all other languages examples (only python went in)
-
-  BUG FIXES
-   HBASE-881   Fixed bug when Master tries to reassign split or offline regions
-               from a dead server
-   HBASE-860   Fixed Bug in IndexTableReduce where it concerns writing lucene 
-               index fields.
-   HBASE-805   Remove unnecessary getRow overloads in HRS (Jonathan Gray via
-               Jim Kellerman) (Fix whitespace diffs in HRegionServer)
-   HBASE-811   HTD is not fully copyable (Andrew Purtell via Jim Kellerman)
-   HBASE-729   Client region/metadata cache should have a public method for
-               invalidating entries (Andrew Purtell via Stack)
-   HBASE-819   Remove DOS-style ^M carriage returns from all code where found
-               (Jonathan Gray via Jim Kellerman)
-   HBASE-818   Deadlock running 'flushSomeRegions' (Andrew Purtell via Stack)
-   HBASE-820   Need mainline to flush when 'Blocking updates' goes up.
-               (Jean-Daniel Cryans via Stack)
-   HBASE-821   UnknownScanner happens too often (Jean-Daniel Cryans via Stack)
-   HBASE-813   Add a row counter in the new shell (Jean-Daniel Cryans via Stack)
-   HBASE-824   Bug in Hlog we print array of byes for region name
-               (Billy Pearson via Stack)
-   HBASE-825   Master logs showing byte [] in place of string in logging
-               (Billy Pearson via Stack)
-   HBASE-808,809 MAX_VERSIONS not respected, and Deletall doesn't and inserts
-               after delete don't work as expected
-               (Jean-Daniel Cryans via Stack)
-   HBASE-831   committing BatchUpdate with no row should complain
-               (Andrew Purtell via Jim Kellerman)
-   HBASE-833   Doing an insert with an unknown family throws a NPE in HRS
-   HBASE-810   Prevent temporary deadlocks when, during a scan with write
-               operations, the region splits (Jean-Daniel Cryans via Jim
-               Kellerman)
-   HBASE-843   Deleting and recreating a table in a single process does not work
-               (Jonathan Gray via Jim Kellerman)
-   HBASE-849   Speed improvement in JenkinsHash (Andrzej Bialecki via Stack)
-   HBASE-552   Bloom filter bugs (Andrzej Bialecki via Jim Kellerman)
-   HBASE-762   deleteFamily takes timestamp, should only take row and family.
-               Javadoc describes both cases but only implements the timestamp
-               case. (Jean-Daniel Cryans via Jim Kellerman)
-   HBASE-768   This message 'java.io.IOException: Install 0.1.x of hbase and run
-               its migration first' is useless (Jean-Daniel Cryans via Jim
-               Kellerman)
-   HBASE-826   Delete table followed by recreation results in honked table
-   HBASE-834   'Major' compactions and upper bound on files we compact at any
-               one time (Billy Pearson via Stack)
-   HBASE-836   Update thrift examples to work with changed IDL (HBASE-697)
-               (Toby White via Stack)
-   HBASE-854   hbase-841 broke build on hudson? - makes sure that proxies are
-               closed. (Andrew Purtell via Jim Kellerman)
-   HBASE-855   compaction can return less versions then we should in some cases
-               (Billy Pearson via Stack)
-   HBASE-832   Problem with row keys beginnig with characters < than ',' and
-               the region location cache
-   HBASE-864   Deadlock in regionserver
-   HBASE-865   Fix javadoc warnings (Rong-En Fan via Jim Kellerman)
-   HBASE-872   Getting exceptions in shell when creating/disabling tables
-   HBASE-868   Incrementing binary rows cause strange behavior once table
-               splits (Jonathan Gray via Stack)
-   HBASE-877   HCM is unable to find table with multiple regions which contains
-               binary (Jonathan Gray via Stack)
-
-  IMPROVEMENTS
-   HBASE-801  When a table haven't disable, shell could response in a "user
-              friendly" way.
-   HBASE-816  TableMap should survive USE (Andrew Purtell via Stack)
-   HBASE-812  Compaction needs little better skip algo (Daniel Leffel via Stack)
-   HBASE-806  Change HbaseMapWritable and RowResult to implement SortedMap
-              instead of Map (Jonathan Gray via Stack)
-   HBASE-795  More Table operation in TableHandler for REST interface: part 1
-              (Sishen Freecity via Stack)
-   HBASE-795  More Table operation in TableHandler for REST interface: part 2
-              (Sishen Freecity via Stack)
-   HBASE-830  Debugging HCM.locateRegionInMeta is painful
-   HBASE-784  Base hbase-0.3.0 on hadoop-0.18
-   HBASE-841  Consolidate multiple overloaded methods in HRegionInterface,
-              HRegionServer (Jean-Daniel Cryans via Jim Kellerman)
-   HBASE-840  More options on the row query in REST interface
-              (Sishen Freecity via Stack)
-   HBASE-874  deleting a table kills client rpc; no subsequent communication if
-              shell or thrift server, etc. (Jonathan Gray via Jim Kellerman)
-   HBASE-871  Major compaction periodicity should be specifyable at the column
-              family level, not cluster wide (Jonathan Gray via Stack)
-   HBASE-465  Fix javadoc for all public declarations
-   HBASE-882  The BatchUpdate class provides, put(col, cell) and delete(col)
-              but no get() (Ryan Smith via Stack and Jim Kellerman)
-
-  NEW FEATURES
-   HBASE-787  Postgresql to HBase table replication example (Tim Sell via Stack)
-   HBASE-798  Provide Client API to explicitly lock and unlock rows (Jonathan
-              Gray via Jim Kellerman)
-   HBASE-798  Add missing classes: UnknownRowLockException and RowLock which
-              were present in previous versions of the patches for this issue,
-              but not in the version that was committed. Also fix a number of
-              compilation problems that were introduced by patch.
-   HBASE-669  MultiRegion transactions with Optimistic Concurrency Control
-              (Clint Morgan via Stack)
-   HBASE-842  Remove methods that have Text as a parameter and were deprecated
-              in 0.2.1 (Jean-Daniel Cryans via Jim Kellerman)
-
-  OPTIMIZATIONS
-
-Release 0.2.0 - August 8, 2008.
-
-  INCOMPATIBLE CHANGES
-   HBASE-584   Names in the filter interface are confusing (Clint Morgan via
-               Jim Kellerman) (API change for filters)
-   HBASE-601   Just remove deprecated methods in HTable; 0.2 is not backward
-               compatible anyways
-   HBASE-82    Row keys should be array of bytes
-   HBASE-76    Purge servers of Text (Done as part of HBASE-82 commit).
-   HBASE-487   Replace hql w/ a hbase-friendly jirb or jython shell
-               Part 1: purge of hql and added raw jirb in its place.
-   HBASE-521   Improve client scanner interface
-   HBASE-288   Add in-memory caching of data. Required update of hadoop to 
-               0.17.0-dev.2008-02-07_12-01-58. (Tom White via Stack) 
-   HBASE-696   Make bloomfilter true/false and self-sizing
-   HBASE-720   clean up inconsistencies around deletes (Izaak Rubin via Stack)
-   HBASE-796   Deprecates Text methods from HTable
-               (Michael Gottesman via Stack)
-
-  BUG FIXES
-   HBASE-574   HBase does not load hadoop native libs (Rong-En Fan via Stack)
-   HBASE-598   Loggging, no .log file; all goes into .out
-   HBASE-622   Remove StaticTestEnvironment and put a log4j.properties in src/test
-   HBASE-624   Master will shut down if number of active region servers is zero
-               even if shutdown was not requested
-   HBASE-629   Split reports incorrect elapsed time
-   HBASE-623   Migration script for hbase-82
-   HBASE-630   Default hbase.rootdir is garbage
-   HBASE-589   Remove references to deprecated methods in Hadoop once
-               hadoop-0.17.0 is released
-   HBASE-638   Purge \r from src
-   HBASE-644   DroppedSnapshotException but RegionServer doesn't restart
-   HBASE-641   Improve master split logging
-   HBASE-642   Splitting log in a hostile environment -- bad hdfs -- we drop
-               write-ahead-log edits
-   HBASE-646   EOFException opening HStoreFile info file (spin on HBASE-645and 550)
-   HBASE-648   If mapfile index is empty, run repair
-   HBASE-640   TestMigrate failing on hudson
-   HBASE-651   Table.commit should throw NoSuchColumnFamilyException if column
-               family doesn't exist
-   HBASE-649   API polluted with default and protected access data members and methods
-   HBASE-650   Add String versions of get, scanner, put in HTable
-   HBASE-656   Do not retry exceptions such as unknown scanner or illegal argument
-   HBASE-659   HLog#cacheFlushLock not cleared; hangs a region
-   HBASE-663   Incorrect sequence number for cache flush
-   HBASE-655   Need programmatic way to add column family: need programmatic way
-               to enable/disable table
-   HBASE-654   API HTable.getMetadata().addFamily shouldn't be exposed to user
-   HBASE-666   UnmodifyableHRegionInfo gives the wrong encoded name
-   HBASE-668   HBASE-533 broke build
-   HBASE-670   Historian deadlocks if regionserver is at global memory boundary
-               and is hosting .META.
-   HBASE-665   Server side scanner doesn't honor stop row
-   HBASE-662   UI in table.jsp gives META locations, not the table's regions
-               location (Jean-Daniel Cryans via Stack)
-   HBASE-676   Bytes.getInt returns a long (Clint Morgan via Stack)
-   HBASE-680   Config parameter hbase.io.index.interval  should be
-               hbase.index.interval, according to HBaseMapFile.HbaseWriter
-               (LN via Stack)
-   HBASE-682   Unnecessary iteration in HMemcache.internalGet? got much better
-               reading performance after break it (LN via Stack)
-   HBASE-686   MemcacheScanner didn't return the first row(if it exists),
-               because HScannerInterface's output incorrect (LN via Jim Kellerman)
-   HBASE-691   get* and getScanner are different in how they treat column parameter
-   HBASE-694   HStore.rowAtOrBeforeFromMapFile() fails to locate the row if # of mapfiles >= 2
-               (Rong-En Fan via Bryan)
-   HBASE-652   dropping table fails silently if table isn't disabled
-   HBASE-683   can not get svn revision # at build time if locale is not english
-               (Rong-En Fan via Stack)
-   HBASE-699   Fix TestMigrate up on Hudson
-   HBASE-615   Region balancer oscillates during cluster startup
-   HBASE-613   Timestamp-anchored scanning fails to find all records
-   HBASE-681   NPE in Memcache
-   HBASE-701   Showing bytes in log when should be String
-   HBASE-702   deleteall doesn't
-   HBASE-704   update new shell docs and commands on help menu
-   HBASE-709   Deadlock while rolling WAL-log while finishing flush
-   HBASE-710   If clocks are way off, then we can have daughter split come
-               before rather than after its parent in .META.
-   HBASE-714   Showing bytes in log when should be string (2)
-   HBASE-627   Disable table doesn't work reliably
-   HBASE-716   TestGet2.testGetClosestBefore fails with hadoop-0.17.1
-   HBASE-715   Base HBase 0.2 on Hadoop 0.17.1
-   HBASE-718   hbase shell help info
-   HBASE-717   alter table broke with new shell returns InvalidColumnNameException
-   HBASE-573   HBase does not read hadoop-*.xml for dfs configuration after 
-               moving out hadoop/contrib
-   HBASE-11    Unexpected exits corrupt DFS
-   HBASE-12    When hbase regionserver restarts, it says "impossible state for
-               createLease()"
-   HBASE-575   master dies with stack overflow error if rootdir isn't qualified
-   HBASE-582   HBase 554 forgot to clear results on each iteration caused by a filter
-               (Clint Morgan via Stack)
-   HBASE-532   Odd interaction between HRegion.get, HRegion.deleteAll and compactions
-   HBASE-10    HRegionServer hangs upon exit due to DFSClient Exception
-   HBASE-595   RowFilterInterface.rowProcessed() is called *before* fhe final
-               filtering decision is made (Clint Morgan via Stack)
-   HBASE-586   HRegion runs HStore memcache snapshotting -- fix it so only HStore
-               knows about workings of memcache
-   HBASE-588   Still a 'hole' in scanners, even after HBASE-532
-   HBASE-604   Don't allow CLASSPATH from environment pollute the hbase CLASSPATH
-   HBASE-608   HRegionServer::getThisIP() checks hadoop config var for dns interface name
-               (Jim R. Wilson via Stack)
-   HBASE-609   Master doesn't see regionserver edits because of clock skew
-   HBASE-607   MultiRegionTable.makeMultiRegionTable is not deterministic enough
-               for regression tests
-   HBASE-405   TIF and TOF use log4j directly rather than apache commons-logging
-   HBASE-618   We always compact if 2 files, regardless of the compaction threshold setting
-   HBASE-619   Fix 'logs' link in UI
-   HBASE-478   offlining of table does not run reliably
-   HBASE-453   undeclared throwable exception from HTable.get
-   HBASE-620   testmergetool failing in branch and trunk since hbase-618 went in
-   HBASE-550   EOF trying to read reconstruction log stops region deployment
-   HBASE-551   Master stuck splitting server logs in shutdown loop; on each
-               iteration, edits are aggregated up into the millions
-   HBASE-505   Region assignments should never time out so long as the region
-               server reports that it is processing the open request
-   HBASE-561   HBase package does not include LICENSE.txt nor build.xml
-   HBASE-563   TestRowFilterAfterWrite erroneously sets master address to
-               0.0.0.0:60100 rather than relying on conf
-   HBASE-507   Use Callable pattern to sleep between retries
-   HBASE-564   Don't do a cache flush if there are zero entries in the cache.
-   HBASE-554   filters generate StackOverflowException
-   HBASE-567   Reused BatchUpdate instances accumulate BatchOperations
-   HBASE-577   NPE getting scanner
-   HBASE-19    CountingBloomFilter can overflow its storage
-               (Stu Hood and Bryan Duxbury via Stack)
-   HBASE-28    thrift put/mutateRow methods need to throw IllegalArgument
-               exceptions (Dave Simpson via Bryan Duxbury via Stack)
-   HBASE-2     hlog numbers should wrap around when they reach 999
-               (Bryan Duxbury via Stack)
-   HBASE-421   TestRegionServerExit broken
-   HBASE-426   hbase can't find remote filesystem
-   HBASE-437   Clear Command should use system.out (Edward Yoon via Stack)
-   HBASE-434, HBASE-435 TestTableIndex and TestTableMapReduce failed in Hudson builds
-   HBASE-446   Fully qualified hbase.rootdir doesn't work
-   HBASE-438   XMLOutputter state should be initialized. (Edward Yoon via Stack)
-   HBASE-8     Delete table does not remove the table directory in the FS
-   HBASE-428   Under continuous upload of rows, WrongRegionExceptions are thrown
-               that reach the client even after retries
-   HBASE-460   TestMigrate broken when HBase moved to subproject   
-   HBASE-462   Update migration tool
-   HBASE-473   When a table is deleted, master sends multiple close messages to
-               the region server
-   HBASE-490   Doubly-assigned .META.; master uses one and clients another
-   HBASE-492   hbase TRUNK does not build against hadoop TRUNK
-   HBASE-496   impossible state for createLease writes 400k lines in about 15mins
-   HBASE-472   Passing on edits, we dump all to log
-   HBASE-495   No server address listed in .META.
-   HBASE-433 HBASE-251 Region server should delete restore log after successful
-               restore, Stuck replaying the edits of crashed machine.
-   HBASE-27    hregioninfo cell empty in meta table
-   HBASE-501   Empty region server address in info:server entry and a
-               startcode of -1 in .META.
-   HBASE-516   HStoreFile.finalKey does not update the final key if it is not
-               the top region of a split region
-   HBASE-525   HTable.getRow(Text) does not work (Clint Morgan via Bryan Duxbury)
-   HBASE-524   Problems with getFull
-   HBASE-528   table 'does not exist' when it does
-   HBASE-531   Merge tool won't merge two overlapping regions (port HBASE-483 to
-               trunk)
-   HBASE-537   Wait for hdfs to exit safe mode
-   HBASE-476   RegexpRowFilter behaves incorectly when there are multiple store
-               files (Clint Morgan via Jim Kellerman)
-   HBASE-527   RegexpRowFilter does not work when there are columns from 
-               multiple families (Clint Morgan via Jim Kellerman)
-   HBASE-534   Double-assignment at SPLIT-time
-   HBASE-712   midKey found compacting is the first, not necessarily the optimal
-   HBASE-719   Find out why users have network problems in HBase and not in Hadoop
-               and HConnectionManager (Jean-Daniel Cryans via Stack)
-   HBASE-703   Invalid regions listed by regionserver.jsp (Izaak Rubin via Stack)
-   HBASE-674   Memcache size unreliable
-   HBASE-726   Unit tests won't run because of a typo (Sebastien Rainville via Stack)
-   HBASE-727   Client caught in an infinite loop when trying to connect to cached
-               server locations (Izaak Rubin via Stack)
-   HBASE-732   shell formatting error with the describe command
-               (Izaak Rubin via Stack)
-   HBASE-731   delete, deletefc in HBase shell do not work correctly
-               (Izaak Rubin via Stack)
-   HBASE-734   scan '.META.', {LIMIT => 10} crashes (Izaak Rubin via Stack)
-   HBASE-736   Should have HTable.deleteAll(String row) and HTable.deleteAll(Text row)
-               (Jean-Daniel Cryans via Stack)
-   HBASE-740   ThriftServer getting table names incorrectly (Tim Sell via Stack)
-   HBASE-742   Rename getMetainfo in HTable as getTableDescriptor
-   HBASE-739   HBaseAdmin.createTable() using old HTableDescription doesn't work
-               (Izaak Rubin via Stack)
-   HBASE-744   BloomFilter serialization/deserialization broken
-   HBASE-742   Column length limit is not enforced (Jean-Daniel Cryans via Stack)
-   HBASE-737   Scanner: every cell in a row has the same timestamp
-   HBASE-700   hbase.io.index.interval need be configuratable in column family
-               (Andrew Purtell via Stack)
-   HBASE-62    Allow user add arbitrary key/value pairs to table and column
-               descriptors (Andrew Purtell via Stack)
-   HBASE-34    Set memcache flush size per column (Andrew Purtell via Stack)
-   HBASE-42    Set region split size on table creation (Andrew Purtell via Stack)
-   HBASE-43    Add a read-only attribute to columns (Andrew Purtell via Stack)
-   HBASE-424   Should be able to enable/disable .META. table
-   HBASE-679   Regionserver addresses are still not right in the new tables page
-   HBASE-758   Throwing IOE read-only when should be throwing NSRE
-   HBASE-743   bin/hbase migrate upgrade fails when redo logs exists
-   HBASE-754   The JRuby shell documentation is wrong in "get" and "put"
-               (Jean-Daniel Cryans via Stack)
-   HBASE-756   In HBase shell, the put command doesn't process the timestamp
-               (Jean-Daniel Cryans via Stack)
-   HBASE-757   REST mangles table names (Sishen via Stack)
-   HBASE-706   On OOME, regionserver sticks around and doesn't go down with cluster
-               (Jean-Daniel Cryans via Stack)
-   HBASE-759   TestMetaUtils failing on hudson
-   HBASE-761   IOE: Stream closed exception all over logs
-   HBASE-763   ClassCastException from RowResult.get(String)
-               (Andrew Purtell via Stack)
-   HBASE-764   The name of column request has padding zero using REST interface
-               (Sishen Freecity via Stack)
-   HBASE-750   NPE caused by StoreFileScanner.updateReaders
-   HBASE-769   TestMasterAdmin fails throwing RegionOfflineException when we're
-               expecting IllegalStateException
-   HBASE-766   FileNotFoundException trying to load HStoreFile 'data'
-   HBASE-770   Update HBaseRPC to match hadoop 0.17 RPC
-   HBASE-780   Can't scan '.META.' from new shell
-   HBASE-424   Should be able to enable/disable .META. table
-   HBASE-771   Names legal in 0.1 are not in 0.2; breaks migration
-   HBASE-788   Div by zero in Master.jsp (Clint Morgan via Jim Kellerman)
-   HBASE-791   RowCount doesn't work (Jean-Daniel Cryans via Stack)
-   HBASE-751   dfs exception and regionserver stuck during heavy write load
-   HBASE-793   HTable.getStartKeys() ignores table names when matching columns
-               (Andrew Purtell and Dru Jensen via Stack)
-   HBASE-790   During import, single region blocks requests for >10 minutes,
-               thread dumps, throws out pending requests, and continues
-               (Jonathan Gray via Stack)
-   
-  IMPROVEMENTS
-   HBASE-559   MR example job to count table rows
-   HBASE-596   DemoClient.py (Ivan Begtin via Stack)
-   HBASE-581   Allow adding filters to TableInputFormat (At same time, ensure TIF
-               is subclassable) (David Alves via Stack)
-   HBASE-603   When an exception bubbles out of getRegionServerWithRetries, wrap 
-               the exception with a RetriesExhaustedException
-   HBASE-600   Filters have excessive DEBUG logging
-   HBASE-611   regionserver should do basic health check before reporting
-               alls-well to the master
-   HBASE-614   Retiring regions is not used; exploit or remove
-   HBASE-538   Improve exceptions that come out on client-side
-   HBASE-569   DemoClient.php (Jim R. Wilson via Stack)
-   HBASE-522   Where new Text(string) might be used in client side method calls,
-               add an overload that takes String (Done as part of HBASE-82)
-   HBASE-570   Remove HQL unit test (Done as part of HBASE-82 commit).
-   HBASE-626   Use Visitor pattern in MetaRegion to reduce code clones in HTable
-               and HConnectionManager (Jean-Daniel Cryans via Stack)
-   HBASE-621   Make MAX_VERSIONS work like TTL: In scans and gets, check
-               MAX_VERSIONs setting and return that many only rather than wait on
-               compaction (Jean-Daniel Cryans via Stack)
-   HBASE-504   Allow HMsg's carry a payload: e.g. exception that happened over
-               on the remote side.
-   HBASE-583   RangeRowFilter/ColumnValueFilter to allow choice of rows based on
-               a (lexicographic) comparison to column's values
-               (Clint Morgan via Stack)
-   HBASE-579   Add hadoop 0.17.x
-   HBASE-660   [Migration] addColumn/deleteColumn functionality in MetaUtils
-   HBASE-632   HTable.getMetadata is very inefficient
-   HBASE-671   New UI page displaying all regions in a table should be sorted
-   HBASE-672   Sort regions in the regionserver UI
-   HBASE-677   Make HTable, HRegion, HRegionServer, HStore, and HColumnDescriptor
-               subclassable (Clint Morgan via Stack)
-   HBASE-682   Regularize toString
-   HBASE-672   Sort regions in the regionserver UI
-   HBASE-469   Streamline HStore startup and compactions
-   HBASE-544   Purge startUpdate from internal code and test cases
-   HBASE-557   HTable.getRow() should receive RowResult objects
-   HBASE-452   "region offline" should throw IOException, not IllegalStateException
-   HBASE-541   Update hadoop jars.
-   HBASE-523   package-level javadoc should have example client
-   HBASE-415   Rewrite leases to use DelayedBlockingQueue instead of polling
-   HBASE-35    Make BatchUpdate public in the API
-   HBASE-409   Add build path to svn:ignore list (Edward Yoon via Stack)
-   HBASE-408   Add .classpath and .project to svn:ignore list
-               (Edward Yoon via Stack)
-   HBASE-410   Speed up the test suite (make test timeout 5 instead of 15 mins).
-   HBASE-281   Shell should allow deletions in .META. and -ROOT- tables
-               (Edward Yoon & Bryan Duxbury via Stack)
-   HBASE-56    Unnecessary HQLClient Object creation in a shell loop
-               (Edward Yoon via Stack)
-   HBASE-3     rest server: configure number of threads for jetty
-               (Bryan Duxbury via Stack)
-   HBASE-416   Add apache-style logging to REST server and add setting log
-               level, etc.
-   HBASE-406   Remove HTable and HConnection close methods
-               (Bryan Duxbury via Stack)
-   HBASE-418   Move HMaster and related classes into master package
-               (Bryan Duxbury via Stack)
-   HBASE-410   Speed up the test suite - Apparently test timeout was too
-               aggressive for Hudson. TestLogRolling timed out even though it
-               was operating properly. Change test timeout to 10 minutes.
-   HBASE-436   website: http://hadoop.apache.org/hbase
-   HBASE-417   Factor TableOperation and subclasses into separate files from
-               HMaster (Bryan Duxbury via Stack)
-   HBASE-440   Add optional log roll interval so that log files are garbage
-               collected
-   HBASE-407   Keep HRegionLocation information in LRU structure 
-   HBASE-444   hbase is very slow at determining table is not present
-   HBASE-438   XMLOutputter state should be initialized.
-   HBASE-414   Move client classes into client package
-   HBASE-79    When HBase needs to be migrated, it should display a message on
-               stdout, not just in the logs
-   HBASE-461   Simplify leases.
-   HBASE-419   Move RegionServer and related classes into regionserver package
-   HBASE-457   Factor Master into Master, RegionManager, and ServerManager
-   HBASE-464   HBASE-419 introduced javadoc errors
-   HBASE-468   Move HStoreKey back to o.a.h.h
-   HBASE-442   Move internal classes out of HRegionServer
-   HBASE-466   Move HMasterInterface, HRegionInterface, and 
-               HMasterRegionInterface into o.a.h.h.ipc
-   HBASE-479   Speed up TestLogRolling
-   HBASE-480   Tool to manually merge two regions
-   HBASE-477   Add support for an HBASE_CLASSPATH
-   HBASE-443   Move internal classes out of HStore
-   HBASE-515   At least double default timeouts between regionserver and master
-   HBASE-529   RegionServer needs to recover if datanode goes down
-   HBASE-456   Clearly state which ports need to be opened in order to run HBase
-   HBASE-536   Remove MiniDFS startup from MiniHBaseCluster
-   HBASE-521   Improve client scanner interface
-   HBASE-562   Move Exceptions to subpackages (Jean-Daniel Cryans via Stack)
-   HBASE-631   HTable.getRow() for only a column family
-               (Jean-Daniel Cryans via Stack)
-   HBASE-731   Add a meta refresh tag to the Web ui for master and region server
-               (Jean-Daniel Cryans via Stack)
-   HBASE-735   hbase shell doesn't trap CTRL-C signal (Jean-Daniel Cryans via Stack)
-   HBASE-730   On startup, rinse STARTCODE and SERVER from .META.
-               (Jean-Daniel Cryans via Stack)
-   HBASE-738   overview.html in need of updating (Izaak Rubin via Stack)
-   HBASE-745   scaling of one regionserver, improving memory and cpu usage (partial)
-               (LN via Stack)
-   HBASE-746   Batching row mutations via thrift (Tim Sell via Stack)
-   HBASE-772   Up default lease period from 60 to 120 seconds
-   HBASE-779   Test changing hbase.hregion.memcache.block.multiplier to 2
-   HBASE-783   For single row, single family retrieval, getRow() works half
-               as fast as getScanner().next() (Jean-Daniel Cryans via Stack)
-   HBASE-789   add clover coverage report targets (Rong-en Fan via Stack)
-
-  NEW FEATURES
-   HBASE-47    Option to set TTL for columns in hbase
-               (Andrew Purtell via Bryan Duxbury and Stack)
-   HBASE-23    UI listing regions should be sorted by address and show additional
-               region state (Jean-Daniel Cryans via Stack)
-   HBASE-639   Add HBaseAdmin.getTableDescriptor function
-   HBASE-533   Region Historian
-   HBASE-487   Replace hql w/ a hbase-friendly jirb or jython shell
-   HBASE-548   Tool to online single region
-   HBASE-71    Master should rebalance region assignments periodically
-   HBASE-512   Add configuration for global aggregate memcache size
-   HBASE-40    Add a method of getting multiple (but not all) cells for a row
-               at once
-   HBASE-506   When an exception has to escape ServerCallable due to exhausted
-               retries, show all the exceptions that lead to this situation
-   HBASE-747   Add a simple way to do batch updates of many rows (Jean-Daniel
-               Cryans via JimK)
-   HBASE-733   Enhance Cell so that it can contain multiple values at multiple
-               timestamps
-   HBASE-511   Do exponential backoff in clients on NSRE, WRE, ISE, etc.
-               (Andrew Purtell via Jim Kellerman)
-   
-  OPTIMIZATIONS
-   HBASE-430   Performance: Scanners and getRow return maps with duplicate data
-
-Release 0.1.3 - 07/25/2008
-
-  BUG FIXES
-   HBASE-644   DroppedSnapshotException but RegionServer doesn't restart
-   HBASE-645   EOFException opening region (HBASE-550 redux)
-   HBASE-641   Improve master split logging
-   HBASE-642   Splitting log in a hostile environment -- bad hdfs -- we drop
-               write-ahead-log edits
-   HBASE-646   EOFException opening HStoreFile info file (spin on HBASE-645 and 550)
-   HBASE-648   If mapfile index is empty, run repair
-   HBASE-659   HLog#cacheFlushLock not cleared; hangs a region
-   HBASE-663   Incorrect sequence number for cache flush
-   HBASE-652   Dropping table fails silently if table isn't disabled 
-   HBASE-674   Memcache size unreliable
-   HBASE-665   server side scanner doesn't honor stop row
-   HBASE-681   NPE in Memcache (Clint Morgan via Jim Kellerman)
-   HBASE-680   config parameter hbase.io.index.interval should be
-               hbase.index.interval, accroding to HBaseMapFile.HbaseWriter
-               (LN via Stack)
-   HBASE-684   unnecessary iteration in HMemcache.internalGet? got much better
-               reading performance after break it (LN via Stack)
-   HBASE-686   MemcacheScanner didn't return the first row(if it exists),
-               because HScannerInterface's output incorrect (LN via Jim Kellerman)
-   HBASE-613   Timestamp-anchored scanning fails to find all records
-   HBASE-709   Deadlock while rolling WAL-log while finishing flush
-   HBASE-707   High-load import of data into single table/family never triggers split
-   HBASE-710   If clocks are way off, then we can have daughter split come
-               before rather than after its parent in .META.
-
-Release 0.1.2 - 05/13/2008
-
-  BUG FIXES
-   HBASE-577   NPE getting scanner
-   HBASE-574   HBase does not load hadoop native libs (Rong-En Fan via Stack).
-   HBASE-11    Unexpected exits corrupt DFS - best we can do until we have at
-               least a subset of HADOOP-1700
-   HBASE-573   HBase does not read hadoop-*.xml for dfs configuration after
-               moving out hadoop/contrib
-   HBASE-12    when hbase regionserver restarts, it says "impossible state for
-               createLease()"
-   HBASE-575   master dies with stack overflow error if rootdir isn't qualified
-   HBASE-500   Regionserver stuck on exit
-   HBASE-582   HBase 554 forgot to clear results on each iteration caused by a filter
-               (Clint Morgan via Stack)
-   HBASE-532   Odd interaction between HRegion.get, HRegion.deleteAll and compactions
-   HBASE-590   HBase migration tool does not get correct FileSystem or root
-               directory if configuration is not correct
-   HBASE-595   RowFilterInterface.rowProcessed() is called *before* fhe final
-               filtering decision is made (Clint Morgan via Stack)
-   HBASE-586   HRegion runs HStore memcache snapshotting -- fix it so only HStore
-               knows about workings of memcache
-   HBASE-572   Backport HBASE-512 to 0.1 branch
-   HBASE-588   Still a 'hole' in scanners, even after HBASE-532
-   HBASE-604   Don't allow CLASSPATH from environment pollute the hbase CLASSPATH
-   HBASE-608   HRegionServer::getThisIP() checks hadoop config var for dns interface name
-               (Jim R. Wilson via Stack)
-   HBASE-609   Master doesn't see regionserver edits because of clock skew
-   HBASE-607   MultiRegionTable.makeMultiRegionTable is not deterministic enough
-               for regression tests
-   HBASE-478   offlining of table does not run reliably
-   HBASE-618   We always compact if 2 files, regardless of the compaction threshold setting
-   HBASE-619   Fix 'logs' link in UI
-   HBASE-620   testmergetool failing in branch and trunk since hbase-618 went in
-   
-  IMPROVEMENTS
-   HBASE-559   MR example job to count table rows
-   HBASE-578   Upgrade branch to 0.16.3 hadoop.
-   HBASE-596   DemoClient.py (Ivan Begtin via Stack)
-
-
-Release 0.1.1 - 04/11/2008
-
-  BUG FIXES
-   HBASE-550   EOF trying to read reconstruction log stops region deployment
-   HBASE-551   Master stuck splitting server logs in shutdown loop; on each
-               iteration, edits are aggregated up into the millions
-   HBASE-505   Region assignments should never time out so long as the region
-               server reports that it is processing the open request
-   HBASE-552   Fix bloom filter bugs (Andrzej Bialecki via Jim Kellerman)
-   HBASE-507   Add sleep between retries
-   HBASE-555   Only one Worker in HRS; on startup, if assigned tens of regions,
-               havoc of reassignments because open processing is done in series
-   HBASE-547   UI shows hadoop version, not hbase version
-   HBASE-561   HBase package does not include LICENSE.txt nor build.xml
-   HBASE-556   Add 0.16.2 to hbase branch -- if it works
-   HBASE-563   TestRowFilterAfterWrite erroneously sets master address to
-               0.0.0.0:60100 rather than relying on conf
-   HBASE-554   filters generate StackOverflowException (Clint Morgan via
-               Jim Kellerman)
-   HBASE-567   Reused BatchUpdate instances accumulate BatchOperations
-
-  NEW FEATURES
-   HBASE-548   Tool to online single region
-
-Release 0.1.0
-
-  INCOMPATIBLE CHANGES
-   HADOOP-2750 Deprecated methods startBatchUpdate, commitBatch, abortBatch, 
-               and renewLease have been removed from HTable (Bryan Duxbury via
-               Jim Kellerman)
-   HADOOP-2786 Move hbase out of hadoop core
-   HBASE-403   Fix build after move of hbase in svn
-   HBASE-494   Up IPC version on 0.1 branch so we cannot mistakenly connect
-               with a hbase from 0.16.0
-
-  NEW FEATURES
-   HBASE-506   When an exception has to escape ServerCallable due to exhausted retries, 
-               show all the exceptions that lead to this situation
-
-  OPTIMIZATIONS
-
-  BUG FIXES
-   HADOOP-2731 Under load, regions become extremely large and eventually cause
-               region servers to become unresponsive
-   HADOOP-2693 NPE in getClosestRowBefore (Bryan Duxbury & Stack)
-   HADOOP-2599 Some minor improvements to changes in HADOOP-2443
-               (Bryan Duxbury & Stack)
-   HADOOP-2773 Master marks region offline when it is recovering from a region
-               server death
-   HBASE-425   Fix doc. so it accomodates new hbase untethered context
-   HBase-421   TestRegionServerExit broken
-   HBASE-426   hbase can't find remote filesystem
-   HBASE-446   Fully qualified hbase.rootdir doesn't work
-   HBASE-428   Under continuous upload of rows, WrongRegionExceptions are
-               thrown that reach the client even after retries
-   HBASE-490   Doubly-assigned .META.; master uses one and clients another
-   HBASE-496   impossible state for createLease writes 400k lines in about 15mins
-   HBASE-472   Passing on edits, we dump all to log
-   HBASE-79    When HBase needs to be migrated, it should display a message on
-               stdout, not just in the logs
-   HBASE-495   No server address listed in .META.
-   HBASE-433 HBASE-251 Region server should delete restore log after successful
-               restore, Stuck replaying the edits of crashed machine.
-   HBASE-27    hregioninfo cell empty in meta table
-   HBASE-501   Empty region server address in info:server entry and a
-               startcode of -1 in .META.
-   HBASE-516   HStoreFile.finalKey does not update the final key if it is not
-               the top region of a split region
-   HBASE-524   Problems with getFull
-   HBASE-514   table 'does not exist' when it does
-   HBASE-537   Wait for hdfs to exit safe mode
-   HBASE-534   Double-assignment at SPLIT-time
-   
-  IMPROVEMENTS
-   HADOOP-2555 Refactor the HTable#get and HTable#getRow methods to avoid
-               repetition of retry-on-failure logic (thanks to Peter Dolan and
-               Bryan Duxbury)
-   HBASE-281   Shell should allow deletions in .META. and -ROOT- tables
-   HBASE-480   Tool to manually merge two regions
-   HBASE-477   Add support for an HBASE_CLASSPATH
-   HBASE-515   At least double default timeouts between regionserver and master
-   HBASE-482   package-level javadoc should have example client or at least 
-               point at the FAQ
-   HBASE-497   RegionServer needs to recover if datanode goes down
-   HBASE-456   Clearly state which ports need to be opened in order to run HBase
-   HBASE-483   Merge tool won't merge two overlapping regions
-   HBASE-476   RegexpRowFilter behaves incorectly when there are multiple store
-               files (Clint Morgan via Jim Kellerman)
-   HBASE-527   RegexpRowFilter does not work when there are columns from 
-               multiple families (Clint Morgan via Jim Kellerman)
-              
-Release 0.16.0
-
-  2008/02/04   HBase is now a subproject of Hadoop. The first HBase release as
-               a subproject will be release 0.1.0 which will be equivalent to
-               the version of HBase included in Hadoop 0.16.0. In order to
-               accomplish this, the HBase portion of HBASE-288 (formerly 
-               HADOOP-1398) has been backed out. Once 0.1.0 is frozen (depending
-               mostly on changes to infrastructure due to becoming a sub project
-               instead of a contrib project), this patch will re-appear on HBase
-               trunk.
-
-  INCOMPATIBLE CHANGES
-   HADOOP-2056 A table with row keys containing colon fails to split regions
-   HADOOP-2079 Fix generated HLog, HRegion names
-   HADOOP-2495 Minor performance improvements: Slim-down BatchOperation, etc. 
-   HADOOP-2506 Remove the algebra package
-   HADOOP-2519 Performance improvements: Customized RPC serialization
-   HADOOP-2478 Restructure how HBase lays out files in the file system (phase 1)
-               (test input data)
-   HADOOP-2478 Restructure how HBase lays out files in the file system (phase 2)
-               Includes migration tool org.apache.hadoop.hbase.util.Migrate
-   HADOOP-2558 org.onelab.filter.BloomFilter class uses 8X the memory it should
-               be using
-
-  NEW FEATURES
-    HADOOP-2061 Add new Base64 dialects
-    HADOOP-2084 Add a LocalHBaseCluster
-    HADOOP-2068 RESTful interface (Bryan Duxbury via Stack)
-    HADOOP-2316 Run REST servlet outside of master
-                (Bryan Duxbury & Stack)
-    HADOOP-1550 No means of deleting a'row' (Bryan Duxbuery via Stack)
-    HADOOP-2384 Delete all members of a column family on a specific row
-                (Bryan Duxbury via Stack)
-    HADOOP-2395 Implement "ALTER TABLE ... CHANGE column" operation
-                (Bryan Duxbury via Stack)
-    HADOOP-2240 Truncate for hbase (Edward Yoon via Stack)
-    HADOOP-2389 Provide multiple language bindings for HBase (Thrift)
-                (David Simpson via Stack)
-
-  OPTIMIZATIONS
-   HADOOP-2479 Save on number of Text object creations
-   HADOOP-2485 Make mapfile index interval configurable (Set default to 32
-               instead of 128)
-   HADOOP-2553 Don't make Long objects calculating hbase type hash codes
-   HADOOP-2377 Holding open MapFile.Readers is expensive, so use less of them
-   HADOOP-2407 Keeping MapFile.Reader open is expensive: Part 2
-   HADOOP-2533 Performance: Scanning, just creating MapWritable in next
-               consumes >20% CPU
-   HADOOP-2443 Keep lazy cache of regions in client rather than an
-               'authoritative' list (Bryan Duxbury via Stack)
-   HADOOP-2600 Performance: HStore.getRowKeyAtOrBefore should use
-               MapFile.Reader#getClosest (before)
-               (Bryan Duxbury via Stack)
-
-  BUG FIXES
-   HADOOP-2059 In tests, exceptions in min dfs shutdown should not fail test
-               (e.g. nightly #272)
-   HADOOP-2064 TestSplit assertion and NPE failures (Patch build #952 and #953)
-   HADOOP-2124 Use of `hostname` does not work on Cygwin in some cases
-   HADOOP-2083 TestTableIndex failed in #970 and #956
-   HADOOP-2109 Fixed race condition in processing server lease timeout.
-   HADOOP-2137 hql.jsp : The character 0x19 is not valid
-   HADOOP-2109 Fix another race condition in processing dead servers,
-               Fix error online meta regions: was using region name and not
-               startKey as key for map.put. Change TestRegionServerExit to
-               always kill the region server for the META region. This makes
-               the test more deterministic and getting META reassigned was
-               problematic.
-   HADOOP-2155 Method expecting HBaseConfiguration throws NPE when given Configuration
-   HADOOP-2156 BufferUnderflowException for un-named HTableDescriptors
-   HADOOP-2161 getRow() is orders of magnitudes slower than get(), even on rows
-               with one column (Clint Morgan and Stack)
-   HADOOP-2040 Hudson hangs AFTER test has finished
-   HADOOP-2274 Excess synchronization introduced by HADOOP-2139 negatively
-               impacts performance
-   HADOOP-2196 Fix how hbase sits in hadoop 'package' product
-   HADOOP-2276 Address regression caused by HADOOP-2274, fix HADOOP-2173 (When
-               the master times out a region servers lease, the region server
-               may not restart)
-   HADOOP-2253 getRow can return HBASE::DELETEVAL cells
-               (Bryan Duxbury via Stack)
-   HADOOP-2295 Fix assigning a region to multiple servers
-   HADOOP-2234 TableInputFormat erroneously aggregates map values
-   HADOOP-2308 null regioninfo breaks meta scanner
-   HADOOP-2304 Abbreviated symbol parsing error of dir path in jar command
-               (Edward Yoon via Stack)
-   HADOOP-2320 Committed TestGet2 is managled (breaks build).
-   HADOOP-2322 getRow(row, TS) client interface not properly connected
-   HADOOP-2309 ConcurrentModificationException doing get of all region start keys
-   HADOOP-2321 TestScanner2 does not release resources which sometimes cause the
-               test to time out
-   HADOOP-2315 REST servlet doesn't treat / characters in row key correctly
-               (Bryan Duxbury via Stack)
-   HADOOP-2332 Meta table data selection in Hbase Shell
-               (Edward Yoon via Stack)
-   HADOOP-2347 REST servlet not thread safe but run in a threaded manner
-               (Bryan Duxbury via Stack)
-   HADOOP-2365 Result of HashFunction.hash() contains all identical values
-   HADOOP-2362 Leaking hdfs file handle on region split
-   HADOOP-2338 Fix NullPointerException in master server.
-   HADOOP-2380 REST servlet throws NPE when any value node has an empty string
-               (Bryan Duxbury via Stack)
-   HADOOP-2350 Scanner api returns null row names, or skips row names if
-               different column families do not have entries for some rows
-   HADOOP-2283 AlreadyBeingCreatedException (Was: Stuck replay of failed
-               regionserver edits)
-   HADOOP-2392 TestRegionServerExit has new failure mode since HADOOP-2338
-   HADOOP-2324 Fix assertion failures in TestTableMapReduce
-   HADOOP-2396 NPE in HMaster.cancelLease
-   HADOOP-2397 The only time that a meta scanner should try to recover a log is
-               when the master is starting
-   HADOOP-2417 Fix critical shutdown problem introduced by HADOOP-2338
-   HADOOP-2418 Fix assertion failures in TestTableMapReduce, TestTableIndex,
-               and TestTableJoinMapReduce
-   HADOOP-2414 Fix ArrayIndexOutOfBoundsException in bloom filters.
-   HADOOP-2430 Master will not shut down if there are no active region servers
-   HADOOP-2199 Add tools for going from hregion filename to region name in logs
-   HADOOP-2441 Fix build failures in TestHBaseCluster
-   HADOOP-2451 End key is incorrectly assigned in many region splits
-   HADOOP-2455 Error in Help-string of CREATE command (Edward Yoon via Stack)
-   HADOOP-2465 When split parent regions are cleaned up, not all the columns are
-               deleted
-   HADOOP-2468 TestRegionServerExit failed in Hadoop-Nightly #338
-   HADOOP-2467 scanner truncates resultset when > 1 column families
-   HADOOP-2503 REST Insert / Select encoding issue (Bryan Duxbury via Stack)
-   HADOOP-2505 formatter classes missing apache license
-   HADOOP-2504 REST servlet method for deleting a scanner was not properly
-               mapped (Bryan Duxbury via Stack)
-   HADOOP-2507 REST servlet does not properly base64 row keys and column names
-               (Bryan Duxbury via Stack)
-   HADOOP-2530 Missing type in new hbase custom RPC serializer
-   HADOOP-2490 Failure in nightly #346 (Added debugging of hudson failures).
-   HADOOP-2558 fixes for build up on hudson (part 1, part 2, part 3, part 4)
-   HADOOP-2500 Unreadable region kills region servers
-   HADOOP-2579 Initializing a new HTable object against a nonexistent table
-               throws a NoServerForRegionException instead of a
-               TableNotFoundException when a different table has been created
-               previously (Bryan Duxbury via Stack)
-   HADOOP-2587 Splits blocked by compactions cause region to be offline for
-               duration of compaction. 
-   HADOOP-2592 Scanning, a region can let out a row that its not supposed
-               to have
-   HADOOP-2493 hbase will split on row when the start and end row is the
-               same cause data loss (Bryan Duxbury via Stack)
-   HADOOP-2629 Shell digests garbage without complaint
-   HADOOP-2619 Compaction errors after a region splits
-   HADOOP-2621 Memcache flush flushing every 60 secs with out considering
-               the max memcache size
-   HADOOP-2584 Web UI displays an IOException instead of the Tables
-   HADOOP-2650 Remove Writables.clone and use WritableUtils.clone from
-               hadoop instead
-   HADOOP-2668 Documentation and improved logging so fact that hbase now
-               requires migration comes as less of a surprise
-   HADOOP-2686 Removed tables stick around in .META.
-   HADOOP-2688 IllegalArgumentException processing a shutdown stops
-               server going down and results in millions of lines of output
-   HADOOP-2706 HBase Shell crash
-   HADOOP-2712 under load, regions won't split
-   HADOOP-2675 Options not passed to rest/thrift
-   HADOOP-2722 Prevent unintentional thread exit in region server and master
-   HADOOP-2718 Copy Constructor HBaseConfiguration(Configuration) will override
-               hbase configurations if argumant is not an instance of
-               HBaseConfiguration.
-   HADOOP-2753 Back out 2718; programmatic config works but hbase*xml conf
-               is overridden
-   HADOOP-2718 Copy Constructor HBaseConfiguration(Configuration) will override
-               hbase configurations if argumant is not an instance of
-               HBaseConfiguration (Put it back again).
-   HADOOP-2631 2443 breaks HTable.getStartKeys when there is more than one
-               table or table you are enumerating isn't the first table
-   Delete empty file: src/contrib/hbase/src/java/org/apache/hadoop/hbase/mapred/
-               TableOutputCollector.java per Nigel Daley
-   
-  IMPROVEMENTS
-   HADOOP-2401 Add convenience put method that takes writable
-               (Johan Oskarsson via Stack)
-   HADOOP-2074 Simple switch to enable DEBUG level-logging in hbase
-   HADOOP-2088 Make hbase runnable in $HADOOP_HOME/build(/contrib/hbase)
-   HADOOP-2126 Use Bob Jenkins' hash for bloom filters
-   HADOOP-2157 Make Scanners implement Iterable
-   HADOOP-2176 Htable.deleteAll documentation is ambiguous
-   HADOOP-2139 (phase 1) Increase parallelism in region servers.
-   HADOOP-2267 [Hbase Shell] Change the prompt's title from 'hbase' to 'hql'.
-               (Edward Yoon via Stack)
-   HADOOP-2139 (phase 2) Make region server more event driven
-   HADOOP-2289 Useless efforts of looking for the non-existant table in select
-               command.
-               (Edward Yoon via Stack)
-   HADOOP-2257 Show a total of all requests and regions on the web ui
-               (Paul Saab via Stack)
-   HADOOP-2261 HTable.abort no longer throws exception if there is no active update.
-   HADOOP-2287 Make hbase unit tests take less time to complete.
-   HADOOP-2262 Retry n times instead of n**2 times.
-   HADOOP-1608 Relational Algrebra Operators
-               (Edward Yoon via Stack)
-   HADOOP-2198 HTable should have method to return table metadata
-   HADOOP-2296 hbase shell: phantom columns show up from select command
-   HADOOP-2297 System.exit() Handling in hbase shell jar command
-               (Edward Yoon via Stack)
-   HADOOP-2224 Add HTable.getRow(ROW, ts)
-               (Bryan Duxbury via Stack)
-   HADOOP-2339 Delete command with no WHERE clause
-               (Edward Yoon via Stack)
-   HADOOP-2299 Support inclusive scans (Bryan Duxbury via Stack)
-   HADOOP-2333 Client side retries happen at the wrong level
-   HADOOP-2357 Compaction cleanup; less deleting + prevent possible file leaks
-   HADOOP-2392 TestRegionServerExit has new failure mode since HADOOP-2338
-   HADOOP-2370 Allow column families with an unlimited number of versions
-               (Edward Yoon via Stack)
-   HADOOP-2047 Add an '--master=X' and '--html' command-line parameters to shell
-               (Edward Yoon via Stack)
-   HADOOP-2351 If select command returns no result, it doesn't need to show the
-               header information (Edward Yoon via Stack)
-   HADOOP-2285 Add being able to shutdown regionservers (Dennis Kubes via Stack)
-   HADOOP-2458 HStoreFile.writeSplitInfo should just call 
-               HStoreFile.Reference.write
-   HADOOP-2471 Add reading/writing MapFile to PerformanceEvaluation suite
-   HADOOP-2522 Separate MapFile benchmark from PerformanceEvaluation
-               (Tom White via Stack)
-   HADOOP-2502 Insert/Select timestamp, Timestamp data type in HQL
-               (Edward Yoon via Stack)
-   HADOOP-2450 Show version (and svn revision) in hbase web ui
-   HADOOP-2472 Range selection using filter (Edward Yoon via Stack)
-   HADOOP-2548 Make TableMap and TableReduce generic
-               (Frederik Hedberg via Stack)
-   HADOOP-2557 Shell count function (Edward Yoon via Stack)
-   HADOOP-2589 Change an classes/package name from Shell to hql
-               (Edward Yoon via Stack)
-   HADOOP-2545 hbase rest server should be started with hbase-daemon.sh
-   HADOOP-2525 Same 2 lines repeated 11 million times in HMaster log upon
-               HMaster shutdown
-   HADOOP-2616 hbase not spliting when the total size of region reaches max
-               region size * 1.5
-   HADOOP-2643 Make migration tool smarter.
-   
-Release 0.15.1
-Branch 0.15
-
-  INCOMPATIBLE CHANGES
-    HADOOP-1931 Hbase scripts take --ARG=ARG_VALUE when should be like hadoop
-                and do ---ARG ARG_VALUE
-
-  NEW FEATURES
-    HADOOP-1768 FS command using Hadoop FsShell operations
-                (Edward Yoon via Stack)
-    HADOOP-1784 Delete: Fix scanners and gets so they work properly in presence
-                of deletes. Added a deleteAll to remove all cells equal to or
-                older than passed timestamp.  Fixed compaction so deleted cells
-                do not make it out into compacted output.  Ensure also that
-                versions > column max are dropped compacting.
-    HADOOP-1720 Addition of HQL (Hbase Query Language) support in Hbase Shell.
-                The old shell syntax has been replaced by HQL, a small SQL-like
-                set of operators, for creating, altering, dropping, inserting,
-                deleting, and selecting, etc., data in hbase.
-                (Inchul Song and Edward Yoon via Stack)
-    HADOOP-1913 Build a Lucene index on an HBase table
-                (Ning Li via Stack)
-    HADOOP-1957 Web UI with report on cluster state and basic browsing of tables
-
-  OPTIMIZATIONS
-
-  BUG FIXES
-    HADOOP-1527 Region server won't start because logdir exists
-    HADOOP-1723 If master asks region server to shut down, by-pass return of
-                shutdown message
-    HADOOP-1729 Recent renaming or META tables breaks hbase shell
-    HADOOP-1730 unexpected null value causes META scanner to exit (silently)
-    HADOOP-1747 On a cluster, on restart, regions multiply assigned
-    HADOOP-1776 Fix for sporadic compaction failures closing and moving
-                compaction result
-    HADOOP-1780 Regions are still being doubly assigned
-    HADOOP-1797 Fix NPEs in MetaScanner constructor
-    HADOOP-1799 Incorrect classpath in binary version of Hadoop
-    HADOOP-1805 Region server hang on exit
-    HADOOP-1785 TableInputFormat.TableRecordReader.next has a bug
-                (Ning Li via Stack)
-    HADOOP-1800 output should default utf8 encoding
-    HADOOP-1801 When hdfs is yanked out from under hbase, hbase should go down gracefully
-    HADOOP-1813 OOME makes zombie of region server
-    HADOOP-1814	TestCleanRegionServerExit fails too often on Hudson
-    HADOOP-1820 Regionserver creates hlogs without bound
-                (reverted 2007/09/25) (Fixed 2007/09/30)
-    HADOOP-1821 Replace all String.getBytes() with String.getBytes("UTF-8")
-    HADOOP-1832 listTables() returns duplicate tables
-    HADOOP-1834 Scanners ignore timestamp passed on creation
-    HADOOP-1847 Many HBase tests do not fail well.
-    HADOOP-1847 Many HBase tests do not fail well. (phase 2)
-    HADOOP-1870 Once file system failure has been detected, don't check it again
-                and get on with shutting down the hbase cluster.
-    HADOOP-1888 NullPointerException in HMemcacheScanner (reprise)
-    HADOOP-1903 Possible data loss if Exception happens between snapshot and
-                flush to disk.
-    HADOOP-1920 Wrapper scripts broken when hadoop in one location and hbase in
-                another
-    HADOOP-1923, HADOOP-1924 a) tests fail sporadically because set up and tear
-                 down is inconsistent b) TestDFSAbort failed in nightly #242
-    HADOOP-1929 Add hbase-default.xml to hbase jar
-    HADOOP-1941 StopRowFilter throws NPE when passed null row
-    HADOOP-1966 Make HBase unit tests more reliable in the Hudson environment.
-    HADOOP-1975 HBase tests failing with java.lang.NumberFormatException
-    HADOOP-1990 Regression test instability affects nightly and patch builds
-    HADOOP-1996 TestHStoreFile fails on windows if run multiple times
-    HADOOP-1937 When the master times out a region server's lease, it is too 
-                aggressive in reclaiming the server's log.
-    HADOOP-2004 webapp hql formatting bugs 
-    HADOOP_2011 Make hbase daemon scripts take args in same order as hadoop
-                daemon scripts
-    HADOOP-2017 TestRegionServerAbort failure in patch build #903 and
-                nightly #266
-    HADOOP-2029 TestLogRolling fails too often in patch and nightlies
-    HADOOP-2038 TestCleanRegionExit failed in patch build #927
-
-  IMPROVEMENTS
-    HADOOP-1737 Make HColumnDescriptor data publically members settable
-    HADOOP-1746 Clean up findbugs warnings
-    HADOOP-1757 Bloomfilters: single argument constructor, use enum for bloom
-                filter types
-    HADOOP-1760 Use new MapWritable and SortedMapWritable classes from
-                org.apache.hadoop.io
-    HADOOP-1793 (Phase 1) Remove TestHClient (Phase2) remove HClient.
-    HADOOP-1794 Remove deprecated APIs
-    HADOOP-1802 Startup scripts should wait until hdfs as cleared 'safe mode'
-    HADOOP-1833 bin/stop_hbase.sh returns before it completes
-                (Izaak Rubin via Stack) 
-    HADOOP-1835 Updated Documentation for HBase setup/installation
-                (Izaak Rubin via Stack)
-    HADOOP-1868 Make default configuration more responsive
-    HADOOP-1884 Remove useless debugging log messages from hbase.mapred
-    HADOOP-1856 Add Jar command to hbase shell using Hadoop RunJar util
-                (Edward Yoon via Stack)
-    HADOOP-1928 Have master pass the regionserver the filesystem to use
-    HADOOP-1789 Output formatting
-    HADOOP-1960 If a region server cannot talk to the master before its lease
-                times out, it should shut itself down
-    HADOOP-2035 Add logo to webapps
-
-
-Below are the list of changes before 2007-08-18
-
-  1. HADOOP-1384. HBase omnibus patch. (jimk, Vuk Ercegovac, and Michael Stack)
-  2. HADOOP-1402. Fix javadoc warnings in hbase contrib. (Michael Stack)
-  3. HADOOP-1404. HBase command-line shutdown failing (Michael Stack)
-  4. HADOOP-1397. Replace custom hbase locking with 
-     java.util.concurrent.locks.ReentrantLock (Michael Stack)
-  5. HADOOP-1403. HBase reliability - make master and region server more fault
-     tolerant.
-  6. HADOOP-1418. HBase miscellaneous: unit test for HClient, client to do
-     'Performance Evaluation', etc.
-  7. HADOOP-1420, HADOOP-1423. Findbugs changes, remove reference to removed 
-     class HLocking.
-  8. HADOOP-1424. TestHBaseCluster fails with IllegalMonitorStateException. Fix
-     regression introduced by HADOOP-1397.
-  9. HADOOP-1426. Make hbase scripts executable + add test classes to CLASSPATH.
- 10. HADOOP-1430. HBase shutdown leaves regionservers up.
- 11. HADOOP-1392. Part1: includes create/delete table; enable/disable table;
-     add/remove column.
- 12. HADOOP-1392. Part2: includes table compaction by merging adjacent regions
-     that have shrunk in size.
- 13. HADOOP-1445 Support updates across region splits and compactions
- 14. HADOOP-1460 On shutdown IOException with complaint 'Cannot cancel lease
-     that is not held'
- 15. HADOOP-1421 Failover detection, split log files.
-     For the files modified, also clean up javadoc, class, field and method 
-     visibility (HADOOP-1466)
- 16. HADOOP-1479 Fix NPE in HStore#get if store file only has keys < passed key.
- 17. HADOOP-1476 Distributed version of 'Performance Evaluation' script
- 18. HADOOP-1469 Asychronous table creation
- 19. HADOOP-1415 Integrate BSD licensed bloom filter implementation.
- 20. HADOOP-1465 Add cluster stop/start scripts for hbase
- 21. HADOOP-1415 Provide configurable per-column bloom filters - part 2.
- 22. HADOOP-1498. Replace boxed types with primitives in many places.
- 23. HADOOP-1509.  Made methods/inner classes in HRegionServer and HClient protected
-     instead of private for easier extension. Also made HRegion and HRegionInfo public too.
-     Added an hbase-default.xml property for specifying what HRegionInterface extension to use
-     for proxy server connection. (James Kennedy via Jim Kellerman)
- 24. HADOOP-1534. [hbase] Memcache scanner fails if start key not present
- 25. HADOOP-1537. Catch exceptions in testCleanRegionServerExit so we can see
-     what is failing.
- 26. HADOOP-1543 [hbase] Add HClient.tableExists
- 27. HADOOP-1519 [hbase] map/reduce interface for HBase.  (Vuk Ercegovac and
-     Jim Kellerman)
- 28. HADOOP-1523 Hung region server waiting on write locks 
- 29. HADOOP-1560 NPE in MiniHBaseCluster on Windows
- 30. HADOOP-1531 Add RowFilter to HRegion.HScanner
-     Adds a row filtering interface and two implemenentations: A page scanner,
-     and a regex row/column-data matcher. (James Kennedy via Stack)
- 31. HADOOP-1566 Key-making utility
- 32. HADOOP-1415 Provide configurable per-column bloom filters. 
-     HADOOP-1466 Clean up visibility and javadoc issues in HBase.
- 33. HADOOP-1538 Provide capability for client specified time stamps in HBase
-     HADOOP-1466 Clean up visibility and javadoc issues in HBase.
- 34. HADOOP-1589 Exception handling in HBase is broken over client server connections
- 35. HADOOP-1375 a simple parser for hbase (Edward Yoon via Stack)
- 36. HADOOP-1600 Update license in HBase code
- 37. HADOOP-1589 Exception handling in HBase is broken over client server
- 38. HADOOP-1574 Concurrent creates of a table named 'X' all succeed
- 39. HADOOP-1581 Un-openable tablename bug
- 40. HADOOP-1607 [shell] Clear screen command (Edward Yoon via Stack)
- 41. HADOOP-1614 [hbase] HClient does not protect itself from simultaneous updates
- 42. HADOOP-1468 Add HBase batch update to reduce RPC overhead
- 43. HADOOP-1616 Sporadic TestTable failures
- 44. HADOOP-1615 Replacing thread notification-based queue with 
-     java.util.concurrent.BlockingQueue in HMaster, HRegionServer
- 45. HADOOP-1606 Updated implementation of RowFilterSet, RowFilterInterface
-     (Izaak Rubin via Stack)
- 46. HADOOP-1579 Add new WhileMatchRowFilter and StopRowFilter filters
-    (Izaak Rubin via Stack)
- 47. HADOOP-1637 Fix to HScanner to Support Filters, Add Filter Tests to
-     TestScanner2 (Izaak Rubin via Stack)
- 48. HADOOP-1516 HClient fails to readjust when ROOT or META redeployed on new
-     region server
- 49. HADOOP-1646 RegionServer OOME's under sustained, substantial loading by
-     10 concurrent clients
- 50. HADOOP-1468 Add HBase batch update to reduce RPC overhead (restrict batches
-     to a single row at a time)
- 51. HADOOP-1528 HClient for multiple tables (phase 1) (James Kennedy & JimK)
- 52. HADOOP-1528 HClient for multiple tables (phase 2) all HBase client side code
-     (except TestHClient and HBaseShell) have been converted to use the new client
-     side objects (HTable/HBaseAdmin/HConnection) instead of HClient.
- 53. HADOOP-1528 HClient for multiple tables - expose close table function
- 54. HADOOP-1466 Clean up warnings, visibility and javadoc issues in HBase.
- 55. HADOOP-1662 Make region splits faster
- 56. HADOOP-1678 On region split, master should designate which host should 
-     serve daughter splits. Phase 1: Master balances load for new regions and
-     when a region server fails.
- 57. HADOOP-1678 On region split, master should designate which host should 
-     serve daughter splits. Phase 2: Master assigns children of split region
-     instead of HRegionServer serving both children.
- 58. HADOOP-1710 All updates should be batch updates
- 59. HADOOP-1711 HTable API should use interfaces instead of concrete classes as
-     method parameters and return values
- 60. HADOOP-1644 Compactions should not block updates
- 60. HADOOP-1672 HBase Shell should use new client classes
-     (Edward Yoon via Stack).
- 61. HADOOP-1709 Make HRegionInterface more like that of HTable
-     HADOOP-1725 Client find of table regions should not include offlined, split parents
-=
diff --git a/RELEASENOTES.md b/RELEASENOTES.md
new file mode 100644
index 0000000..5feac22
--- /dev/null
+++ b/RELEASENOTES.md
@@ -0,0 +1,1011 @@
+
+<!---
+# 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.
+-->
+# HBASE  2.2.0 Release Notes
+
+These release notes cover new developer and user-facing incompatibilities, important issues, features, and major improvements.
+
+
+---
+
+* [HBASE-15728](https://issues.apache.org/jira/browse/HBASE-15728) | *Major* | **Add remaining per-table region / store / flush / compaction related metrics**
+
+Adds below flush, split, and compaction metrics
+
+ +  // split related metrics
+ +  private MutableFastCounter splitRequest;
+ +  private MutableFastCounter splitSuccess;
+ +  private MetricHistogram splitTimeHisto;
+ +
+ +  // flush related metrics
+ +  private MetricHistogram flushTimeHisto;
+ +  private MetricHistogram flushMemstoreSizeHisto;
+ +  private MetricHistogram flushOutputSizeHisto;
+ +  private MutableFastCounter flushedMemstoreBytes;
+ +  private MutableFastCounter flushedOutputBytes;
+ +
+ +  // compaction related metrics
+ +  private MetricHistogram compactionTimeHisto;
+ +  private MetricHistogram compactionInputFileCountHisto;
+ +  private MetricHistogram compactionInputSizeHisto;
+ +  private MetricHistogram compactionOutputFileCountHisto;
+ +  private MetricHistogram compactionOutputSizeHisto;
+ +  private MutableFastCounter compactedInputBytes;
+ +  private MutableFastCounter compactedOutputBytes;
+ +
+ +  private MetricHistogram majorCompactionTimeHisto;
+ +  private MetricHistogram majorCompactionInputFileCountHisto;
+ +  private MetricHistogram majorCompactionInputSizeHisto;
+ +  private MetricHistogram majorCompactionOutputFileCountHisto;
+ +  private MetricHistogram majorCompactionOutputSizeHisto;
+ +  private MutableFastCounter majorCompactedInputBytes;
+ +  private MutableFastCounter majorCompactedOutputBytes;
+
+
+---
+
+* [HBASE-20886](https://issues.apache.org/jira/browse/HBASE-20886) | *Critical* | **[Auth] Support keytab login in hbase client**
+
+From 2.2.0, hbase supports client login via keytab. To use this feature, client should specify \`hbase.client.keytab.file\` and \`hbase.client.keytab.principal\` in hbase-site.xml, then the connection will contain the needed credentials which be renewed periodically to communicate with kerberized hbase cluster.
+
+
+---
+
+* [HBASE-21410](https://issues.apache.org/jira/browse/HBASE-21410) | *Major* | **A helper page that help find all problematic regions and procedures**
+
+After HBASE-21410, we add a helper page to Master UI. This helper page is mainly to help HBase operator quickly found all regions and pids that are get stuck.
+There are 2 entries to get in this page.
+One is showing in the Regions in Transition section, it made "num region(s) in transition" a link that you can click and check all regions in transition and their related procedure IDs.
+The other one is showing in the table details section, it made the number of CLOSING or OPENING regions a link, which you can click and check regions and related procedure IDs of CLOSING or OPENING regions of a certain table.
+In this helper page, not only you can see all regions and related procedures, there are 2 buttons at the top which will show these regions or procedure IDs in text format. This is mainly aim to help operator to easily copy and paste all problematic procedure IDs and encoded region names to HBCK2's command line, by which we HBase operator can bypass these procedures or assign these regions.
+
+
+---
+
+* [HBASE-21588](https://issues.apache.org/jira/browse/HBASE-21588) | *Major* | **Procedure v2 wal splitting implementation**
+
+After HBASE-21588, we introduce a new way to do WAL splitting coordination by procedure framework. This can simplify the process of WAL splitting and no need to connect zookeeper any more.
+During ServerCrashProcedure, it will create a SplitWALProcedure for each WAL that need to split. Then each SplitWALProcedure will spawn a SplitWALRemoteProcedure to send the request to regionserver.
+At the RegionServer side, whole process is handled by SplitWALCallable. It split the WAL and return the result to master.
+According to my test, this patch has a better performance as the number of WALs that need to split increase. And it can relieve the pressure on zookeeper.
+
+
+---
+
+* [HBASE-20734](https://issues.apache.org/jira/browse/HBASE-20734) | *Major* | **Colocate recovered edits directory with hbase.wal.dir**
+
+Previously the recovered.edits directory was under the root directory. This JIRA moves the recovered.edits directory to be under the hbase.wal.dir if set. It also adds a check for any recovered.edits found under the root directory for backwards compatibility. This gives improvements when a faster media(like SSD) or more local FileSystem is used for the hbase.wal.dir than the root dir.
+
+
+---
+
+* [HBASE-20401](https://issues.apache.org/jira/browse/HBASE-20401) | *Minor* | **Make \`MAX\_WAIT\` and \`waitIfNotFinished\` in CleanerContext configurable**
+
+When oldwals (and hfile) cleaner cleans stale wals (and hfiles), it will periodically check and wait the clean results from filesystem, the total wait time will be no more than a max time.
+
+The periodically wait and check configurations are hbase.oldwals.cleaner.thread.check.interval.msec (default is 500 ms) and hbase.regionserver.hfilecleaner.thread.check.interval.msec (default is 1000 ms).
+
+Meanwhile, The max time configurations are hbase.oldwals.cleaner.thread.timeout.msec and hbase.regionserver.hfilecleaner.thread.timeout.msec, they are set to 60 seconds by default.
+
+All support dynamic configuration.
+
+e.g. in the oldwals cleaning scenario, one may consider tuning hbase.oldwals.cleaner.thread.timeout.msec and hbase.oldwals.cleaner.thread.check.interval.msec
+
+1. While deleting a oldwal never complete (strange but possible), then delete file task needs to wait for a max of 60 seconds. Here, 60 seconds might be too long, or the opposite way is to increase more than 60 seconds in the use cases of slow file delete.
+2. The check and wait of a file delete is set to default in the period of 500 milliseconds, one might want to tune this checking period to a short interval to check more frequently or to a longer interval to avoid checking too often to manage their delete file task checking period (the longer interval may be use to avoid checking too fast while using a high latency storage).
+
+
+---
+
+* [HBASE-21481](https://issues.apache.org/jira/browse/HBASE-21481) | *Major* | **[acl] Superuser's permissions should not be granted or revoked by any non-su global admin**
+
+HBASE-21481 improves the quality of access control, by strengthening the protection of super users's privileges.
+
+
+---
+
+* [HBASE-21082](https://issues.apache.org/jira/browse/HBASE-21082) | *Critical* | **Reimplement assign/unassign related procedure metrics**
+
+Now we have four types of RIT procedure metrics, assign, unassign, move, reopen. The meaning of assign/unassign is changed, as we will not increase the unassign metric and then the assign metric when moving a region.
+Also introduced two new procedure metrics, open and close, which are used to track the open/close region calls to region server. We may send open/close multiple times to finish a RIT since we may retry multiple times.
+
+
+---
+
+* [HBASE-20724](https://issues.apache.org/jira/browse/HBASE-20724) | *Critical* | **Sometimes some compacted storefiles are still opened after region failover**
+
+Problem: This is an old problem since HBASE-2231. The compaction event marker was only writed to WAL. But after flush, the WAL may be archived, which means an useful compaction event marker be deleted, too. So the compacted store files cannot be archived when region open and replay WAL.
+
+Solution: After this jira, the compaction event tracker will be writed to HFile. When region open and load store files, read the compaction evnet tracker from HFile and archive the compacted store files which still exist.
+
+
+---
+
+* [HBASE-21820](https://issues.apache.org/jira/browse/HBASE-21820) | *Major* | **Implement CLUSTER quota scope**
+
+HBase contains two quota scopes: MACHINE and CLUSTER. Before this patch, set quota operations did not expose scope option to client api and use MACHINE as default, CLUSTER scope can not be set and used.
+Shell commands are as follows:
+set\_quota, TYPE =\> THROTTLE, TABLE =\> 't1', LIMIT =\> '10req/sec'
+
+This issue implements CLUSTER scope in a simple way: For user, namespace, user over namespace quota, use [ClusterLimit / RSNum] as machine limit. For table and user over table quota, use [ClusterLimit / TotalTableRegionNum \* MachineTableRegionNum] as machine limit.
+After this patch, user can set CLUSTER scope quota, but MACHINE is still default if user ignore scope.
+Shell commands are as follows:
+set\_quota, TYPE =\> THROTTLE, TABLE =\> 't1', LIMIT =\> '10req/sec'
+set\_quota, TYPE =\> THROTTLE, TABLE =\> 't1', LIMIT =\> '10req/sec', SCOPE =\> MACHINE
+set\_quota, TYPE =\> THROTTLE, TABLE =\> 't1', LIMIT =\> '10req/sec', SCOPE =\> CLUSTER
+
+
+---
+
+* [HBASE-21057](https://issues.apache.org/jira/browse/HBASE-21057) | *Minor* | **upgrade to latest spotbugs**
+
+Change spotbugs version to 3.1.11.
+
+
+---
+
+* [HBASE-21922](https://issues.apache.org/jira/browse/HBASE-21922) | *Major* | **BloomContext#sanityCheck may failed when use ROWPREFIX\_DELIMITED bloom filter**
+
+Remove bloom filter type ROWPREFIX\_DELIMITED. May add it back when find a better solution.
+
+
+---
+
+* [HBASE-21783](https://issues.apache.org/jira/browse/HBASE-21783) | *Major* | **Support exceed user/table/ns throttle quota if region server has available quota**
+
+Support enable or disable exceed throttle quota. Exceed throttle quota means, user can over consume user/namespace/table quota if region server has additional available quota because other users don't consume at the same time.
+Use the following shell commands to enable/disable exceed throttle quota: enable\_exceed\_throttle\_quota
+disable\_exceed\_throttle\_quota
+There are two limits when enable exceed throttle quota:
+1. Must set at least one read and one write region server throttle quota;
+2. All region server throttle quotas must be in seconds time unit. Because once previous requests exceed their quota and consume region server quota, quota in other time units may be refilled in a long time, this may affect later requests.
+
+
+---
+
+* [HBASE-20587](https://issues.apache.org/jira/browse/HBASE-20587) | *Major* | **Replace Jackson with shaded thirdparty gson**
+
+Remove jackson dependencies from most hbase modules except hbase-rest, use shaded gson instead. The output json will be a bit different since jackson can use getter/setter, but gson will always use the fields.
+
+
+---
+
+* [HBASE-21928](https://issues.apache.org/jira/browse/HBASE-21928) | *Major* | **Deprecated HConstants.META\_QOS**
+
+Mark HConstants.META\_QOS as deprecated. It is for internal use only, which is the highest priority. You should not try to set a priority greater than or equal to this value, although it is no harm but also useless.
+
+
+---
+
+* [HBASE-17942](https://issues.apache.org/jira/browse/HBASE-17942) | *Major* | **Disable region splits and merges per table**
+
+This patch adds the ability to disable split and/or merge for a table (By default, split and merge are enabled for a table).
+
+
+---
+
+* [HBASE-21636](https://issues.apache.org/jira/browse/HBASE-21636) | *Major* | **Enhance the shell scan command to support missing scanner specifications like ReadType, IsolationLevel etc.**
+
+Allows shell to set Scan options previously not exposed. See additions as part of the scan help by typing following hbase shell:
+
+hbase\> help 'scan'
+
+
+---
+
+* [HBASE-21201](https://issues.apache.org/jira/browse/HBASE-21201) | *Major* | **Support to run VerifyReplication MR tool without peerid**
+
+We can specify peerQuorumAddress instead of peerId in VerifyReplication tool. So it no longer requires peerId to be setup when using this tool.
+
+For example:
+hbase org.apache.hadoop.hbase.mapreduce.replication.VerifyReplication zk1,zk2,zk3:2181/hbase testTable
+
+
+---
+
+* [HBASE-21838](https://issues.apache.org/jira/browse/HBASE-21838) | *Major* | **Create a special ReplicationEndpoint just for verifying the WAL entries are fine**
+
+Introduce a VerifyWALEntriesReplicationEndpoint which replicates nothing but only verifies if all the cells are valid.
+It can be used to capture bugs for writing WAL, as most times we will not read the WALs again after writing it if there are no region server crashes.
+
+
+---
+
+* [HBASE-21727](https://issues.apache.org/jira/browse/HBASE-21727) | *Minor* | **Simplify documentation around client timeout**
+
+Deprecated HBaseConfiguration#getInt(Configuration, String, String, int) method and removed it from 3.0.0 version.
+
+
+---
+
+* [HBASE-21764](https://issues.apache.org/jira/browse/HBASE-21764) | *Major* | **Size of in-memory compaction thread pool should be configurable**
+
+Introduced an new config key in this issue: hbase.regionserver.inmemory.compaction.pool.size. the default value would be 10.  you can configure this to set the pool size of in-memory compaction pool. Note that all memstores in one region server will share the same pool, so if you have many regions in one region server,  you need to set this larger to compact faster for better read performance.
+
+
+---
+
+* [HBASE-21684](https://issues.apache.org/jira/browse/HBASE-21684) | *Major* | **Throw DNRIOE when connection or rpc client is closed**
+
+Make StoppedRpcClientException extend DoNotRetryIOException.
+
+
+---
+
+* [HBASE-21739](https://issues.apache.org/jira/browse/HBASE-21739) | *Major* | **Move grant/revoke from regionserver to master**
+
+To implement user permission control in Precedure V2, move grant and revoke method from AccessController to master firstly.
+Mark AccessController#grant and AccessController#revoke as deprecated and please use Admin#grant and Admin#revoke instead.
+
+
+---
+
+* [HBASE-21791](https://issues.apache.org/jira/browse/HBASE-21791) | *Blocker* | **Upgrade thrift dependency to 0.12.0**
+
+IMPORTANT: Due to security issues, all users who use hbase thrift should avoid using releases which do not have this fix.
+
+The effect releases are:
+2.1.x: 2.1.2 and below
+2.0.x: 2.0.4 and below
+1.x: 1.4.x and below
+
+If you are using the effect releases above, please consider upgrading to a newer release ASAP.
+
+
+---
+
+* [HBASE-21792](https://issues.apache.org/jira/browse/HBASE-21792) | *Major* | **Mark HTableMultiplexer as deprecated and remove it in 3.0.0**
+
+HTableMultiplexer exposes the implementation class, and it is incomplete, so we mark it as deprecated and remove it in 3.0.0 release.
+
+There is no direct replacement for HTableMultiplexer, please use BufferedMutator if you want to batch mutations to a table.
+
+
+---
+
+* [HBASE-21782](https://issues.apache.org/jira/browse/HBASE-21782) | *Major* | **LoadIncrementalHFiles should not be IA.Public**
+
+Introduce a BulkLoadHFiles interface which is marked as IA.Public, for doing bulk load programmatically.
+Introduce a BulkLoadHFilesTool which extends BulkLoadHFiles, and is marked as IA.LimitedPrivate(TOOLS), for using from command line.
+The old LoadIncrementalHFiles is deprecated and will be removed in 3.0.0.
+
+
+---
+
+* [HBASE-21762](https://issues.apache.org/jira/browse/HBASE-21762) | *Major* | **Move some methods in ClusterConnection to Connection**
+
+Move the two getHbck method from ClusterConnection to Connection, and mark the methods as IA.LimitedPrivate(HBCK), as ClusterConnection is IA.Private and should not be depended by HBCK2.
+
+Add a clearRegionLocationCache method in Connection to clear the region location cache for all the tables. As in RegionLocator, most of the methods have a 'reload' parameter, which implicitly tells user that we have a region location cache, so adding a method to clear the cache is fine.
+
+
+---
+
+* [HBASE-21713](https://issues.apache.org/jira/browse/HBASE-21713) | *Major* | **Support set region server throttle quota**
+
+Support set region server rpc throttle quota which represents the read/write ability of region servers and throttles when region server's total requests exceeding the limit.
+
+Use the following shell command to set RS quota:
+set\_quota TYPE =\> THROTTLE, REGIONSERVER =\> 'all', THROTTLE\_TYPE =\> WRITE, LIMIT =\> '20000req/sec'
+set\_quota TYPE =\> THROTTLE, REGIONSERVER =\> 'all', LIMIT =\> NONE
+"all" represents the throttle quota of all region servers and setting specified region server quota isn't supported currently.
+
+
+---
+
+* [HBASE-21689](https://issues.apache.org/jira/browse/HBASE-21689) | *Minor* | **Make table/namespace specific current quota info available in shell(describe\_namespace & describe)**
+
+In shell commands "describe\_namespace" and "describe", which are used to see the descriptors of the namespaces and tables respectively, quotas set on that particular namespace/table will also be printed along.
+
+
+---
+
+* [HBASE-17370](https://issues.apache.org/jira/browse/HBASE-17370) | *Major* | **Fix or provide shell scripts to drain and decommission region server**
+
+Adds shell support for the following:
+- List decommissioned/draining region servers
+- Decommission a list of region servers, optionally offload corresponding regions
+- Recommission a region server, optionally load a list of passed regions
+
+
+---
+
+* [HBASE-21734](https://issues.apache.org/jira/browse/HBASE-21734) | *Major* | **Some optimization in FilterListWithOR**
+
+After HBASE-21620, the filterListWithOR has been a bit slow because we need to merge each sub-filter's RC , while before HBASE-21620, we will skip many RC merging, but the logic was wrong. So here we choose another way to optimaze the performance: removing the KeyValueUtil#toNewKeyCell.
+Anoop Sam John suggested that the KeyValueUtil#toNewKeyCell can save some GC before because if we copy key part of cell into a single byte[], then the block the cell refering won't be refered by the filter list any more, the upper layer can GC the data block quickly. while after HBASE-21620, we will update the prevCellList for every encountered cell now, so the lifecycle of cell in prevCellList for FilterList will be quite shorter. so just use the cell ref for saving cpu.
+BTW, we removed all the arrays streams usage in filter list, because it's also quite time-consuming in our test.
+
+
+---
+
+* [HBASE-21738](https://issues.apache.org/jira/browse/HBASE-21738) | *Critical* | **Remove all the CSLM#size operation in our memstore because it's an quite time consuming.**
+
+We found the memstore snapshotting would cost much time because of calling the time-consuming ConcurrentSkipListMap#Size, it would make the p999 latency spike happen. So in this issue, we remove all ConcurrentSkipListMap#size in memstore by counting the cellsCount in MemstoreSizeing. As the issue described, the p999 latency spike was mitigated.
+
+
+---
+
+* [HBASE-21034](https://issues.apache.org/jira/browse/HBASE-21034) | *Major* | **Add new throttle type: read/write capacity unit**
+
+Provides a new throttle type: capacity unit. One read/write/request capacity unit represents that read/write/read+write up to 1K data. If data size is more than 1K, then consume additional capacity units.
+
+Use shell command to set capacity unit(CU):
+set\_quota TYPE =\> THROTTLE, THROTTLE\_TYPE =\> WRITE, USER =\> 'u1', LIMIT =\> '10CU/sec'
+
+Use the "hbase.quota.read.capacity.unit" property to set the data size of one read capacity unit in bytes, the default value is 1K. Use the "hbase.quota.write.capacity.unit" property to set the data size of one write capacity unit in bytes, the default value is 1K.
+
+
+---
+
+* [HBASE-21595](https://issues.apache.org/jira/browse/HBASE-21595) | *Minor* | **Print thread's information and stack traces when RS is aborting forcibly**
+
+Does thread dump on stdout on abort.
+
+
+---
+
+* [HBASE-21732](https://issues.apache.org/jira/browse/HBASE-21732) | *Critical* | **Should call toUpperCase before using Enum.valueOf in some methods for ColumnFamilyDescriptor**
+
+Now all the Enum configs in ColumnFamilyDescriptor can accept lower case config value.
+
+
+---
+
+* [HBASE-21712](https://issues.apache.org/jira/browse/HBASE-21712) | *Minor* | **Make submit-patch.py python3 compatible**
+
+Python3 support was added to dev-support/submit-patch.py. To install newly required dependencies run \`pip install -r dev-support/python-requirements.txt\` command.
+
+
+---
+
+* [HBASE-21657](https://issues.apache.org/jira/browse/HBASE-21657) | *Major* | **PrivateCellUtil#estimatedSerializedSizeOf has been the bottleneck in 100% scan case.**
+
+In HBASE-21657,  I simplified the path of estimatedSerialiedSize() & estimatedSerialiedSizeOfCell() by moving the general getSerializedSize()
+and heapSize() from ExtendedCell to Cell interface. The patch also included some other improvments:
+
+1. For 99%  of case, our cells has no tags, so let the HFileScannerImpl just return the NoTagsByteBufferKeyValue if no tags, which means we can save
+   lots of cpu time when sending no tags cell to rpc because can just return the length instead of getting the serialize size by caculating offset/length
+   of each fields(row/cf/cq..)
+2. Move the subclass's getSerializedSize implementation from ExtendedCell to their own class, which mean we did not need to call ExtendedCell's
+   getSerialiedSize() firstly, then forward to subclass's getSerializedSize(withTags).
+3. Give a estimated result arraylist size for avoiding the frequent list extension when in a big scan, now we estimate the array size as min(scan.rows, 512).
+   it's also help a lot.
+
+We gain almost ~40% throughput improvement in 100% scan case for branch-2 (cacheHitRatio~100%)[1], it's a good thing. While it's a incompatible change in
+some case, such as if the upstream user implemented their own Cells, although it's rare but can happen, then their compile will be error.
+
+
+---
+
+* [HBASE-21647](https://issues.apache.org/jira/browse/HBASE-21647) | *Major* | **Add status track for splitting WAL tasks**
+
+Adds task monitor that shows ServerCrashProcedure progress in UI.
+
+
+---
+
+* [HBASE-21652](https://issues.apache.org/jira/browse/HBASE-21652) | *Major* | **Refactor ThriftServer making thrift2 server inherited from thrift1 server**
+
+Before this issue, thrift1 server and thrift2 server are totally different servers. If a new feature is added to thrift1 server, thrfit2 server have to make the same change to support it(e.g. authorization). After this issue, thrift2 server is inherited from thrift1, thrift2 server now have all the features thrift1 server has(e.g http support, which thrift2 server doesn't have before).  The way to start thrift1 or thrift2 server remain the same after this issue.
+
+
+---
+
+* [HBASE-21661](https://issues.apache.org/jira/browse/HBASE-21661) | *Major* | **Provide Thrift2 implementation of Table/Admin**
+
+ThriftAdmin/ThriftTable are implemented based on Thrift2. With ThriftAdmin/ThriftTable, People can use thrift2 protocol just like HTable/HBaseAdmin.
+Example of using ThriftConnection
+Configuration conf = HBaseConfiguration.create();
+conf.set(ClusterConnection.HBASE\_CLIENT\_CONNECTION\_IMPL,ThriftConnection.class.getName());
+Connection conn = ConnectionFactory.createConnection(conf);
+Table table = conn.getTable(tablename)
+It is just like a normal Connection, similar use experience with the default ConnectionImplementation
+
+
+---
+
+* [HBASE-21618](https://issues.apache.org/jira/browse/HBASE-21618) | *Critical* | **Scan with the same startRow(inclusive=true) and stopRow(inclusive=false) returns one result**
+
+There was a bug when scan with the same startRow(inclusive=true) and stopRow(inclusive=false). The old incorrect behavior is return one result. After this fix, the new correct behavior is return nothing.
+
+
+---
+
+* [HBASE-21159](https://issues.apache.org/jira/browse/HBASE-21159) | *Major* | **Add shell command to switch throttle on or off**
+
+Support enable or disable rpc throttle when hbase quota is enabled. If hbase quota is enabled, rpc throttle is enabled by default.  When disable rpc throttle, HBase will not throttle any request. Use the following commands to switch rpc throttle : enable\_rpc\_throttle / disable\_rpc\_throttle.
+
+
+---
+
+* [HBASE-21659](https://issues.apache.org/jira/browse/HBASE-21659) | *Minor* | **Avoid to load duplicate coprocessors in system config and table descriptor**
+
+Add a new configuration "hbase.skip.load.duplicate.table.coprocessor". The default value is false to keep compatible with the old behavior. Config it true to skip load duplicate table coprocessor.
+
+
+---
+
+* [HBASE-21650](https://issues.apache.org/jira/browse/HBASE-21650) | *Major* | **Add DDL operation and some other miscellaneous to thrift2**
+
+Added DDL operations and some other structure definition to thrift2. Methods added:
+create/modify/addColumnFamily/deleteColumnFamily/modifyColumnFamily/enable/disable/truncate/delete table
+create/modify/delete namespace
+get(list)TableDescriptor(s)/get(list)NamespaceDescirptor(s)
+tableExists/isTableEnabled/isTableDisabled/isTableAvailabe
+And some class definitions along with those methods
+
+
+---
+
+* [HBASE-21643](https://issues.apache.org/jira/browse/HBASE-21643) | *Major* | **Introduce two new region coprocessor method and deprecated postMutationBeforeWAL**
+
+Deprecated region coprocessor postMutationBeforeWAL and introduce two new region coprocessor postIncrementBeforeWAL and postAppendBeforeWAL instead.
+
+
+---
+
+* [HBASE-21635](https://issues.apache.org/jira/browse/HBASE-21635) | *Major* | **Use maven enforcer to ban imports from illegal packages**
+
+Use de.skuzzle.enforcer.restrict-imports-enforcer-rule extension for maven enforcer plugin to ban illegal imports at compile time. Now if you use illegal imports, for example, import com.google.common.\*, there will be a compile error, instead of a checkstyle warning.
+
+
+---
+
+* [HBASE-21401](https://issues.apache.org/jira/browse/HBASE-21401) | *Critical* | **Sanity check when constructing the KeyValue**
+
+Add a sanity check when constructing KeyValue from a byte[]. we use the constructor when we're reading kv from socket or HFIle or WAL(replication). the santiy check isn't designed for discovering the bits corruption in network transferring or disk IO. It is designed to detect bugs inside HBase in advance. and HBASE-21459 indicated that there's extremely small performance loss for diff kinds of keyvalue.
+
+
+---
+
+* [HBASE-21554](https://issues.apache.org/jira/browse/HBASE-21554) | *Minor* | **Show replication endpoint classname for replication peer on master web UI**
+
+The replication UI on master will show the replication endpoint classname.
+
+
+---
+
+* [HBASE-21549](https://issues.apache.org/jira/browse/HBASE-21549) | *Major* | **Add shell command for serial replication peer**
+
+Add a SERIAL flag for add\_peer command to identifiy whether or not the replication peer is a serial replication peer. The default serial flag is false.
+
+
+---
+
+* [HBASE-21453](https://issues.apache.org/jira/browse/HBASE-21453) | *Major* | **Convert ReadOnlyZKClient to DEBUG instead of INFO**
+
+Log level of ReadOnlyZKClient moved to debug.
+
+
+---
+
+* [HBASE-21283](https://issues.apache.org/jira/browse/HBASE-21283) | *Minor* | **Add new shell command 'rit' for listing regions in transition**
+
+<!-- markdown -->
+
+The HBase `shell` now includes a command to list regions currently in transition.
+
+```
+HBase Shell
+Use "help" to get list of supported commands.
+Use "exit" to quit this interactive shell.
+Version 1.5.0-SNAPSHOT, r9bb6d2fa8b760f16cd046657240ebd4ad91cb6de, Mon Oct  8 21:05:50 UTC 2018
+
+hbase(main):001:0> help 'rit'
+List all regions in transition.
+Examples:
+  hbase> rit
+
+hbase(main):002:0> create ...
+0 row(s) in 2.5150 seconds
+=> Hbase::Table - IntegrationTestBigLinkedList
+
+hbase(main):003:0> rit
+0 row(s) in 0.0340 seconds
+
+hbase(main):004:0> unassign '56f0c38c81ae453d19906ce156a2d6a1'
+0 row(s) in 0.0540 seconds
+
+hbase(main):005:0> rit
+IntegrationTestBigLinkedList,L\xCC\xCC\xCC\xCC\xCC\xCC\xCB,1539117183224.56f0c38c81ae453d19906ce156a2d6a1. state=PENDING_CLOSE, ts=Tue Oct 09 20:33:34 UTC 2018 (0s ago), server=null
+1 row(s) in 0.0170 seconds
+```
+
+
+---
+
+* [HBASE-21567](https://issues.apache.org/jira/browse/HBASE-21567) | *Major* | **Allow overriding configs starting up the shell**
+
+Allow passing of -Dkey=value option to shell to override hbase-\* configuration: e.g.:
+
+$ ./bin/hbase shell -Dhbase.zookeeper.quorum=ZK0.remote.cluster.example.org,ZK1.remote.cluster.example.org,ZK2.remote.cluster.example.org -Draining=false
+...
+hbase(main):001:0\> @shell.hbase.configuration.get("hbase.zookeeper.quorum")
+=\> "ZK0.remote.cluster.example.org,ZK1.remote.cluster.example.org,ZK2.remote.cluster.example.org"
+hbase(main):002:0\> @shell.hbase.configuration.get("raining")
+=\> "false"
+
+
+---
+
+* [HBASE-21560](https://issues.apache.org/jira/browse/HBASE-21560) | *Major* | **Return a new TableDescriptor for MasterObserver#preModifyTable to allow coprocessor modify the TableDescriptor**
+
+Incompatible change. Allow MasterObserver#preModifyTable to return a new TableDescriptor. And master will use this returned TableDescriptor to modify table.
+
+
+---
+
+* [HBASE-21551](https://issues.apache.org/jira/browse/HBASE-21551) | *Blocker* | **Memory leak when use scan with STREAM at server side**
+
+<!-- markdown -->
+### Summary
+HBase clusters will experience Region Server failures due to out of memory errors due to a leak given any of the following:
+
+* User initiates Scan operations set to use the STREAM reading type
+* User initiates Scan operations set to use the default reading type that read more than 4 * the block size of column families involved in the scan (e.g. by default 4*64KiB)
+* Compactions run
+
+### Root cause
+
+When there are long running scans the Region Server process attempts to optimize access by using a different API geared towards sequential access. Due to an error in HBASE-20704 for HBase 2.0+ the Region Server fails to release related resources when those scans finish. That same optimization path is always used for the HBase internal file compaction process.
+
+### Workaround
+
+Impact for this error can be minimized by setting the config value “hbase.storescanner.pread.max.bytes” to MAX_INT to avoid the optimization for default user scans. Clients should also be checked to ensure they do not pass the STREAM read type to the Scan API. This will have a severe impact on performance for long scans.
+
+Compactions always use this sequential optimized reading mechanism so downstream users will need to periodically restart Region Server roles after compactions have happened.
+
+
+---
+
+* [HBASE-21550](https://issues.apache.org/jira/browse/HBASE-21550) | *Major* | **Add a new method preCreateTableRegionInfos for MasterObserver which allows CPs to modify the TableDescriptor**
+
+Add a new method preCreateTableRegionInfos for MasterObserver, which will be called before creating region infos for the given table,  before the preCreateTable method. It allows you to return a new TableDescritor to override the original one. Returns null or throws exception will stop the creation.
+
+
+---
+
+* [HBASE-21387](https://issues.apache.org/jira/browse/HBASE-21387) | *Major* | **Race condition surrounding in progress snapshot handling in snapshot cache leads to loss of snapshot files**
+
+To prevent race condition between in progress snapshot (performed by TakeSnapshotHandler) and HFileCleaner which results in data loss, this JIRA introduced mutual exclusion between taking snapshot and running HFileCleaner. That is, at any given moment, either some snapshot can be taken or, HFileCleaner checks hfiles which are not referenced, but not both can be running.
+
+
+---
+
+* [HBASE-21452](https://issues.apache.org/jira/browse/HBASE-21452) | *Major* | **Illegal character in hbase counters group name**
+
+Changes group name of hbase metrics from "HBase Counters" to "HBaseCounters".
+
+
+---
+
+* [HBASE-21443](https://issues.apache.org/jira/browse/HBASE-21443) | *Major* | **[hbase-connectors] Purge hbase-\* modules from core now they've been moved to hbase-connectors**
+
+Parent issue moved hbase-spark\* modules to hbase-connectors. This issue removes hbase-spark\* modules from hbase core repo.
+
+
+---
+
+* [HBASE-21430](https://issues.apache.org/jira/browse/HBASE-21430) | *Major* | **[hbase-connectors] Move hbase-spark\* modules to hbase-connectors repo**
+
+hbase-spark\* modules have been cloned to https://github.com/apache/hbase-connectors All spark connector dev is to happen in that repo from here on out.
+
+Let me file a subtask to remove hbase-spark\* modules from hbase core.
+
+
+---
+
+* [HBASE-21417](https://issues.apache.org/jira/browse/HBASE-21417) | *Critical* | **Pre commit build is broken due to surefire plugin crashes**
+
+Add -Djdk.net.URLClassPath.disableClassPathURLCheck=true when executing surefire plugin.
+
+
+---
+
+* [HBASE-21191](https://issues.apache.org/jira/browse/HBASE-21191) | *Major* | **Add a holding-pattern if no assign for meta or namespace (Can happen if masterprocwals have been cleared).**
+
+Puts master startup into holding pattern if meta is not assigned (previous it would exit). To make progress again, operator needs to inject an assign (Caveats and instruction can be found in HBASE-21035).
+
+
+---
+
+* [HBASE-21322](https://issues.apache.org/jira/browse/HBASE-21322) | *Critical* | **Add a scheduleServerCrashProcedure() API to HbckService**
+
+Adds scheduleServerCrashProcedure to the HbckService.
+
+
+---
+
+* [HBASE-21325](https://issues.apache.org/jira/browse/HBASE-21325) | *Major* | **Force to terminate regionserver when abort hang in somewhere**
+
+Add two new config hbase.regionserver.abort.timeout and hbase.regionserver.abort.timeout.task. If regionserver abort timeout, it will schedule an abort timeout task to run. The default abort task is SystemExitWhenAbortTimeout, which will force to terminate region server when abort timeout. And you can config a special abort timeout task by hbase.regionserver.abort.timeout.task.
+
+
+---
+
+* [HBASE-21215](https://issues.apache.org/jira/browse/HBASE-21215) | *Major* | **Figure how to invoke hbck2; make it easy to find**
+
+Adds to bin/hbase means of invoking hbck2. Pass the new '-j' option on the 'hbck' command with a value of the full path to the HBCK2.jar.
+
+E.g:
+
+$ ./bin/hbase hbck -j ~/checkouts/hbase-operator-tools/hbase-hbck2/target/hbase-hbck2-1.0.0-SNAPSHOT.jar  setTableState x ENABLED
+
+
+---
+
+* [HBASE-21372](https://issues.apache.org/jira/browse/HBASE-21372) | *Major* | **Set hbase.assignment.maximum.attempts to Long.MAX**
+
+Retry assigns 'forever' (or until an intervention such as a ServerCrashProcedure).
+
+Previous retry was a maximum of ten times but on failure, handling was an indeterminate.
+
+
+---
+
+* [HBASE-21338](https://issues.apache.org/jira/browse/HBASE-21338) | *Major* | **[balancer] If balancer is an ill-fit for cluster size, it gives little indication**
+
+The description claims the balancer not dynamically configurable but this is an error; it is http://hbase.apache.org/book.html#dyn\_config
+
+Also, if balancer is seen to be cutting out too soon, try setting "hbase.master.balancer.stochastic.runMaxSteps" to true.
+
+Adds cleaner logging around balancer start.
+
+
+---
+
+* [HBASE-21073](https://issues.apache.org/jira/browse/HBASE-21073) | *Major* | **"Maintenance mode" master**
+
+    Instead of being an ephemeral state set by hbck, maintenance mode is now
+    an explicit toggle set by either configuration property or environment
+    variable. In maintenance mode, master will host system tables and not
+    assign any user-space tables to RSs. This gives operators the ability to
+    affect repairs to meta table with fewer moving parts.
+
+
+---
+
+* [HBASE-21335](https://issues.apache.org/jira/browse/HBASE-21335) | *Critical* | **Change the default wait time of HBCK2 tool**
+
+Changed waitTime parameter to lockWait on bypass. Changed default waitTime from 0 -- i.e. wait for ever -- to 1ms so if lock is held, we'll go past it and if override enforce bypass.
+
+
+---
+
+* [HBASE-21291](https://issues.apache.org/jira/browse/HBASE-21291) | *Major* | **Add a test for bypassing stuck state-machine procedures**
+
+bypass will now throw an Exception if passed a lockWait \<= 0; i.e bypass will prevent an operator getting stuck on an entity lock waiting forever (lockWait == 0)
+
+
+---
+
+* [HBASE-21320](https://issues.apache.org/jira/browse/HBASE-21320) | *Major* | **[canary] Cleanup of usage and add commentary**
+
+Cleans up usage and docs around Canary.  Does not change command-line args (though we should -- smile).
+
+
+---
+
+* [HBASE-21278](https://issues.apache.org/jira/browse/HBASE-21278) | *Critical* | **Do not rollback successful sub procedures when rolling back a procedure**
+
+For the sub procedures which are successfully finished, do not do rollback. This is a change in rollback behavior.
+
+State changes which are done by sub procedures should be handled by parent procedures when rolling back. For example, when rolling back a MergeTableProcedure, we will schedule new procedures to bring the offline regions online instead of rolling back the original procedures which off-lined the regions (in fact these procedures can not be rolled back...).
+
+
+---
+
+* [HBASE-21158](https://issues.apache.org/jira/browse/HBASE-21158) | *Critical* | **Empty qualifier cell should not be returned if it does not match QualifierFilter**
+
+<!-- markdown -->
+
+Scans that make use of `QualifierFilter` previously would erroneously return both columns with an empty qualifier along with those that matched. After this change that behavior has changed to only return those columns that match.
+
+
+---
+
+* [HBASE-21098](https://issues.apache.org/jira/browse/HBASE-21098) | *Major* | **Improve Snapshot Performance with Temporary Snapshot Directory when rootDir on S3**
+
+It is recommended to place the working directory on-cluster on HDFS as doing so has shown a strong performance increase due to data locality. It is important to note that the working directory should not overlap with any existing directories as the working directory will be cleaned out during the snapshot process. Beyond that, any well-named directory on HDFS should be sufficient.
+
+
+---
+
+* [HBASE-21185](https://issues.apache.org/jira/browse/HBASE-21185) | *Minor* | **WALPrettyPrinter: Additional useful info to be printed by wal printer tool, for debugability purposes**
+
+This adds two extra features to WALPrettyPrinter tool:
+
+1) Output for each cell combined size of cell descriptors, plus the cell value itself, in a given WAL edit. This is printed on the results as "cell total size sum:" info by default;
+
+2) An optional -g/--goto argument, that allows to seek straight to that specific WAL file position, then sequentially reading the WAL from that point towards its end;
+
+
+---
+
+* [HBASE-21287](https://issues.apache.org/jira/browse/HBASE-21287) | *Major* | **JVMClusterUtil Master initialization wait time not configurable**
+
+Local HBase cluster (as used by unit tests) wait times on startup and initialization can be configured via \`hbase.master.start.timeout.localHBaseCluster\` and \`hbase.master.init.timeout.localHBaseCluster\`
+
+
+---
+
+* [HBASE-21280](https://issues.apache.org/jira/browse/HBASE-21280) | *Trivial* | **Add anchors for each heading in UI**
+
+Adds anchors #tables, #tasks, etc.
+
+
+---
+
+* [HBASE-21232](https://issues.apache.org/jira/browse/HBASE-21232) | *Major* | **Show table state in Tables view on Master home page**
+
+Add table state column to the tables panel
+
+
+---
+
+* [HBASE-21223](https://issues.apache.org/jira/browse/HBASE-21223) | *Critical* | **[amv2] Remove abort\_procedure from shell**
+
+Removed the abort\_procedure command from shell -- dangerous -- and deprecated abortProcedure in Admin API.
+
+
+---
+
+* [HBASE-20636](https://issues.apache.org/jira/browse/HBASE-20636) | *Major* | **Introduce two bloom filter type : ROWPREFIX\_FIXED\_LENGTH and ROWPREFIX\_DELIMITED**
+
+Add two bloom filter type : ROWPREFIX\_FIXED\_LENGTH and ROWPREFIX\_DELIMITED
+1. ROWPREFIX\_FIXED\_LENGTH: specify the length of the prefix
+2. ROWPREFIX\_DELIMITED: specify the delimiter of the prefix
+Need to specify parameters for these two types of bloomfilter, otherwise the table will fail to create
+Example:
+create 't1', {NAME =\> 'f1', BLOOMFILTER =\> 'ROWPREFIX\_FIXED\_LENGTH', CONFIGURATION =\> {'RowPrefixBloomFilter.prefix\_length' =\> '10'}}
+create 't1', {NAME =\> 'f1', BLOOMFILTER =\> 'ROWPREFIX\_DELIMITED', CONFIGURATION =\> {'RowPrefixDelimitedBloomFilter.delimiter' =\> '#'}}
+
+
+---
+
+* [HBASE-21156](https://issues.apache.org/jira/browse/HBASE-21156) | *Critical* | **[hbck2] Queue an assign of hbase:meta and bulk assign/unassign**
+
+Adds 'raw' assigns/unassigns to the Hbck Service. Takes a list of encoded region names and bulk assigns/unassigns. Skirts Master 'state' check and does not invoke Coprocessors. For repair only.
+
+Here is what HBCK2 usage looks like now:
+
+{code}
+$ java -cp hbase-hbck2-1.0.0-SNAPSHOT.jar  org.apache.hbase.HBCK2
+usage: HBCK2 \<OPTIONS\> COMMAND [\<ARGS\>]
+
+Options:
+ -d,--debug                      run with debug output
+ -h,--help                       output this help message
+    --hbase.zookeeper.peerport   peerport of target hbase ensemble
+    --hbase.zookeeper.quorum     ensemble of target hbase
+    --zookeeper.znode.parent     parent znode of target hbase
+
+Commands:
+ setTableState \<TABLENAME\> \<STATE\>
+   Possible table states: ENABLED, DISABLED, DISABLING, ENABLING
+   To read current table state, in the hbase shell run:
+     hbase\> get 'hbase:meta', '\<TABLENAME\>', 'table:state'
+   A value of \\x08\\x00 == ENABLED, \\x08\\x01 == DISABLED, etc.
+   An example making table name 'user' ENABLED:
+     $ HBCK2 setTableState users ENABLED
+   Returns whatever the previous table state was.
+
+ assign \<ENCODED\_REGIONNAME\> ...
+   A 'raw' assign that can be used even during Master initialization.
+   Skirts Coprocessors. Pass one or more encoded RegionNames:
+   e.g. 1588230740 is hard-coded encoding for hbase:meta region and
+   de00010733901a05f5a2a3a382e27dd4 is an example of what a random
+   user-space encoded Region name looks like. For example:
+     $ HBCK2 assign 1588230740 de00010733901a05f5a2a3a382e27dd4
+   Returns the pid of the created AssignProcedure or -1 if none.
+
+ unassign \<ENCODED\_REGIONNAME\> ...
+   A 'raw' unassign that can be used even during Master initialization.
+   Skirts Coprocessors. Pass one or more encoded RegionNames:
+   Skirts Coprocessors. Pass one or more encoded RegionNames:
+   de00010733901a05f5a2a3a382e27dd4 is an example of what a random
+   user-space encoded Region name looks like. For example:
+     $ HBCK2 unassign 1588230740 de00010733901a05f5a2a3a382e27dd4
+   Returns the pid of the created UnassignProcedure or -1 if none.
+{code}
+
+
+---
+
+* [HBASE-21021](https://issues.apache.org/jira/browse/HBASE-21021) | *Major* | **Result returned by Append operation should be ordered**
+
+This change ensures Append operations are assembled into the expected order.
+
+
+---
+
+* [HBASE-21171](https://issues.apache.org/jira/browse/HBASE-21171) | *Major* | **[amv2] Tool to parse a directory of MasterProcWALs standalone**
+
+Make it so can run the WAL parse and load system in isolation. Here is an example:
+
+{code}$ HBASE\_OPTS=" -XX:+UnlockDiagnosticVMOptions -XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:+DebugNonSafepoints" ./bin/hbase org.apache.hadoop.hbase.procedure2.store.wal.WALProcedureStore ~/big\_set\_of\_masterprocwals/
+{code}
+
+
+---
+
+* [HBASE-21107](https://issues.apache.org/jira/browse/HBASE-21107) | *Minor* | **add a metrics for netty direct memory**
+
+Add a new nettyDirectMemoryUsage under server's ipc metrics to show direct memory usage for netty rpc server.
+
+
+---
+
+* [HBASE-21153](https://issues.apache.org/jira/browse/HBASE-21153) | *Major* | **Shaded client jars should always build in relevant phase to avoid confusion**
+
+Client facing artifacts are now built whenever Maven is run through the "package" goal. Previously, the client facing artifacts would create placeholder jars that skipped repackaging HBase and third-party dependencies unless the "release" profile was active.
+
+Build times may be noticeably longer depending on your build hardware. For example, the Jenkins worker nodes maintained by ASF Infra take ~14% longer to do a full packaging build. An example portability-focused personal laptop took ~25% longer.
+
+
+---
+
+* [HBASE-20942](https://issues.apache.org/jira/browse/HBASE-20942) | *Major* | **Improve RpcServer TRACE logging**
+
+Allows configuration of the length of RPC messages printed to the log at TRACE level via "hbase.ipc.trace.param.size" in RpcServer.
+
+
+---
+
+* [HBASE-20649](https://issues.apache.org/jira/browse/HBASE-20649) | *Minor* | **Validate HFiles do not have PREFIX\_TREE DataBlockEncoding**
+
+<!-- markdown -->
+Users who have previously made use of prefix tree encoding can now check that their existing HFiles no longer contain data that uses it with an additional preupgrade check command.
+
+```
+hbase pre-upgrade validate-hfile
+```
+
+Please see the "HFile Content validation" section of the ref guide's coverage of the pre-upgrade validator tool for usage details.
+
+
+---
+
+* [HBASE-20941](https://issues.apache.org/jira/browse/HBASE-20941) | *Major* | **Create and implement HbckService in master**
+
+Adds an HBCK Service and a first method to force-change-in-table-state for use by an HBCK client effecting 'repair' to a malfunctioning HBase.
+
+
+---
+
+* [HBASE-21071](https://issues.apache.org/jira/browse/HBASE-21071) | *Major* | **HBaseTestingUtility::startMiniCluster() to use builder pattern**
+
+Cleanup all the cluster start override combos in HBaseTestingUtility by adding a StartMiniClusterOption and Builder.
+
+
+---
+
+* [HBASE-21072](https://issues.apache.org/jira/browse/HBASE-21072) | *Major* | **Block out HBCK1 in hbase2**
+
+Fence out hbase-1.x hbck1 instances. Stop them making state changes on an hbase-2.x cluster; they could do damage. We do this by writing the hbck1 lock file into place on hbase-2.x Master start-up.
+
+To disable this new behavior, set hbase.write.hbck1.lock.file to false
+
+
+---
+
+* [HBASE-20881](https://issues.apache.org/jira/browse/HBASE-20881) | *Major* | **Introduce a region transition procedure to handle all the state transition for a region**
+
+Introduced a new TransitRegionStateProcedure to replace the old AssignProcedure/UnassignProcedure/MoveRegionProcedure. In the old code, MRP will not be attached to RegionStateNode, so it can not be interrupted by ServerCrashProcedure, which introduces lots of tricky code to deal with races, and also causes lots of other difficulties on how to prevent scheduling redundant or even conflict procedures for a region.
+
+And now TRSP is the only one procedure which can bring region online or offline. When you want to schedule one, you need to check whether there is already one attached to the RegionStateNode, under the lock of the RegionStateNode. If not just go ahead, and if there is one, then you should do something, for example, give up and fail directly, or tell the TRSP to give up(This is what SCP does). Since the check and attach are both under the lock of RSN, it will greatly reduce the possible r [...]
+
+
+---
+
+* [HBASE-21012](https://issues.apache.org/jira/browse/HBASE-21012) | *Critical* | **Revert the change of serializing TimeRangeTracker**
+
+HFiles generated by 2.0.0, 2.0.1, 2.1.0 are not forward compatible to 1.4.6-, 1.3.2.1-, 1.2.6.1-, and other inactive releases. Why HFile lose compatability is hbase in new versions (2.0.0, 2.0.1, 2.1.0) use protobuf to serialize/deserialize TimeRangeTracker (TRT) while old versions use DataInput/DataOutput. To solve this, We have to put HBASE-21012 to 2.x and put HBASE-21013 in 1.x. For more information, please check HBASE-21008.
+
+
+---
+
+* [HBASE-20965](https://issues.apache.org/jira/browse/HBASE-20965) | *Major* | **Separate region server report requests to new handlers**
+
+After HBASE-20965, we can use MasterFifoRpcScheduler in master to separate RegionServerReport requests to indenpedent handler. To use this feature, please set "hbase.master.rpc.scheduler.factory.class" to
+ "org.apache.hadoop.hbase.ipc.MasterFifoRpcScheduler". Use "hbase.master.server.report.handler.count" to set RegionServerReport handlers count, the default value is half of "hbase.regionserver.handler.count" value, but at least 1, and the other handlers count in master is "hbase.regionserver.handler.count" value minus RegionServerReport handlers count, but at least 1 too.
+
+
+---
+
+* [HBASE-20813](https://issues.apache.org/jira/browse/HBASE-20813) | *Minor* | **Remove RPC quotas when the associated table/Namespace is dropped off**
+
+In previous releases, when a Space Quota was configured on a table or namespace and that table or namespace was deleted, the Space Quota was also deleted. This change improves the implementation so that the same is also done for RPC Quotas.
+
+
+---
+
+* [HBASE-20986](https://issues.apache.org/jira/browse/HBASE-20986) | *Major* | **Separate the config of block size when we do log splitting and write Hlog**
+
+After HBASE-20986, we can set different value to block size of WAL and recovered edits. Both of their default value is 2 \* default HDFS blocksize. And hbase.regionserver.recoverededits.blocksize is for block size of recovered edits while hbase.regionserver.hlog.blocksize is for block size of WAL.
+
+
+---
+
+* [HBASE-20856](https://issues.apache.org/jira/browse/HBASE-20856) | *Minor* | **PITA having to set WAL provider in two places**
+
+With this change if a WAL's meta provider (hbase.wal.meta\_provider) is not explicitly set, it now defaults to whatever hbase.wal.provider is set to. Previous, the two settings operated independently, each with its own default.
+
+This change is operationally incompatible with previous HBase versions because the default WAL meta provider no longer defaults to AsyncFSWALProvider but to hbase.wal.provider.
+
+The thought is that this is more in line with an operator's expectation, that a change in hbase.wal.provider is sufficient to change how WALs are written, especially given hbase.wal.meta\_provider is an obscure configuration and that the very idea that meta regions would have their own wal provider would likely come as a surprise.
+
+
+---
+
+* [HBASE-20538](https://issues.apache.org/jira/browse/HBASE-20538) | *Critical* | **Upgrade our hadoop versions to 2.7.7 and 3.0.3**
+
+Update hadoop-two.version to 2.7.7 and hadoop-three.version to 3.0.3 due to a JDK issue which is solved by HADOOP-15473.
+
+
+---
+
+* [HBASE-20846](https://issues.apache.org/jira/browse/HBASE-20846) | *Major* | **Restore procedure locks when master restarts**
+
+1. Make hasLock method final, and add a locked field in Procedure to record whether we have the lock. We will set it to true in doAcquireLock and to false in doReleaseLock. The sub procedures do not need to manage it any more.
+
+2. Also added a locked field in the proto message. When storing, the field will be set according to the return value of hasLock. And when loading, there is a new field in Procedure called lockedWhenLoading. We will set it to true if the locked field in proto message is true.
+
+3. The reason why we can not set the locked field directly to true by calling doAcquireLock is that, during initialization, most procedures need to wait until master is initialized. So the solution here is that, we introduced a new method called waitInitialized in Procedure, and move the wait master initialized related code from acquireLock to this method. And we added a restoreLock method to Procedure, if lockedWhenLoading is true, we will call the acquireLock to get the lock, but do no [...]
+
+
+---
+
+* [HBASE-20672](https://issues.apache.org/jira/browse/HBASE-20672) | *Minor* | **New metrics ReadRequestRate and WriteRequestRate**
+
+Exposing 2 new metrics in HBase to provide ReadRequestRate and WriteRequestRate at region server level. These metrics give the rate of request handled by the region server and are reset after every monitoring interval.
+
+
+---
+
+* [HBASE-6028](https://issues.apache.org/jira/browse/HBASE-6028) | *Minor* | **Implement a cancel for in-progress compactions**
+
+Added a new command to the shell to switch on/off compactions called "compaction\_switch". Disabling compactions will interrupt any currently ongoing compactions. This setting will be lost on restart of the server. Added the configuration hbase.regionserver.compaction.enabled so user can enable/disable compactions via hbase-site.xml.
+
+
+---
+
+* [HBASE-20884](https://issues.apache.org/jira/browse/HBASE-20884) | *Major* | **Replace usage of our Base64 implementation with java.util.Base64**
+
+Class org.apache.hadoop.hbase.util.Base64 has been removed in it's entirety from HBase 2+. In HBase 1, unused methods have been removed from the class and the audience was changed from  Public to Private. This class was originally intended as an internal utility class that could be used externally but thinking since changed; these classes should not have been advertised as public to end-users.
+
+This represents an incompatible change for users who relied on this implementation. An alternative implementation for affected clients is available at java.util.Base64 when using Java 8 or newer; be aware, it may encode/decode differently. For clients seeking to restore this specific implementation, it is available in the public domain for download at http://iharder.sourceforge.net/current/java/base64/
+
+
+---
+
+* [HBASE-20357](https://issues.apache.org/jira/browse/HBASE-20357) | *Major* | **AccessControlClient API Enhancement**
+
+This enhances the AccessControlClient APIs to retrieve the permissions based on namespace, table name, family and qualifier for specific user. AccessControlClient can also validate a user whether allowed to perform specified operations on a particular table.
+Following APIs have been added,
+1) getUserPermissions(Connection connection, String tableRegex, byte[] columnFamily, byte[] columnQualifier, String userName)
+	 Scope of retrieving permission will be same as existing.
+2) hasPermission(onnection connection, String tableName, byte[] columnFamily, byte[] columnQualifier, String userName, Permission.Action... actions)
+     Scope of validating user privilege,
+           User can perform self check without any special privilege but ADMIN privilege will be required to perform check for other users.
+           For example, suppose there are two users "userA" & "userB" then there can be below scenarios,
+            a. When userA want to check whether userA have privilege to perform mentioned actions
+                 userA don't need ADMIN privilege, as it's a self query.
+            b. When userA want to check whether userB have privilege to perform mentioned actions,
+                 userA must have ADMIN or superuser privilege, as it's trying to query for other user.