[HBASE-10009] Wraps byte[] by a new defined ByteArray, whose equals/hashCode are overridden before the byte-array is used as a key to the map.

Author: daviddeng

Summary: Using byte[] directly as a key would not map two instance of array with same content to the same value. A wrapper class is defined to correct this.

Test Plan: Run test case: TestHTableMultiplexer

Reviewers: adela, ehwang, liyintang, manukranthk

Reviewed By: liyintang

CC: mahesh, hbase-eng@

Differential Revision: https://phabricator.fb.com/D1062655

Task ID: 3142036

git-svn-id: https://svn.apache.org/repos/asf/hbase/branches/0.89-fb@1546424 13f79535-47bb-0310-9956-ffa450edef68
[HBASE-9815] Add Histogram representative of row key distribution inside a region.

Author: manukranthk

Summary: Using Histogram of row key distribution inside a region, we can perform cost estimation of various scan operations and pro-actively optimize the parallelism of the scan operations.

Test Plan: Unit Tests

Reviewers: rshroff, aaiyer, liyintang

Reviewed By: liyintang

CC: hbase-eng@, san, liyintang, adela, gauravm

Differential Revision: https://phabricator.fb.com/D1004829

Task ID: 2905536

git-svn-id: https://svn.apache.org/repos/asf/hbase/branches/0.89-fb@1546425 13f79535-47bb-0310-9956-ffa450edef68
[master] Reduce log spam upon Scanner close

Author: arjen

Summary: D971692 makes a log line being printed upon closing a Scanner (P3083477). This seems rather excessive and it generates quite a bit of log under load.

Test Plan: Compiled and deployed a jar on hbase474.frc3. The line went away.

Reviewers: liyintang, aaiyer, manukranthk

Reviewed By: liyintang

CC: hbase-eng@

Differential Revision: https://phabricator.fb.com/D1046339

git-svn-id: https://svn.apache.org/repos/asf/hbase/branches/0.89-fb@1546426 13f79535-47bb-0310-9956-ffa450edef68
[HBASE-8185] Refactoring ClientScanner

Author: daviddeng

Summary: Using ResultScannerImpl to implement ClientScanner

Test Plan: Run HTable related testcases

Reviewers: manukranthk

Reviewed By: manukranthk

CC: mahesh

Differential Revision: https://phabricator.fb.com/D1065999

Task ID: 2394125

git-svn-id: https://svn.apache.org/repos/asf/hbase/branches/0.89-fb@1546427 13f79535-47bb-0310-9956-ffa450edef68
[HBASE-8805] Add online configeration supporting and corresponding testcases

Author: daviddeng

Summary: HRegion implements ConfigurationObserver, register/deregister from HRegionServer.configurationManager, testcases

Test Plan: Run testcase

Reviewers: gauravm, zelaine, liyintang

Reviewed By: liyintang

CC: mahesh, hbase-eng@

Differential Revision: https://phabricator.fb.com/D1067616

Task ID: 2977299

git-svn-id: https://svn.apache.org/repos/asf/hbase/branches/0.89-fb@1546428 13f79535-47bb-0310-9956-ffa450edef68
[master] Make L2 cache online configurable

Author: arjen

Summary: This diff allows the L2 cache to be disabled or L2 cache policies to be modified without restarting the RS. This is a preliminary diff to get some eyes on as I am not fully done testing.

Test Plan: Unit tests.

Reviewers: liyintang, gauravm

Reviewed By: liyintang

CC: hbase-eng@

Differential Revision: https://phabricator.fb.com/D1059239

git-svn-id: https://svn.apache.org/repos/asf/hbase/branches/0.89-fb@1546430 13f79535-47bb-0310-9956-ffa450edef68
[HBASE-8805] Add online configeration supporting and corresponding testcases

Author: daviddeng

Summary: HRegion implements ConfigurationObserver, register/deregister from HRegionServer.configurationManager, testcases

Test Plan: Run testcase

Reviewers: gauravm, zelaine, liyintang

Reviewed By: liyintang

CC: mahesh, hbase-eng@

Differential Revision: https://phabricator.fb.com/D1067616

Task ID: 2977299

git-svn-id: https://svn.apache.org/repos/asf/hbase/branches/0.89-fb@1546431 13f79535-47bb-0310-9956-ffa450edef68
[HBASE-9815] Fix a NullPointerException in HRegion.getHistogram()

Author: manukranthk

Summary: Fixing the NPE in HRegion.getHistogram().

Test Plan: Unit Test

Reviewers: adela, liyintang

Reviewed By: liyintang

CC: hbase-eng@, daviddeng

Differential Revision: https://phabricator.fb.com/D1072451

Task ID: 2905536

git-svn-id: https://svn.apache.org/repos/asf/hbase/branches/0.89-fb@1546432 13f79535-47bb-0310-9956-ffa450edef68
[master] GC disabled L2 cache and reset some stat counters

Author: arjen

Summary: During the testing of disabling the L2 cache I forgot to check if the memory allocated to the L2 cache is properly released to the OS, allowing it to be reused as FS cache and continue running in a known state. This diff properly releases the memory used by the L2 cache and resets some of the metrics to reflect this.

Test Plan: Built and deployed a jar to hbase481.frc3. While running with L2 cache enabled the resident memory is ~32GB. After disabling the cache the rresident memory drops to ~24GB and ODS graphs reflect this change properly.

Reviewers: aaiyer, liyintang

Reviewed By: liyintang

Differential Revision: https://phabricator.fb.com/D1074744

Task ID: 2325295

git-svn-id: https://svn.apache.org/repos/asf/hbase/branches/0.89-fb@1546433 13f79535-47bb-0310-9956-ffa450edef68
[master] Add a conf setting to avoid perf regression caused by avoiding SEEK_NEXT_USING_HINT

Author: aaiyer

Summary: Add a conf setting to avoid perf regression caused by avoiding SEEK_NEXT_USING_HINT

Test Plan: push to tsh052 and see the iops go down

Reviewers: rshroff, fan

Reviewed By: fan

CC: hbase-eng@

Differential Revision: https://phabricator.fb.com/D1077065

Blame Revision: https://phabricator.fb.com/D984895

Task ID: 2708958

git-svn-id: https://svn.apache.org/repos/asf/hbase/branches/0.89-fb@1546434 13f79535-47bb-0310-9956-ffa450edef68