Commit Graph

8643 Commits

Author SHA1 Message Date
Andrew Purtell 4a2828386f Preparing hbase release 2.4.5RC0; tagging and updates to CHANGES.md and RELEASENOTES.md
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-07-23 09:55:52 -07:00
Rushabh Shah 9a8fff78e7 HBASE-26093 Replication is stuck due to zero length wal file in oldWALs directory (#3504)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-07-23 09:33:50 -07:00
meiyi a3940afd25 HBASE-24734 RegionInfo#containsRange should support check meta table (#3496) (#3517)
Signed-off-by: zhangduo <zhangduo@apache.org>
2021-07-22 18:05:14 +08:00
gkanade a72c62b022 HBASE-24984 WAL corruption due to early DBBs re-use when Durability.ASYNC_WAL is used with multi operation (#3512)
Signed-off-by: Anoop <anoopsamjohn@apache.org>
Signed-off-by: zhangduo <zhangduo@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Huaxiang Sun <huaxiangsun@apache.org>
2021-07-22 08:35:46 +05:30
Aman Poonia 02c796ca0e
HBASE-25986 set default value of normalization enabled from hbase site (#3476) (#3372)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-07-19 15:29:02 +05:30
clarax 6ab6d6f231
HBASE-25973 Balancer should explain progress in a better way in log - backport branch-2 (#3485)
Signed-off-by: stack <stack@apache.org>
2021-07-16 15:20:14 -07:00
clarax dd2ae3605d
HBASE-25739 TableSkewCostFunction need to use aggregated deviation - … (#3481)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
    Signed-off-by: stack <stack@duboce.net>
    Reviewed-by: Nick Dimiduk <ndimiduk@apache.org>
2021-07-16 10:53:41 -07:00
YutSean 5ee1447b55 HBASE-26083 In branch-2 & branch-1 L1 miss metric is always 0 when using CombinedBlockCache (#3473)
Signed-off-by Anoop Sam John <anoopsamjohn@apache.org>
Signed-off-by Reid Chan <reidchan@apache.org>
2021-07-16 10:38:05 +08:00
binlijin 1d0cfa9ed4 HBASE-26086 TestHRegionReplayEvents do not pass in branch-2 and throws NullPointerException (#3480)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Anoop Sam John <anoopsamjohn@apache.org>
Signed-off-by: Reid Chan <reidchan@apache.org>
2021-07-15 09:53:34 +08:00
Xiaolin Ha b83fec48dc
HBASE-26036 DBB released too early in HRegion.get() and dirty data for some operations (#3436) (#3486) (#3487)
Signed-off-by: Michael Stack <stack@apache.org>
2021-07-14 16:40:25 +08:00
Duo Zhang 273c5c567d HBASE-26068 The last assertion in TestHStore.testRefreshStoreFilesNotChanged is wrong (#3461)
Signed-off-by: Yulin Niu <niuyulin@apache.org
2021-07-07 14:39:14 +08:00
Viraj Jasani 4bd7aed064
HBASE-22923 Consider minVersionToMoveSysTables while moving region and creating regionPlan (ADDENDUM) (#3455)
Signed-off-by: David Manning <david.manning@salesforce.com>
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2021-07-03 22:45:17 +05:30
Viraj Jasani c50867348b
HBASE-22923 min version of RegionServer to move system table regions (#3439) (#3438)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2021-07-01 16:24:47 +05:30
Viraj Jasani 5b5c92f427
HBASE-25902 Add missing CFs in meta during HBase 1 to 2 Upgrade (#3417)
Signed-off-by: Michael Stack <stack@apache.org>
2021-07-01 15:14:23 +05:30
bsglz 399b58e7c6 HBASE-26028 The view as json page shows exception when using TinyLfuBlockCache (#3420)
(cherry picked from commit 147b030c1f)
2021-07-01 10:36:20 +08:00
Duo Zhang c5a6e19be0 HBASE-26039 TestReplicationKillRS is useless after HBASE-23956 (#3440)
Signed-off-by: Michael Stack <stack@apache.org>
2021-06-30 08:32:36 +08:00
GeorryHuang 270b3facce HBASE-25980 Master table.jsp pointed at meta throws 500 when no all r… (#3373)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-06-27 22:33:48 +08:00
GeorryHuang 414deeea83 HBASE-26015 Should implement getRegionServers(boolean) method in Asyn… (#3406)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-06-27 22:13:36 +08:00
YutSean 3a6441c946 HBASE-26013 Get operations readRows metrics becomes zero after HBASE-25677 (#3411)
Signed-off-by: Reid Chan <reidchan@apache.org>
2021-06-24 15:37:46 +08:00
Duo Zhang b453cbd819 HBASE-26020 Split TestWALEntryStream.testDifferentCounts out (#3409)
Signed-off-by: Xiaolin Ha <haxiaolin@apache.org>
2021-06-23 23:19:28 +08:00
litao 8d1473d321
HBASE-25934 Add username for RegionScannerHolder (#3325)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-06-23 12:55:21 +05:30
lujiefsi f09924b650 HBASE-25877 Add access check for compactionSwitch (#3253)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-06-22 23:47:04 +08:00
belugabehr ea439c652a HBASE-25937: Clarify UnknownRegionException (#3330)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-06-22 22:44:21 +08:00
Duo Zhang ad545aa548 HBASE-25992 Addendum add missing catch WALEntryFilterRetryableException back 2021-06-21 23:59:11 +08:00
YutSean 02714cbc18 HBASE-26001 When turn on access control, the cell level TTL of Increment and Append operations is invalid (#3403)
Signed-off-by: Reid Chan <reidchan@apache.org>
(cherry-picked from 029dc81b39)
2021-06-21 15:30:20 +08:00
Viraj Jasani 0c1d1d26a8
HBASE-25698 Fixing IllegalReferenceCountException when using TinyLfuBlockCache (#3215)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Anoop Sam John <anoopsamjohn@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2021-06-21 12:57:48 +05:30
Duo Zhang beaeb0dfec HBASE-25992 Polish the ReplicationSourceWALReader code for 2.x after HBASE-25596 (#3376)
Signed-off-by: Yulin Niu <niuyulin@apache.org>
2021-06-20 16:44:51 +08:00
Bharath Vissapragada 58f067dc4d
HBASE-25998: Redo synchronization in SyncFuture (#3400)
Currently uses coarse grained synchronized approach that seems to
create a lot of contention. This patch

- Uses a reentrant lock instead of synchronized monitor
- Switches to a condition variable based waiting rather than busy wait
- Removed synchronization for unnecessary fields

Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
(cherry picked from commit 6bafb59642)
2021-06-18 10:37:01 -07:00
Bharath Vissapragada a4ceabdc76
HBASE-25984: Avoid premature reuse of sync futures in FSHLog (#3371) (#3393)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: Wei-Chiu Chuang <weichiu@apache.org>
(cherry picked from commit 5a19bcfa98)
2021-06-17 12:28:18 -07:00
binlijin 814b196f03 HBASE-25997 NettyRpcFrameDecoder decode request header wrong when han… (#3380)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-06-15 14:42:26 +08:00
Toshihiro Suzuki b061d477a8 HBASE-26002 MultiRowMutationEndpoint should return the result of the conditional update (#3386)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-06-15 13:57:25 +09:00
Duo Zhang 5159eaec12 HBASE-25995 Change the method name for DoubleArrayCost.setCosts (#3381)
Signed-off-by: Yulin Niu <niuyulin@apache.org>
2021-06-15 12:06:02 +08:00
Duo Zhang 711b76c24f
HBASE-25947 Backport 'HBASE-25894 Improve the performance for region load and region count related cost functions' to branch-2.4 and branch-2.3 (#3339)
Signed-off-by: Xiaolin Ha <haxiaolin@apache.org>
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2021-06-11 09:33:08 +08:00
Zheng Wang 1fd584ed2f HBASE-25967 The readRequestsCount does not calculate when the outResults is empty 2021-06-10 11:08:30 +08:00
Xiaolin Ha 7436a345be HBASE-25981 JVM crash when displaying RegionServer UI (#3364)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-06-09 18:18:48 +08:00
Andrew Purtell 09eebe5cd0 Preparing development version 2.4.5-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-06-07 15:21:44 -07:00
Andrew Purtell 20e7ba45b0 Preparing hbase release 2.4.4RC0; tagging and updates to CHANGES.md and RELEASENOTES.md
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-06-07 15:21:39 -07:00
Duo Zhang 6d1d64caf7 HBASE-25963 HBaseCluster should be marked as IA.Public (#3348)
Signed-off-by: Yulin Niu <niuyulin@apache.org>
2021-06-06 21:27:18 +08:00
meiyi 2dd7ec9d9e HBASE-25929 RegionServer JVM crash when compaction (#3318)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-06-03 17:34:53 +08:00
Bharath Vissapragada 8a41cb7f1d
HBASE-25932: Ensure replication reads the trailer bytes from WAL. (#3332) (#3346)
This bug was exposed by the test from HBASE-25924. Since this wal
implementations close the wal asynchronously, replication can potentially
miss the trailer bytes. (see jira comment for detailed analysis).

While this is not a correctness problem (since trailer does not have any entry data),
it erroneously bumps a metric that is used to track skipped bytes in WAL resulting
in false alarms which is something we should avoid.

Reviewed-by: Rushabh Shah <rushabh.shah@salesforce.com>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by Anoop Sam John <anoopsamjohn@apache.org>
(cherry picked from commit b04c3c7786)
2021-06-01 08:04:02 -07:00
Michael Stack a43afa3576 HBASE-25940 Update Compression/TestCompressionTest: LZ4, SNAPPY, LZO (#3334)
Undo asserts that LZ4 and SNAPPY fails if their native libs are NOT
loaded; as of hadoop 3.3.1, LZ4 and SNAPPY can work w/o native libs.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-05-29 09:10:23 -07:00
Sandeep Pal d37f490d40
HBASE-25927: Fix the log messages by not stringifying the exceptions in log (#3338)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
(cherry picked from commit 9a2027bf71)
2021-05-28 21:35:44 -07:00
Duo Zhang 042aa14fb7 HBASE-25938 The SnapshotOfRegionAssignmentFromMeta.initialize call in FavoredNodeLoadBalancer is just a dummy one (#3329)
Signed-off-by: Yulin Niu <niuyulin@apache.org>
2021-05-29 11:11:06 +08:00
Victor 296be5b426
HBASE-25910 - Fix port assignment test (#3308)
Signed-off-by: David Manning <david.manning@salesforce.com>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-05-28 20:53:42 +05:30
Wellington Ramos Chevreuil fa577ad92c HBASE-25933 Log trace raw exception, instead of cause message in NettyRpcServerRequestDecoder (#3323)
Signed-off-by: Rushabh Shah <shahrs87@gmail.com>
Signed-off-by: Peter Somogyi <psomogyi@apache.org>
Signed-off-by: Josh Elser <elserj@apache.org>

(Cherry picked from commit feb89d988b)
2021-05-27 20:04:42 +01:00
Rushabh Shah 286899450d HBASE-25924 Re-compute size of WAL file while removing from WALEntryStream (#3315)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2021-05-26 10:43:48 -07:00
Pankaj 22c26f1fc8 HBASE-25875 RegionServer failed to start with IllegalThreadStateException due to race condition in AuthenticationTokenSecretManager (#3250)
* HBASE-25875 RegionServer failed to start with IllegalThreadStateException due to race condition in AuthenticationTokenSecretManager's start & retrievePassword method

Signed-off-by: stack <stack@apache.com>
(cherry picked from commit 2126ec94f0)
2021-05-26 00:14:32 +05:30
GeorryHuang 4e079ace58
HBASE-25906 UI of master-status to show recent history of balancer desicion (#3303) (#3296)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-05-25 12:42:01 +05:30
Anoop Sam John 0df3deab92 HBASE-25898 RS getting aborted due to NPE in Replication WALEntryStream (#3292)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: Rushabh Shah <shahrs87@gmail.com>
2021-05-24 23:46:26 +05:30
GeorryHuang a7e6cac7a0 HBASE-25791 UI of master-status to show a recent history of that why balancer was rejected to run (#3278)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-05-24 21:40:13 +08:00
caoliqing 1e1ac9eda3 HBASE-25892: 'False' should be 'True' in auditlog of listLabels (#3273)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-05-22 17:25:51 +08:00
Sandeep Pal 646dbfee03
HBASE-25848: Add flexibility to backup replication in case replication filter throws an exception (#3289) 2021-05-21 11:55:47 -07:00
Rushabh Shah 700499be36
HBASE-25827 Per Cell TTL tags get duplicated with increments causing tags length overflow (#3290)(#3210)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-05-21 23:00:52 +05:30
Andrew Purtell e82340ec64 Preparing development version 2.4.4-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-05-19 12:38:15 -07:00
Andrew Purtell 401b60b217 Preparing hbase release 2.4.3RC1; tagging and updates to CHANGES.md and RELEASENOTES.md
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-05-19 12:38:07 -07:00
Andrew Purtell bf518cff56 Revert "HBASE-25875 RegionServer failed to start with IllegalThreadStateException due to race condition in AuthenticationTokenSecretManager (#3250)"
This reverts commit 21c1dc7e6c.
2021-05-19 12:29:24 -07:00
Andrew Purtell 2fec951303 Revert "HBASE-25032 Do not assign regions to region server which has not called regionServerReport yet (#3268)"
This reverts commit 2bf86468d8.
2021-05-19 12:29:12 -07:00
Andrew Purtell 4eaba9e9b1 Revert "Preparing hbase release 2.4.3RC1; tagging and updates to CHANGES.md and RELEASENOTES.md"
This reverts commit c2707bc6a8.
2021-05-19 12:28:57 -07:00
Andrew Purtell 49ed8cc306 Revert "Preparing development version 2.4.4-SNAPSHOT"
This reverts commit cf287aaf95.
2021-05-19 12:28:48 -07:00
Andrew Purtell cf287aaf95 Preparing development version 2.4.4-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-05-19 11:13:54 -07:00
Andrew Purtell c2707bc6a8 Preparing hbase release 2.4.3RC1; tagging and updates to CHANGES.md and RELEASENOTES.md
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-05-19 11:13:48 -07:00
Andrew Purtell 97c8201f9a Revert "Preparing hbase release 2.4.3RC1; tagging and updates to CHANGES.md and RELEASENOTES.md"
This reverts commit f9ed394627.
2021-05-19 10:52:24 -07:00
Andrew Purtell ed71600540 Revert "Preparing development version 2.4.4-SNAPSHOT"
This reverts commit 231c37b4f6.
2021-05-19 10:52:15 -07:00
Andrew Purtell 231c37b4f6 Preparing development version 2.4.4-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-05-19 10:18:46 -07:00
Andrew Purtell f9ed394627 Preparing hbase release 2.4.3RC1; tagging and updates to CHANGES.md and RELEASENOTES.md
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-05-19 10:18:40 -07:00
Andrew Purtell 8ce0aba77e Revert "Preparing hbase release 2.4.3RC0; tagging and updates to CHANGES.md and RELEASENOTES.md"
This reverts commit af14fd998c.
2021-05-19 10:08:39 -07:00
Andrew Purtell d82426c41c Revert "Preparing development version 2.4.4-SNAPSHOT"
This reverts commit 0c5c0e5da8.
2021-05-19 10:07:40 -07:00
Duo Zhang 2bf86468d8 HBASE-25032 Do not assign regions to region server which has not called regionServerReport yet (#3268)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2021-05-18 10:43:13 +08:00
Pankaj 21c1dc7e6c HBASE-25875 RegionServer failed to start with IllegalThreadStateException due to race condition in AuthenticationTokenSecretManager (#3250)
* HBASE-25875 RegionServer failed to start with IllegalThreadStateException due to race condition in AuthenticationTokenSecretManager's start & retrievePassword method

Signed-off-by: stack <stack@apache.com>
(cherry picked from commit 2126ec94f0)
2021-05-17 22:51:11 +05:30
Andrew Purtell 0c5c0e5da8 Preparing development version 2.4.4-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-05-14 13:12:49 -07:00
Andrew Purtell 13043ecf96 Revert "Preparing development version 2.4.4-SNAPSHOT"
This reverts commit 8fd02a75f8.
2021-05-14 13:12:49 -07:00
Viraj Jasani 112b58ad8c
HBASE-25884 Return empty records for disabled balancer in-memory queue (#3263)
Signed-off-by: stack <stack@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Aman Poonia <apoonia@salesforce.com>
2021-05-14 12:57:59 +05:30
Michael Stack 1c829af56a HBASE-25876 Add retry if we fail to read all bytes of the protobuf magic marker (#3251)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by Anoop Sam John <anoopsamjohn@apache.org>
2021-05-12 19:23:14 +01:00
Michael Stack 924f256006
HBASE-25867 Extra doc around ITBLL (#3242)
* HBASE-25867 Extra doc around ITBLL

Minor edits to a few log messages.
Explain how the '-c' option works when passed to ChaosMonkeyRunner.
Some added notes on ITBLL.
Fix whacky 'R' and 'Not r' thing in Master (shows when you run ITBLL).
In HRS, report hostname and port when it checks in (was debugging issue
where Master and HRS had different notions of its hostname).
Spare a dirty FNFException on startup if base dir not yet in place.

* Address Review by Sean

Signed-off-by: Sean Busbey <busbey@apache.org>
2021-05-11 11:23:14 -07:00
Catalin Luca 992d80ad39 HBASE-25859 Reference class incorrectly parses the protobuf magic marker (#3236)
Co-authored-by: Catalin Luca <luca@adobe.com>
Signed-off-by: stack <stack@apache.org>
2021-05-10 14:50:50 -05:00
Viraj Jasani e4dc6eaa76
HBASE-25790 Test fix Addendum 2021-05-09 00:39:31 +05:30
GeorryHuang 26e9c5b3ce
HBASE-25790 NamedQueue 'BalancerRejection' for recent history of balancer skipping (#3182) (#3245)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-05-09 00:26:58 +05:30
Rushabh Shah c33767029e
HBASE-25860 Add metric for successful wal roll requests. (#3238)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-05-08 13:08:34 +05:30
Andrew Purtell 6978b8a0ef HBASE-25774 ServerManager.getOnlineServer may miss some region servers when refreshing state in some procedure implementations
Revert "HBASE-25032 Wait for region server to become online before adding it to online servers in Master (#2771)"

This reverts commit 5d7e2f71f7.
2021-05-07 17:56:57 -07:00
Andrew Purtell 4de3841074 HBASE-25854 Remove redundant AM in-memory state changes in CatalogJanitor (#3234)
In CatalogJanitor we schedule GCRegionProcedure to clean up both
filesystem and in-memory state after a split, and
GCMultipleMergedRegionsProcedure to do the same for merges. Both of these
procedures clean up in-memory state, but CatalogJanitor also does this
redundantly just after scheduling the procedures. The cleanup should be
done in only one place. Presumably we are using the procedures to do it in
a principled way. Remove the redundancy in CatalogJanitor and fix any
follow on issues, like test failures.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-05-06 09:17:35 -07:00
Andrew Purtell c32b6c8eff HBASE-25847 More DEBUG and TRACE level logging in CatalogJanitor and HbckChore (#3230)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2021-05-05 17:02:18 -07:00
Andrew Purtell 0fc6852f6a HBASE-25835 Ignore duplicate split requests from regionserver reports (#3218)
Processing of the RS report happens asynchronously from other activities
which can mutate region state. For example, a split procedure may already
be running. A split procedure cannot succeed if the parent region is no
longer open, so we can ignore it in that case.

Note that submitting more than one split procedure for a given region is
harmless -- the split is fenced in the procedure handling -- but it would
be noisy in the logs. Only one procedure can succeed. The other
procedure(s) would abort during initialization and report failure with
WARN level logging.

Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: Pankaj <pankajkumar@apache.org>
2021-05-04 10:23:04 -07:00
Andrew Purtell fd3e28364c HBASE-25836 RegionStates#getAssignmentsForBalancer should only care about OPEN or OPENING regions (#3219)
RegionStates#getAssignmentsForBalancer is used by the HMaster to
collect all regions of interest to the balancer for the next chore
iteration. We check if a table is in disabled state to exclude
regions that will not be of interest (because disabled regions are
or will be offline) or are in a state where they shouldn't be
mutated (like SPLITTING). The current checks are not actually
comprehensive.

Filter out regions not in OPEN or OPENING state when building the
set of interesting regions for the balancer to consider. Only
regions open (or opening) on the cluster are of interest to
balancing calculations for the current iteration. Regions in all
other states can be expected to not be of interest – either offline
(OFFLINE, or FAILED_*), not subject to balancer decisions now
(SPLITTING, SPLITTING_NEW, MERGING, MERGING_NEW), or will be
offline shortly (CLOSING) – until at least the next chore
iteration.

Add TRACE level logging.

Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-05-03 18:24:17 -07:00
Andrew Purtell 368d52fe99 HBASE-25840 CatalogJanitor warns about skipping gc of regions during RIT, but does not actually skip (#3223)
We claim in a WARN level log line to be "Playing-it-safe skipping merge/
split gc'ing of regions from hbase:meta while regions-in-transition (RIT)"
but do not actually skip because of a missing return. Remove the warning.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-05-03 18:17:56 -07:00
Duo Zhang 08507b86a8 HBASE-25838 Use double instead of Double in StochasticLoadBalancer (#3221)
Signed-off-by: Yulin Niu <niuyulin@apache.org>
2021-05-04 09:10:35 +08:00
Andrew Purtell 8fd02a75f8 Preparing development version 2.4.4-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-04-27 14:58:08 -07:00
Andrew Purtell af14fd998c Preparing hbase release 2.4.3RC0; tagging and updates to CHANGES.md and RELEASENOTES.md
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-04-27 14:58:03 -07:00
stack 12200e9d89 HBASE-25792 Filter out o.a.hadoop.thirdparty building shaded jars (#3184)
Need to add to allowed-licenses list too....

Signed-off-by: Wei-Chiu Chuang <weichiu@apache.org>
Reviewed-by: Duo Zhang <zhangduo@apache.org>
Reviewed-by: Nick Dimiduk <ndimiduk@apache.org>
2021-04-27 09:07:21 -07:00
Duo Zhang e765e19279 HBASE-25806 Backport the region location finder initialization fix in HBASE-25802 (#3196)
Signed-off-by: Yulin Niu <niuyulin@apache.org>
2021-04-26 13:07:41 +08:00
haxiaolin 1dc881ab85 HBASE-25754 StripeCompactionPolicy should support compacting cold regions (#3152)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-04-23 15:32:27 +08:00
Toshihiro Suzuki cc7c4352ee HBASE-25766 Introduce RegionSplitRestriction that restricts the pattern of the split point
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2021-04-22 14:14:36 +09:00
Duo Zhang a15fd5cff5 HBASE-25775 Use a special balancer to deal with maintenance mode (#3161)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
2021-04-16 13:40:29 +08:00
Nick Dimiduk 7179c013bb HBASE-25770 Http InfoServers should honor gzip encoding when requested (#3159)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Josh Elser <elserj@apache.org>
2021-04-15 13:53:01 -07:00
xiaoyu 22fd7d7f10
HBASE-25776 Use Class.asSubclass to fix the warning in StochasticLoadBalancer.loadCustomCostFunctions (#3163)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-04-15 23:37:05 +05:30
Duo Zhang 69e93c8137 HBASE-25767 CandidateGenerator.getRandomIterationOrder is too slow on large cluster (#3149)
Signed-off-by: XinSun <ddupgs@gmail.com>
Signed-off-by: Yulin Niu <niuyulin@apache.org>
2021-04-14 08:29:01 +08:00
DivyeshChandra 082ad7cf21 HBASE-25653 Add units and round off region size to 2 digits after decimal (#3046)
Signed-off-by: stack <stack@duboce.net>
Reviewed-by: Viraj Jasani <vjasani@apache.org>
2021-04-13 09:07:19 -07:00
Duo Zhang d2cba187e5 HBASE-25759 The master services field in LocalityBasedCostFunction is never used (#3144)
Signed-off-by: Yulin Niu <niuyulin@apache.org>
2021-04-12 22:43:48 +08:00
Geoffrey Jacoby 843e1369f7 HBASE-25751 - Add writable TimeToPurgeDeletes to ScanOptions (#3137)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-04-09 13:09:28 -07:00
meiyi da6b1df643 HBASE-25747 Remove unused getWriteAvailable method in OperationQuota (#3133)
Signed-off-by: stack <stack@apache.org>
2021-04-09 10:26:26 +08:00
Pankaj e2dedf9ef1
HBASE-25717 RegionServer aborted with due to ClassCastException (#3108)
Signed-off-by: stack <stack@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-04-08 16:30:12 +05:30
Jan Hentschel 41b4e6e5c4
HBASE-24305 Prepare deprecations in ServerName (#1666) (#3125)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: stack <stack@apache.org>
2021-04-06 19:10:52 +02:00
Jan Hentschel 7b0af17551 HBASE-25199 Remove deprecated HStore#getStoreHomedir methods (#2562)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-04-03 23:44:37 +08:00
d-c-manning 8e49848e75 HBASE-25726 MoveCostFunction is not included in the list of cost functions for StochasticLoadBalancer (#3116)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-04-02 10:45:49 -07:00
lujiefsi 3234154689 HBASE-25558:Adding audit log for execMasterService (#3101)
Signed-off-by: stack <stack@apache.org>
2021-03-31 16:16:59 -07:00
Toshihiro Suzuki 6f4ab4a134 HBASE-25703 Support conditional update in MultiRowMutationEndpoint (#3107)
Signed-off-by: Michael Stack <stack@apache.org>
2021-03-30 23:06:04 +09:00
Josh Elser 92f7be5da7 HBASE-25692 Always try to close the WAL reader when we catch any exception (#3090)
There are code paths in which we throw non-IOExceptions when
initializing a WAL reader. However, we only close the InputStream to the
WAL filesystem when the exception is an IOException. Close it if it is
open in all cases.

Co-authored-by: Josh Elser <jelser@cloudera.com>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-03-29 12:20:06 -07:00
Michael Stack c1bda19694 HBASE-25695 Link to the filter on hbase:meta from user tables panel on master page (#3092)
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2021-03-27 20:36:08 -07:00
caroliney14 5d7e2f71f7
HBASE-25032 Wait for region server to become online before adding it to online servers in Master (#2771)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
(cherry picked from commit 3bb978894d)
2021-03-25 17:12:38 -07:00
Andrew Purtell a11220d3bf HBASE-25693 NPE getting metrics from standby masters (MetricsMasterWrapperImpl.getMergePlanCount) (#3091)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2021-03-24 19:11:07 -07:00
huaxiangsun 91205bf227
HBASE-25691 Test failure: TestVerifyBucketCacheFile.testRetrieveFromFile (#3088)
The issue is that FileInputStream is created with try-with-resources, so its close() is called right after the try sentence.
FileInputStream is a finalize class, when this object is garbage collected, its close() is called again.
To avoid this double-free resources, add guard against it.

Signed-off-by: stack <stack@apache.org>
2021-03-24 14:39:35 -07:00
Toshihiro Suzuki 4cf28c43f5 HBASE-25678 Support nonce operations for Increment/Append in RowMutations and CheckAndMutate
Signed-off-by: stack <stack@apache.org>
2021-03-21 23:39:45 +09:00
shahrs87 27e9c281da HBASE-25679 Size of log queue metric is incorrect (#3071)
Co-authored-by: Rushabh <rushabh.shah@salesforce.com>
Signed-off-by: stack <stack@apache.org>
2021-03-19 16:16:13 -07:00
haxiaolin df6e5dd0b1 HBASE-25518 Support separate child regions to different region servers (#3001)
Signed-off-by: stack <stack@apache.org>
2021-03-18 12:39:15 -07:00
Michael Stack 3331e8307a HBASE-25677 Server+table counters on each scan #nextRaw invocation becomes a bottleneck when heavy load (#3061)
Don't have every handler update regionserver metrics on each
scan#nextRaw; instead, do a batch update just before Scan
returns. Otherwise, all running handlers end up contending
on metrics update.

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
 Update of regionserver metrics counters moved out to caller where
 can be done as a batch update instead of per-next.

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/MetricsRegionServer.java
 Class doc to encourage batch updating metrics.
 Remove the single update as unused anymore.

M hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java
 Count calls to nextRaw. Update regionserver count in finally block when
 scan is done rather than per nextRaw call. Move all metrics updates to
 finally.

Signed-off-by: Reid Chan <reidchan@apache.org>
Signed-off-by: Baiqiang Zhao <ZhaoBQ>
2021-03-18 11:34:53 -07:00
Sandeep Pal c485a6bb79
HBASE-25627: HBase replication should have a metric to represent if the source is stuck getting initialized (#3018)
Introduces a new metric that tracks number of replication sources that are stuck in initialization.

Signed-off-by: Xu Cang <xucang@apache.org>
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
(cherry picked from commit ff3821814a)
2021-03-17 10:36:24 -07:00
stack 7de67b30fc Revert "HBASE-25665 Option to use hostname instead of canonical hostname for secure HBase cluster connection (#3051)"
This reverts commit 90c147f97c.

Reverting because new feature and only want bug fixes on branches.
2021-03-16 21:08:24 -07:00
bitterfox 90c147f97c HBASE-25665 Option to use hostname instead of canonical hostname for secure HBase cluster connection (#3051) 2021-03-16 21:05:42 -07:00
Baiqiang Zhao aa6c013a01 HBASE-25597 Add row info in Exception when cell size exceeds maxCellSize (#2976)
Signed-off-by: stack <stack@apache.org>
2021-03-15 15:50:45 -07:00
haxiaolin df2daf9e1e HBASE-25621 Balancer should check region plan source to avoid misplace region groups (#3002)
Signed-off-by: stack <stack@duboce.net>
2021-03-15 14:48:47 -07:00
haxiaolin 3c9a7e01ed HBASE-25595 TestLruBlockCache.testBackgroundEvictionThread is flaky (#2974)
Signed-off-by: stack <stack@apache.org>
2021-03-15 14:26:31 -07:00
Michael Stack 6414ef91d6 HBASE-25660 Print split policy in use on Region open (as well as split policy vitals) (#3044)
Add a toString to all split policy implementations listing name and
 vitals. Use this toString in the Region open message. Ditto for flush
 policy for the Region.

 Signed-off-by: Huaxiang Sun<huaxiangsun@apache.org>
2021-03-15 14:11:54 -07:00
haxiaolin 2ecf9232bf HBASE-25635 CandidateGenerator may miss some region balance actions (#3024)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-03-15 21:42:02 +08:00
Duo Zhang f9d80f18cb HBASE-25657 Fix spotbugs warnings after upgrading spotbugs to 4.x (#3041)
Signed-off-by: meiyi <myimeiyi@gmail.com>
Signed-off-by: stack <stack@apache.org>
2021-03-12 14:37:29 +08:00
shahrs87 5c149d1ce6 HBASE-25622 Result#compareResults should compare tags. (#3026)
Signed-off-by: stack <stack@apache.org>
2021-03-11 21:52:45 -08:00
Michael Stack 8658650823 HBASE-25570 On largish cluster, "CleanerChore: Could not delete dir..." makes master log unreadable (#2949)
Turn down the amount we log. If you want to see the full exception
enable TRACE-level logging.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: shahrs87
2021-03-11 21:37:16 -08:00
Peter Somogyi 723f2eea76 HBASE-25587 [hbck2] Schedule SCP for all unknown servers (#2978)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
2021-03-11 17:28:56 +01:00
meiyi 35d44c6ce6 HBASE-25636 Expose HBCK report as metrics (#3031)
Signed-off-by: zhangduo <zhangduo@apache.org>
2021-03-11 15:32:41 +08:00
Duo Zhang ee7beca604 HBASE-25629 Reimplement TestCurrentHourProvider to not depend on unstable TZs (#3013)
Signed-off-by: XinSun <ddupgs@gmail.com>
2021-03-10 23:54:10 +08:00
Wellington Ramos Chevreuil 75a4b6143e HBASE-25548 Optionally allow snapshots to preserve cluster's max file… (#2923)
Signed-off-by: Peter Somogyi <psomogyi@apache.org>
(cherry picked from commit 373dc7788d)
2021-03-10 10:37:46 +00:00
Anoop Sam John e793303d7f HBASE-25582 Support setting scan ReadType to be STREAM at cluster level (#3040)
Signed-off-by: zhangduo <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-03-10 13:24:31 +05:30
Narges Shadab 4a0b3cc724
HBASE-25646: Possible Resource Leak in CatalogJanitor #3036
Close the stream using a try-with-resources block.

Reviewed-by: Aman Poonia <aman.poonia.29@gmail.com>
Signed-off-by: Wei-Chiu Chuang <weichiu@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
(cherry picked from commit 573daed419)
2021-03-09 09:14:44 -08:00
Andrew Purtell bda2b8af8b Preparing development version 2.4.3-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-03-08 15:59:42 -08:00
Andrew Purtell 3e98c51c51 Preparing hbase release 2.4.2RC0; tagging and updates to CHANGES.md and RELEASENOTES.md
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-03-08 15:59:36 -08:00
Duo Zhang 7f4ad3cfb2 HBASE-23578 [UI] Master UI shows long stack traces when table is broken (#3014)
Co-authored-by: Shuhei Yamasaki <yamasakisua@oss.nttdata.com>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-03-07 21:36:55 +08:00
Narges Shadab 13a86924d7 HBASE-25626 Possible Resource Leak in HeterogeneousRegionCountCostFunction
Signed-off-by Anoop Sam John <anoopsamjohn@apache.org>
Signed-off-by shahrs87 <shahrs87@gmail.com>
2021-03-05 08:58:05 +05:30
Rahul Kumar eb640a6f0f
HBASE-25460 : Expose drainingServers as cluster metric (#2994) (#2995)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-03-04 12:51:47 +05:30
Andrew Purtell ddbb3e4b69 HBASE-25385 TestCurrentHourProvider fails if the latest timezone changes are not present (#3012)
Disable this problematic test for now. May be removed after additional
discussion.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-03-03 18:16:24 -08:00
Sandeep Pal f535223861 HBASE-25596: Fix NPE and avoid permanent unreplicated data due to EOF (#3008)
Signed-off-by: Andrew Purtell <apurtell@apache.org>

Conflicts:
	hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestReplicationBase.java
2021-03-03 11:40:51 -08:00
Akshay Sudheer 5b92554906 HBASE-25367 Sort broken after Change 'State time' in UI (#2964)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Pankaj Kumar<pankajkumar@apache.org>
(cherry picked from commit 5d9a6ed1fe)
2021-03-03 15:12:47 +05:30
Mohammad Arshad a561c71f00 HBASE-25371: When openRegion fails during initial verification(before… (#2785)
Signed-off-by: stack <stack@apache.org>
2021-03-03 08:28:31 +08:00
Andrew Purtell 65999a9027 Revert "HBASE-25596: Fix NPE and avoid permanent unreplicated data due to EOF (#2990)"
This reverts commit 9590080a21.
2021-03-02 12:23:17 -08:00
Balazs Meszaros 1c49ffd432 HBASE-25586 Fix HBASE-22492 on branch-2 (SASL GapToken) (#2961)
ServerCall.java: calling wrapWithSasl() was moved to getResponse(), so
the SASL wrapping is delayed until the reply is sent back to the client.

Signed-off-by: Peter Somogyi <psomogyi@apache.org>
2021-02-26 14:11:33 +01:00
XinSun db4f2bfa25 HBASE-25590 Bulkload replication HFileRefs cannot be cleared in some cases where set exclude-namespace/exclude-table-cfs (#2969)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
2021-02-26 09:59:52 +08:00
Sandeep Pal 9590080a21 HBASE-25596: Fix NPE and avoid permanent unreplicated data due to EOF (#2990)
Signed-off-by: Xu Cang <xucang@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>

Conflicts:
	hbase-server/src/test/java/org/apache/hadoop/hbase/replication/TestReplicationBase.java
2021-02-25 13:38:08 -08:00
XinSun 9ebddeeda5 HBASE-25598 TestFromClientSide5.testScanMetrics is flaky (#2977)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-02-24 14:45:19 +08:00
Andrew Purtell 4240dca4ff HBASE-25556 Frequent replication "Encountered a malformed edit" warnings (#2965)
ProtobufLogReader#readNext may be called by code that attempts to advance
the reader but does not necessarily expect to succeed, for example
WALEntryStream#tryAdvanceEntry. Much of the logging in this method is
at TRACE level. Other logging at WARN level will be frequently emitted, as
often as several per minute, and this will cause false positive assessment
from operators that they are experiencing a bug. Fix the mixed intent with
respect to log levels in readNext. Log at only DEBUG level or below.

Signed-off-by: Sean Busbey <busbey@apache.org>
2021-02-23 14:41:31 -08:00
Toshihiro Suzuki 9cfeec0deb HBASE-25575 Should validate Puts in RowMutations
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-02-22 11:04:09 +09:00
Toshihiro Suzuki b78366cf50 HBASE-25574 Revisit put/delete/increment/append related RegionObserver methods
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-02-22 10:16:42 +09:00
XinSun c1a9e8973a HBASE-25562 ReplicationSourceWALReader log and handle exception immediately without retrying (#2943)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
Signed-off-by: stack <stack@apache.org>
Signed-off-by: shahrs87
2021-02-20 10:28:18 +08:00
shahrs87 627ac016cc
HBASE-25539: Add age of oldest wal metric (#2962)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
(cherry picked from commit 6a4c9be967)
2021-02-18 21:26:39 -08:00
Sandeep Pal f637a60992
HBASE-25541 : Setting the path to null when we dequeue the current log (#2959)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2021-02-18 11:57:01 +05:30
pustota2009 83cc05a14e
HBASE-23887 Bug fix heavyEvictionMbSizeLimit (ADDENDUM) (#2957)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-02-15 20:46:14 +05:30
pustota2009 79272e481b
HBASE-23887 AdaptiveLRU cache (#2934)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-02-13 20:12:16 +05:30
Baiqiang Zhao 56937056ea HBASE-25534 Honor TableDescriptor settings earlier in normalization (#2917)
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2021-02-09 16:57:59 -08:00
XinSun e7414f98fd HBASE-25559 Terminate threads of oldsources while RS is closing (#2938)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: stack <stack@apache.org>
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
2021-02-09 16:57:29 +08:00
haxl 6849279023 HBASE-25507 Leak of ESTABLISHED sockets when compaction encountered "java.io.IOException: Invalid HFile block magic" (#2882)
Signed-off-by: Ramkrishna <ramkrishna@apache.org>
Signed-off-by: stack <stack@apache.org>
2021-02-08 22:16:18 -08:00
Michael Stack de9bbd6968 HBASE-25542 Add client detail to scan name so when lease expires, we … (#2930)
* HBASE-25542 Add client detail to scan name so when lease expires, we have clue on who was scanning

When we create a scanner lease, record client ip and port (removed
unnecessary store of scannerName).

Signed-off-by: Clara Xiong <clarax98007@gmail.com>
2021-02-08 14:39:30 -08:00
Baiqiang Zhao 2989f8edb0 HBASE-25431 MAX_FILESIZE and MEMSTORE_FLUSHSIZE should not be set negative number (#2803)
Signed-off-by: stack <stack@apache.org>
2021-02-08 14:39:25 -08:00
XinSun 87e516da6c HBASE-25553 It is better for ReplicationTracker.getListOfRegionServers to return ServerName instead of String (#2928)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-02-07 19:06:46 +08:00
YutSean 829790e11a
HBASE-25543 When configuration hadoop.security.authorization is set to false, the system will still try to authorize an RPC and raise AccessDeniedException (#2929) (#2919)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: Reid Chan <reidchan@apache.org>
2021-02-05 22:08:32 +05:30
Baiqiang Zhao 1b6bf2bcd0
HBASE-25554 NPE when init RegionMover (#2927)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-02-05 14:05:23 +05:30
Pankaj 7a8e6a7106 HBASE-24900 Make retain assignment configurable during SCP (#2313)
Retain assignment will be useful in non-cloud scenario where RegionServer and Datanode are deployed in same machine and will avoid remote read.

Signed-off-by: Guanghao Zhang <zghao@apache.org>
Signed-off-by: Anoop Sam John <anoopsamjohn@apache.org>
(cherry picked from commit a04ea7ea44)
2021-02-01 10:55:23 +05:30
shahrs87 8055a64b80
HBASE-25536 Remove 0 length wal file from logQueue if it belongs to old sources (#2908)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
Signed-off-by: Geoffrey Jacoby <gjacoby@apache.org>
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-01-29 17:56:17 +05:30
Bharath Vissapragada 083b632c4b
HBASE-25528: Dedicated merge dispatch threadpool on master
Adds "hbase.master.executor.merge.dispatch.threads" and defaults to 2.

Also adds additional logging that includes the number of split plans
and merge plans computed for each normalizer run.

(cherry picked from commit 36b4698cea)
2021-01-28 16:15:27 -08:00
Aman Poonia 8a330d4591
HBASE-25523 Region normalizer chore thread is getting killed (#2903)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-01-26 11:57:17 +05:30
Duo Zhang 219273768e HBASE-25509 fix typo when resolving conflicts 2021-01-20 23:37:02 +08:00
Duo Zhang 559a1f0a28 HBASE-25509 ChoreService.cancelChore will not call ScheduledChore.cle… (#2890)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-01-20 23:25:30 +08:00
Christine Feng bc827f8b5b
HBASE-25478 : Implement retries when enabling tables in TestRegionReplicaReplicationEndpoint (#2896)
Signed-off-by: stack <stack@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-01-20 11:34:02 +05:30
Baiqiang Zhao 47fbff98e3 HBASE-25482 Improve SimpleRegionNormalizer#getAverageRegionSizeMb (#2858)
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2021-01-19 14:49:01 -08:00
Baiqiang Zhao cc5b884a8d HBASE-25513 When the table is turned on normalize, the first region may not be merged even the size is 0 (#2887)
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2021-01-19 11:05:13 -08:00
Anjan Das 7aca7814d9
HBASE-25475 : Unset zk based wal splitting explicitly in tests (ADDENDUM) (#2891)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-01-17 16:35:05 +05:30
Andrew Purtell bab2d41390 Preparing development version 2.4.2-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-01-15 10:51:49 -08:00
Akshay Sudheer caea47ae1d HBASE-25404 Procedures table Id under master web UI gets word break to single character (#2783)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2021-01-15 10:32:10 -08:00
Andrew Purtell 4c3e174297 Revert "Preparing development version 2.4.2-SNAPSHOT"
This reverts commit e0aa015542.
2021-01-15 10:19:09 -08:00
Anjan Das dea4aa97ea
HBASE-25475: Improve UT added as part of HBASE-25445 in TestSplitWALManager (#2855)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
2021-01-15 12:36:38 +05:30
Andrew Purtell e0aa015542 Preparing development version 2.4.2-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-01-14 12:55:38 -08:00
Andrew Purtell 67a87017b4 Revert "Preparing development version 2.4.2-SNAPSHOT"
This reverts commit 00fec5a2f7.
2021-01-14 12:54:05 -08:00
Andrew Purtell 00fec5a2f7 Preparing development version 2.4.2-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-01-14 11:43:50 -08:00
Andrew Purtell 3f495149e9 Revert "Preparing development version 2.4.2-SNAPSHOT"
This reverts commit 9f17bd2f1b.
2021-01-14 11:00:42 -08:00
Tak Lon (Stephen) Wu 83a6ca54bd Backport "HBASE-25249 Adding StoreContext" to branch-2 (#2869)
Co-authored-by: Abhishek Khanna <akkhanna@amazon.com>

Signed-off-by: Zach York <zyork@apache.org>
2021-01-14 10:56:26 -08:00
Andrew Purtell 9f17bd2f1b Preparing development version 2.4.2-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-01-13 18:03:20 -08:00
Andrew Purtell 422a8cc32d Revert "Preparing development version 2.4.2-SNAPSHOT"
This reverts commit 29619049b2.
2021-01-13 17:44:09 -08:00
Andrew Purtell 29619049b2 Preparing development version 2.4.2-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-01-13 11:39:43 -08:00
Andrew Purtell 645b564310 HBASE-25504 [branch-2.4] Restore method removed by HBASE-25277 to LP(CONFIG) coprocessors
Restore removed method overrides for AccessController and VisibilityController,
which are both LimitedPrivate(CONFIG) interfaces and per compatibility
guidelines cannot have methods removed in patch releases.

Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-01-13 11:04:19 -08:00
Andrew Purtell 6125d4ef84 Revert "[branch-2.4] Restore AccessController method removed by HBASE-25277"
This reverts commit d3b1689f60.
2021-01-13 11:04:19 -08:00
caroliney14 a35a8ad5f3
HBASE-25329 Dump ritsOverThreshold in logs (#2761)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-01-14 00:10:06 +05:30
Andrew Purtell d3b1689f60 [branch-2.4] Restore AccessController method removed by HBASE-25277
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-01-13 10:24:09 -08:00
Andrew Purtell 85075940c0 Revert "Preparing development version 2.4.2-SNAPSHOT"
This reverts commit 51c55fcc2f.
2021-01-13 10:24:09 -08:00
Andrew Purtell 51c55fcc2f Preparing development version 2.4.2-SNAPSHOT
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-01-12 17:06:38 -08:00
Andrew Purtell 35044cc40c Preparing hbase release 2.4.1RC0; tagging and updates to CHANGES.md and RELEASENOTES.md
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-01-12 17:06:33 -08:00
Viraj Jasani e8279b26fa HBASE-25211 : Rack awareness in RegionMover (#2795)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2021-01-12 15:37:53 -08:00
Wellington Ramos Chevreuil cc12edbe17 HBASE-24813 ReplicationSource should clear buffer usage on Replicatio… (#2546) (#2849)
Signed-off-by: Ankit Singhal <ankit@apache.org>
Signed-off-by: Josh Elser <elserj@apache.org>
2021-01-12 09:45:51 +00:00
xijiawen aa27488268 HBASE-25459 WAL can't be cleaned in some scenes (#2848)
Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
(cherry picked from commit 6a401d89f8)
2021-01-11 10:06:09 +00:00
Bo Cui 8b48c60347 HBASE-25483 set the loadMeta log level to debug (#2859)
Signed-off-by: Pankaj Kumar<pankajkumar@apache.org>
(cherry picked from commit a348204d4a)
2021-01-08 19:32:48 +05:30
xijiawen 99f2b71cc9 HBASE-25434 SlowDelete & SlowPut metric value should use updateDelete & updatePut (#2837)
Signed-off-by: Zheng Wang <wangzheng@apache.org>
(cherry picked from commit 7d70141b90)
2021-01-08 19:02:59 +08:00
Anjan Das e39bae4ddb
HBASE-25445: Use WAL FS instead of master FS in SplitWALManager (#2844)
Signed-off-by: Pankaj <pankajkumar@apache.org>
Signed-off-by: ramkrish86 <ramkrishna@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-01-07 15:38:52 +05:30
Bo Cui 82a63abc8a HBASE-25447 remoteProc is suspended due to OOM ERROR (#2824)
Some OMME can not cause the JVM to exit, like "java.lang.OutOfMemoryError: Direct buffer memory", "java.lang.OutOfMemoryError: unable to create new native thread", as they dont call vmError#next_OnError_command. So abort HMaster when uncaught exception occurs in TimeoutExecutor, the new active Hmaster will resume the suspended procedure.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: stack <stack@apache.com>
Signed-off-by: Pankaj Kumar<pankajkumar@apache.org>
(cherry picked from commit 600be60a4b)
(cherry picked from commit ae77f81e7e)
2021-01-06 23:46:24 +05:30
leyangyueshan 35648278fc HBASE-25435 Slow metric value can be configured
Signed-off-by: jediwang <jediwang@tencent.com>
2021-01-04 13:06:55 +08:00
lujiefsi f5a7fffd8b
HBASE-25456 : add security check for setRegionStateInMeta (#2835) (#2833)
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2021-01-01 12:19:25 +05:30
lujiefsi a14f08876b
HBASE-25441 : add security check for some APIs in RSRpcServices (#2830) (#2810)
Signed-off-by: stack <stack@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-12-31 00:25:49 +05:30
Duo Zhang 90db5e4f99 HBASE-25452 Use MatcherAssert.assertThat instead of org.junit.Assert.assertThat (#2826)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2020-12-30 11:06:58 +08:00
lujiefsi c3d755e318
HBASE-25432: branch-2.4 add security checks for setTableStateInMeta and fixMeta (#2817)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-12-28 10:58:31 -08:00
ramkrish86 e7307c91d0 HBASE-24850 CellComparator perf improvement (#2776)
* Using ContiguousCellFormat as a marker alone

* Commit the new file

* Fix the comparator logic that was an oversight

* Fix the sequenceId check order

* Adding few more static methods that helps in scan flow like query
matcher where we have more cols

* Remove ContiguousCellFormat and ensure compare() can be inlined

* applying negation as per review comment

* Fix checkstyle comments

* fix review comments

* Address review comments

Signed-off-by: stack <stack@apache.org>
Signed-off-by: AnoopSamJohn <anoopsamjohn@apache.org>
Signed-off-by: huaxiangsun <huaxiangsun@apache.org>
2020-12-28 13:12:38 +05:30
Duo Zhang dede90dc54 HBASE-25420 Some minor improvements in rpc implementation (#2792)
Signed-off-by: XinSun <ddupgs@gmail.com>
Signed-off-by: stack <stack@apache.com>
2020-12-20 11:30:35 +08:00
huaxiangsun baf3122ad8
HBASE-25356 HBaseAdmin#getRegion() needs to filter out non-regionName and non-encodedRegionName (#2759) (#2789)
Signed-off-by: stack <stack@apache.org>
2020-12-18 13:16:03 -08:00
huaxiangsun 1932a58a62
HBASE-25293 Followup jira to address the client handling issue when chaning from meta replica to non-meta-replica at the server side. (#2768) (#2787)
Signed-off-by: stack <stack@apache.org>
2020-12-18 13:15:25 -08:00
Sandeep Pal 4512163c2f
HBASE-25383: Ability to update and remove peer base config
Closes #2778

Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
Signed-off-by: Geoffrey Jacoby <gjacoby@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-12-18 14:21:54 +05:30
shahrs87 47efdbb871
HBASE-25246 Backup/Restore hbase cell tags (#2766)
Closes #2745

Signed-off-by: Anoop Sam John <anoopsamjohn@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-12-17 12:55:41 +05:30
stack 5eefe62e29 HBASE-25400 [Flakey Tests] branch-2 TestRegionMoveAndAbandon 2020-12-16 10:36:18 -08:00
Michael Stack bdc864fb69 HBASE-25389 [Flakey Tests] branch-2 TestMetaShutdownHandler (#2773)
Signed-off-by: Bharath Vissapragada <bharathv@apache.org>
2020-12-15 09:51:19 -08:00
Pankaj ec8eb653f6 HBASE-25277 postScannerFilterRow impacts Scan performance a lot in HBase 2.x (#2675)
* HBASE-25277 postScannerFilterRow impacts Scan performance a lot in HBase 2.x

1. Added a check for Object class in RegionCoprocessorHost to avoid wrong initialization of hasCustomPostScannerFilterRow
2. Removed dummy implementation of postScannerFilterRow from AccessController, VisibilityController & ConstraintProcessor (which are not required currently)

Signed-off-by Ramkrishna S Vasudevan <ramkrishna@apache.org>
Signed-off-by Anoop Sam John <anoopsamjohn@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
(cherry picked from commit fb6e498b32)
2020-12-11 00:04:41 +05:30
haxl f526ce6814 HBASE-25287 Forgetting to unbuffer streams results in many CLOSE_WAIT sockets when loading files (#2699)
Signed-off-by: Andrew Purtell <apurtell@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-12-10 22:21:54 +08:00
stack bac9764f26 HBASE-25353 [Flakey Tests] branch-2 TestShutdownBackupMaster 2020-12-05 14:23:18 -08:00
stack b1a5567740 HBASE-25361 [Flakey Tests] branch-2 TestMetaRegionLocationCache.testStandByMetaLocations (#2736)
Addendum; Reset counter so we actually wait in the new loop added by the
above.
2020-12-05 14:01:12 -08:00
Michael Stack a0f4c28430 HBASE-25361 [Flakey Tests] branch-2 TestMetaRegionLocationCache.testStandByMetaLocations (#2736)
Add a bit of a wait before testing if online replicas match the zk count. It might take a
while for all replicas to come online.

Signed-off-by: huaxiangsun <huaxiangsun@apache.org>
2020-12-05 08:57:11 -08:00
Andrew Purtell 3ff115ebe4 Preparing development version 2.4.1-SNAPSHOT 2020-12-03 09:52:11 -08:00
Andrew Purtell f7bc7be1eb Revert "Preparing development version 2.4.1-SNAPSHOT"
This reverts commit 4127a3940a.
2020-12-03 09:37:38 -08:00
Andrew Purtell 4127a3940a Preparing development version 2.4.1-SNAPSHOT 2020-12-02 14:04:53 -08:00
Andrew Purtell 108c2ecb52 Preparing hbase release 2.4.0RC0; tagging and updates to CHANGES.md and RELEASENOTES.md 2020-12-02 14:04:49 -08:00
Michael Stack 9cc2f76248
HBASE-25349 [Flakey Tests] branch-2 TestRefreshRecoveredReplication.testReplicationRefreshSource:141 Waiting timed out after [60,000] msec (#2731)
Start the check for recovered queue presence earlier.

Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2020-12-02 09:55:24 -08:00
Michael Stack f0a4aefcdf
HBASE-25345 [Flakey Tests] branch-2 TestReadReplicas#testVerifySecondaryAbilityToReadWithOnFiles (#2727)
Check TEST_SKIP_REPORTING_TRANSITION and if true, skip trying to talk to
update master on state transition -- i.e. reportFileArchivalForQuotas --
as we allow for reportRegionStateTransition (For tests only)

Signed-off-by: Huaxiang Sun <huaxiangsun@apache.com>
2020-11-30 21:02:45 -08:00
GeorryHuang 433235e98c
HBASE-25339 Method parameter and member variable are duplicated in checkSplittable() of SplitTableRegionProcedure
Closes #2717

Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: Guanghao Zhang <zghao@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-11-30 19:50:54 +05:30
Viraj Jasani 904b8a814b
Revert "HBASE-25339 Method parameter and member variable are duplicated in checkSplittable() of SplitTableRegionProcedure"
This reverts commit 861c5509ad.
2020-11-30 19:50:29 +05:30
GeorryHuang 861c5509ad
HBASE-25339 Method parameter and member variable are duplicated in checkSplittable() of SplitTableRegionProcedure
Closes #2717

Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-11-30 18:01:05 +05:30
Duo Zhang d6d0a20247 HBASE-25341 Fix ErrorProne error which causes nightly to fail (#2718)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2020-11-30 14:48:41 +08:00
Akshay Sudheer 85bf542a44 HBASE-25321 The sort icons not shown after Upgrade JQuery to 3.5.1 (#2694)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-11-29 12:13:16 +08:00
Lokesh Khurana 8472c68720
HBASE-25237 : 'hbase master stop' shuts down the cluster, not the master only
Closes #2705

Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-11-27 16:05:07 +05:30
Qi Yu e81f49c918 HBASE-25324 Remove unnecessary array to list conversion in SplitLogManager (#2703)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
Signed-off-by: stack <stack@apache.com>
2020-11-27 08:21:13 +08:00
Toshihiro Suzuki 3775464981
HBASE-25242 Add Increment/Append support to RowMutations (#2711)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2020-11-27 03:53:19 +09:00
Mate Szalay-Beko 1dbfe96d69 HBASE-25263 Various improvements of column family encryption
This PR is a follow-up of HBASE-25181 (#2539), where several issues were
discussed on the PR:

1. Currently we use PBKDF2WithHmacSHA1 key generation algorithm to generate a
secret key for HFile / WalFile encryption, when the user is defining a string
encryption key in the hbase shell. This algorithm is not secure enough and
not allowed in certain environments (e.g. on FIPS compliant clusters). We are
changing it to PBKDF2WithHmacSHA384. It will not break backward-compatibility,
as even the tables created by the shell using the new algorithm will be able
to load (e.g. during bulkload / replication) the HFiles serialized with the
key generated by an old algorithm, as the HFiles themselves already contain
the key necessary for their decryption.

Smaller issues fixed by this commit:

2. Improve the documentation e.g. with the changes introduced by HBASE-25181
and also by some points discussed on the Jira ticket of HBASE-25263.

3. In EncryptionUtil.createEncryptionContext the various encryption config
checks should throw IllegalStateExceptions instead of RuntimeExceptions.

4. Test cases in TestEncryptionTest.java should be broken down into smaller
tests.

5. TestEncryptionDisabled.java should use ExpectedException JUnit rule to
validate exceptions.

closes #2676

Signed-off-by: Peter Somogyi <psomogyi@apache.org>
2020-11-26 16:57:12 +01:00
Andrew Purtell 1b6399a480
HBASE-24640 [branch-2] Purge use of VisibleForTesting (#2696)
Signed-off-by: Nick Dimiduk <ndimiduk@apache.org>
2020-11-25 14:15:32 -08:00
Qi Yu 3dd425abfa HBASE-25323 Fix potential NPE when the zookeeper path of RegionServerTracker does not exist when start (#2702)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2020-11-25 15:28:32 +08:00
Qi Yu 6f07efb971 HBASE-25325 Remove unused class ClusterSchemaException (#2704)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-11-25 15:28:32 +08:00
niuyulin 8e3727ea06
HBASE-25281 Bulkload split hfile too many times due to unreasonable split point (#2692)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2020-11-25 15:27:09 +08:00
niuyulin d523d758af HBASE-25213 Should request Compaction when bulkLoadHFiles is done (addendum) (#2701)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2020-11-25 08:00:28 +08:00
ramkrish86 988be9321d HBASE-25050 - We initialize Filesystems more than once. (#2419)
* HBASE-25050 - We initialize Filesystems more than once.

* Ensuring that calling the FS#get() will only ensure FS init.

* Fix for testfailures. We should pass the entire path and no the scheme
alone

* Cases where we don't have a scheme for the URI

* Address review comments

* Add some comments on why FS#get(URI, conf) is getting used

* Adding the comment as per Sean's review

Signed-off-by: Sean Busbey <busbey@apache.org>
Signed-off-by: Michael Stack <stack@apache.org>
2020-11-24 15:31:55 +05:30
ramkrish86 a8e02c97bc HBASE-25187 Improve SizeCachedKV variants initialization (#2582)
* HBASE-25187 Improve SizeCachedKV variants initialization

* HBASE-25187 Improve SizeCachedKV variants initialization

* The BBKeyValue also can be optimized

* Change for SizeCachedKeyValue

* Addressing revew comments

* Fixing checkstyle and spot bugs comments

* Spot bug fix for hashCode

* Minor updates make the rowLen as short and some consturctor formatting

* Change two more places where there was a cast
2020-11-24 15:10:44 +05:30
Bo Cui 0a1decdf18 HBASE-25311 UI throws NPE (#2688)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
Signed-off-by: Wellington Chevreuil <wellington.chevreuil@gmail.com>
Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-11-23 12:08:14 +08:00
niuyulin 8976781302
HBASE-25213 Should request Compaction after bulkLoadHFiles is done (#2684)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2020-11-23 08:33:41 +08:00
stack 73086f25e6 HBASE-25291 Document how to enable the meta replica load balance mode for the client and clean up around hbase:meta read replicas
hbase-client/src/main/java/org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSelector.java
hbase-client/src/main/java/org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSelectorFactory.java
hbase-client/src/main/java/org/apache/hadoop/hbase/client/CatalogReplicaLoadBalanceSimpleSelector.java
hbase-client/src/main/java/org/apache/hadoop/hbase/client/CatalogReplicaMode.java
 Make the leading license comment opener align on all these new
 files.... one star rather than two.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/CatalogReplicationSource.java
 Add some comment better situating the catalogreplicationsource
 specialization.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
 Add comment how this differs from replicationsource factory and why no
 need to keep offset up in zk.

src/main/asciidoc/_chapters/architecture.adoc
 Clean up the read replica of META doc. Introduce the new read replica
 liveness on META and the new 'LoadBalance' feature (with warnings).
 General edit.
2020-11-20 15:49:00 -08:00
Huaxiang Sun 920cf9faf4 HBASE-25126 Add load balance logic in hbase-client to distribute read load over meta replica regions
It adds load balance support for meta lookup in AsyncTableRegionLocator.
The existing meta replica mode is renamed as "HedgedRead", client sends scan request to the primary meta replica region first,
if response is not back within a configured amount of time, it will send scan requests to all meta replica regions and
take the first response. On top of the existing mode, a new mode "LoadBalance" is introduced. In this mode, client first
choose a meta replica region to send scan request. If the response is stale, it may send the request to another meta replica region or
the primary region. In this mode, meta scan requests are load balanced across all replica regions with the primary mode as
the ultimate source of truth.

Two new config knobs are added:

1. hbase.locator.meta.replicas.mode
   Valid options are "None", "HedgedRead" and "LoadBalance", they are case insensitive. The default mode is "None".

2. hbase.locator.meta.replicas.mode.loadbalance.selector
   The load balance alogrithm to select a meta replica to send the requests.
   Only org.apache.hadoop.hbase.client.CatalogReplicaLoadBalanceReplicaSimpleSelector.class
   is supported for now, which is the default as well. The algorithm works as follows:
      a. Clients select a randome meta replica region to send the requests if there is no entry for the location in the stale
         location cache.
      b. If the location from one meta replica region is stale, a stale entry will be created in the statle location cache
         for the region.
      c. Clients select the primary meta region if the location is in the stale location cache.
      d. The stale location cache entries time out in 3 seconds.

If there is no "hbase.locator.meta.replicas.mode" configured, it will check the config knob "hbase.meta.replicas.use".
If "hbase.meta.replicas.use" is configured, the mode will be set to "HedgedRead".

For branch-2 support, it introduces support for ReversedScan over a specific non-default replica region, this is mainly
for load balance meta scan among all its replica regions.

Remove ConnectionImplementation#setUseMetaReplicas()
2020-11-20 10:45:24 -08:00
Michael Stack 47ad207664 HBASE-25280 [meta replicas] ArrayIndexOutOfBoundsException in ZKConnectionRegistry (#2652)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Huaxiang Sun <huaxiangsun@apache.com>
2020-11-20 00:31:43 -08:00
stack 1f6779b2e0 HBASE-25151 warmupRegion frustrates registering WALs on the catalog replicationsource
warmupRegion called by Master on Region move will instatiate
the meta WALProvider as part of its action making it so
it is already created by the time we go to open the
hbsae:meta Region. Accommodate meta walProvider
being already up.

hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/AssignRegionHandler.java
hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/UnassignRegionHandler.java
 Pass regionInfo. Needed internally.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
 Add handling if meta wal provider already instantiated when
 addCatalogReplicationSource runs.

hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestMetaRegionReplicaReplicationEndpoint.java
 Add exercising moving meta around between servers. Test replication
 keeps working.
2020-11-20 00:31:43 -08:00
Michael Stack de1843ac94 HBASE-25055 Add ReplicationSource for meta WALs; add enable/disable w… (#2451)
* HBASE-25055 Add ReplicationSource for meta WALs; add enable/disable when hbase:meta assigned to RS

Fill in gap left by HBASE-11183 'Timeline Consistent region replicas - Phase 2 design'.
HBASE-11183 left off implementing 'async WAL Replication' on the hbase:meta
Table; hbase:meta Table could only do Phase 1 Region Replicas reading
the primary Regions' hfiles. Here we add 'async WAL Replication' to
hbase:meta so Replicas can be more current with the primary's changes.

Adds a 'special' ReplicationSource that reads hbase:meta WAL files and replicates
all edits to the configured in-cluster endpoint (Defaults to the
RegionReadReplicaEndpoint.class -- set hbase.region.replica.catalog.replication to
target a different endpoint implementation).

Set hbase.region.replica.replication.catalog.enabled to enable async WAL
Replication for hbase:meta region replicas. Its off by default.

The CatalogReplicationSource for async WAL Replication of hbase:meta does
NOT need to keep up WAL offset or a queue of WALs-to-replicate in the
replication queue store as is done in other ReplicationSource implementations;
the CatalogReplicationSource is for Region Replicas only. General
Replication does not replicate hbase:meta. hbase:meta Region Replicas reset
on crash of the primary replica so there is no need to 'recover'
replication that was running on the crashed server.

Because it so different in operation, the CatalogReplicationSource is bolted
on to the side of the ReplicationSourceManager. It is lazily
instantiated to match the lazy instantiation of the hbase:meta
WALProvider, created and started on the open of the first Region of an
hbase:meta table. Thereafter it stays up till the process dies, even if
all hbase:meta Regions have moved off the server, in case a hbase:meta
Region is moved back (Doing this latter simplifies the implementation)

hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java
  Read configuration to see if we need to wait on setting a Region read-enabled
  (if so, replicas will only flip to enable read after confirming a
  flush of the primary so they for sure are a replica of a known point)

hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/AssignRegionHandler.java
 If configured, on open of hbase:meta, ask the ReplicationSourceManager
 to add a ReplicationSource (if it hasn't already).

hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/RegionReplicaFlushHandler.java
 Edit log message.

hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/handler/UnassignRegionHandler.java
 If configured, on close of hbase:meta, update ReplicationSourceManager
 that a source Region has closed.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceFactory.java
 javadoc and make constructor private.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceInterface.java
 Add logPositionAndCleanOldLogs w/ default of the old behavior so
 CatalogReplicationSource can bypass updating store with WAL position,
 etc.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java
 Add creation and start of an CatalogReplicationSource.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceShipper.java
 Go via ReplicationSource when calling logPostionAndCleanOldLogs so new RS can intercept.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/WALFileLengthProvider.java
 Javadoc.

hbase-server/src/main/java/org/apache/hadoop/hbase/util/ServerRegionReplicaUtil.java
 Add utility for reading configurations for hbase:meta region replicas.

hbase-server/src/main/java/org/apache/hadoop/hbase/wal/WALFactory.java
 Javadoc.

hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestRegionReplicaReplicationEndpoint.java
 Use define.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/CatalogReplicationSource.java
 Specical version of ReplicationSource for Region Replicas on hbase:meta.

hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/CatalogReplicationSourcePeer.java
 Needs a special peer too (peers are baked into replication though we don't use 'peers' here)

hbase-server/src/test/java/org/apache/hadoop/hbase/replication/regionserver/TestMetaRegionReplicaReplicationEndpoint.java
hbase-server/src/test/java/org/apache/hadoop/hbase/wal/TestWALProvider.java
 Tests.

Signed-off-by: Duo Zhang <zhangduo@apache.org>
Signed-off-by: Huaxiang Sun <huaxiangsun@apache.com>
2020-11-20 00:31:43 -08:00
stack 2b1e8b306f HBASE-25068 Pass WALFactory to Replication so it knows of all WALProviders, not just default/user-space
Pass WALFactory to Replication instead of WALProvider. WALFactory has all
WALProviders in it, not just the user-space WALProvider. Do this so
ReplicationService has access to all WALProviders in the Server (To be
exploited by the follow-on patch in HBASE-25055)
2020-11-20 00:31:43 -08:00
Baiqiang Zhao bace137c36
HBASE-25306 The log in SimpleLoadBalancer#onConfigurationChange is wrong
Closes #2679

Signed-off-by: Viraj Jasani <vjasani@apache.org>
2020-11-19 22:22:22 +05:30
gkanade 024349bd5d
HBASE-25026 Create a metric to track full region scans RPCs
Add new metric rpcFullScanRequestCount to track number of requests that are full region scans. Can be used to notify user to check if this is truly intended.

Signed-off-by Anoop Sam John <anoopsamjohn@apache.org>
Signed-off-by Ramkrishna S Vasudevan <ramkrishna@apache.org>
2020-11-19 09:55:33 +05:30
Mate Szalay-Beko e8ecf2e016 HBASE-25261 Upgrade Bootstrap to 3.4.1
HBase UI is currently using in bootstrap 3.3.7. This version is vulnerable to 4
medium CVEs (CVE-2018-14040, CVE-2018-14041, CVE-2018-14042, and CVE-2019-8331).
Details on all the bootstrap versions and vulnerabilities is
here: https://snyk.io/vuln/npm:bootstrap

Upgrading to bootstrap 4 would be nice, but potentially more work to do. We
should at least upgrade to the latest bootstrap 3, which is 3.4.1 currently.

closes #2661

Signed-off-by: Wellington Chevreuil <wchevreuil@apache.org>
Signed-off-by: Peter Somogyi <psomogyi@apache.org>
2020-11-17 17:15:57 +01:00
Duo Zhang f50ede32d9 HBASE-25255 Master fails to initialize when creating rs group table (#2638)
Signed-off-by: Guanghao Zhang <zghao@apache.org>
2020-11-13 15:36:16 +08:00
WenFeiYi ea1375d6be HBASE-25253 Deprecated master carrys regions related methods and configs (#2635)
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2020-11-12 22:23:30 +08:00