Commit Graph

15720 Commits

Author SHA1 Message Date
Guanghao Zhang a81d9be876 HBASE-21290 No need to instantiate BlockCache for master which not carry table 2018-10-15 17:30:29 +08:00
haxiaolin 31dec21538 HBASE-21260 The whole balancer plans might be aborted if there are more than one plans to move a same region
Signed-off-by: Duo Zhang <zhangduo@apache.org>
2018-10-15 15:54:34 +08:00
zhangduo 3d0b253248 HBASE-21309 Increase the waiting timeout for TestProcedurePriority 2018-10-15 15:27:11 +08:00
Michael Stack ac31ebf53a
HBASE-21271 [amv2] Don't throw UnsupportedOperationException when rollback called on Assign/Unassign; spiral of death 2018-10-12 22:25:15 -07:00
Michael Stack 72af27b8c9
HBASE-21259 [amv2] Revived deadservers; recreated serverstatenode
Remove a bunch of places where we create ServerStateNode. We were
creating a SSN even though the server was long dead and processed.
The revived SSN was messing up the little dance we do unassigning
procedures. In particular, in UnassignProcedure, the check for a
dead server inside in isLogSplittingDone returns true -- we can
proceed because server is dead -- fails if an SSN exists.

We were creating SSN when we didn't need it as well as inadvertently.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java
 Print serverstatenode when reporting expiration. Helps debugging.
 Make moveFromOnlineToDeadServers return if server online or not.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java
 Make do w/ serverName in place of serverNode in a few places.
 In waitServerReportEvent, create a ServerStateNode if none though we
 should not have to at this point; to figure out later: TODO.
 addRegionToServer no longer automatically calls create SSN
 so do explicit create processing load meta and the region
 is OPEN so we can associate OPEN regions with the SSN.
 Do not schedule an SCP if server is not online, not in fs, and not in
 dead servers. No point (and there may be cases where server is long
 gone but hbase:meta still refers to it though it has not carried
 regions in a long time; running an assign/unassign against such a
 server will fail because it is not there but SCP won't clean up
 the outstanding hung RPC because our region is not on the long-gone
 server).

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionStates.java
 Just cleanup. Make it so addRegionToServer and remove can deal if no SSN.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterWalManager.java
 Add isWALDirectoryNameWithWALS utility.
2018-10-12 17:40:11 -07:00
Michael Stack 4d50f6db5a
HBASE-21242 [amv2] Miscellaneous minor log and assign procedure create improvements; ADDENDUM Fix TestHRegionInfo AND TestRegionInfoDisplay 2018-10-12 16:22:10 -07:00
Michael Stack 266544370d
Revert "HBASE-21242 [amv2] Miscellaneous minor log and assign procedure create improvements; ADDENDUM Fix TestHRegionInfo AND TestRegionInfoDisplay"
This reverts commit 7f3ca4643d.

Bad commit.
2018-10-12 16:15:57 -07:00
Michael Stack 7f3ca4643d
HBASE-21242 [amv2] Miscellaneous minor log and assign procedure create improvements; ADDENDUM Fix TestHRegionInfo AND TestRegionInfoDisplay 2018-10-12 16:09:54 -07:00
Michael Stack 5762f879d2
Revert "HBASE-21242 [amv2] Miscellaneous minor log and assign procedure create improvements; ADDENDUM Fix TestHRegionInfo"
This reverts commit a9d3ac23d84dcd728ee08f4262e3d9b31df26b7e.

Let me do a better fix, one that does TestHRegionInfo and
TestHRegionInfoDisplay
2018-10-12 16:09:53 -07:00
Michael Stack 19cb105a7e HBASE-21242 [amv2] Miscellaneous minor log and assign procedure create improvements; ADDENDUM Fix TestHRegionInfo 2018-10-12 12:42:05 -07:00
Michael Stack fecaf4737c HBASE-21303 [shell] clear_deadservers with no args fails 2018-10-12 11:19:24 -07:00
Michael Stack 714127b4a5 HBASE-21299 List counts of actual region states in master UI tables section 2018-10-12 10:59:44 -07:00
Guanghao Zhang 9b38da685c HBASE-21289 Remove the log "'hbase.regionserver.maxlogs' was deprecated." in AbstractFSWAL 2018-10-12 21:22:31 +08:00
Duo Zhang c3401d4327 HBASE-21254 Need to find a way to limit the number of proc wal files 2018-10-12 11:47:48 +08:00
Sean Busbey c9c7436482 HBASE-21103 nightly job should make sure cached yetus will run.
Signed-off-by: Mike Drob <mdrob@apache.org>
(cherry picked from commit 42d7ddc678)
2018-10-11 10:30:33 -05:00
Mike Drob e726a89f5f HBASE-21287 Allow configuring test master initialization wait time. 2018-10-11 09:50:57 -05:00
Guanghao Zhang e283963533 HBASE-21251 Refactor RegionMover 2018-10-10 15:28:33 +08:00
Michael Stack 976c7ea2ef Revert "HBASE-21271 [amv2] Don't throw UnsupportedOperationException when rollback called on Assign/Unassign; spiral of death"
This reverts commit c96ecbde67.
2018-10-09 22:46:26 -07:00
Michael Stack b51aae9432 HBASE-21280 Add anchors for each heading in UI
Signed-off-by: Ted Yu <tedyu@apache.org>
2018-10-09 22:44:57 -07:00
Mike Drob 2c43656a16
HBASE-20764 build broken when latest commit is gpg signed
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-10-08 19:51:37 -05:00
Michael Stack c96ecbde67
HBASE-21271 [amv2] Don't throw UnsupportedOperationException when rollback called on Assign/Unassign; spiral of death 2018-10-09 00:55:02 +09:00
Duo Zhang 9a3b7f16f9 HBASE-21250 Addendum remove unused modification in hbase-server module 2018-10-08 14:56:30 +08:00
zhangduo 5a300f3fc9 HBASE-21250 Refactor WALProcedureStore and add more comments for better understanding the implementation 2018-10-07 17:16:09 +08:00
Michael Stack 9d34b4581c
HBASE-21242 [amv2] Miscellaneous minor log and assign procedure create improvements
For RIT Duration, do better than print ms/seconds. Remove redundant UI
column dedicated to duration when we log it in the status field too.

Make bypass log at INFO level.

Make it so on complete of subprocedure, we note count of outstanding
siblings so we have a clue how much further the parent has to go before
it is done (Helpful when hundreds of servers doing SCP).

Have the SCP run the AP preflight check before creating an AP; saves
creation of thousands of APs during fixup.

Don't log tablename three times when reporting remote call failed.

If lock is held already, note who has it. Also log after we get lock
or if we have to wait rather than log on entrance though we may
later have to wait (or we may have just picked up the lock).

Signed-off-by: Mike Drob <mdrob@apache.org>
2018-10-04 17:18:13 -07:00
Michael Stack 8fc90a23ae
HBASE-21213 [hbck2] bypass leaves behind state in RegionStates when assign/unassign
Adds override to assigns and unassigns. Changes bypass 'force'
to align calling the param 'override' instead.

Adds recursive to 'bypass', a means of calling bypass on
parent and its subprocedures (usually bypass works on
leaf nodes rippling the bypass up to parent -- recursive
has us work in the opposite direction): EXPERIMENTAL.

bypass on an assign/unassign leaves region in RIT and the
RegionStateNode loaded with the bypassed procedure. First
implementation had assign/unassign cleanup leftover state.
Second implementation, on feedback, keeps the state in place
as a fence against other Procedures assuming the region entity,
and instead adds an 'override' function that hbck2 can set on
assigns/unassigns to override the fencing.

Note that the below also converts ProcedureExceptions that
come out of the Pv2 system into DoNotRetryIOEs. It is a
little awkward because DNRIOE is in client-module, not
in procedure module. Previous, we'd just keep retrying
the bypass, etc.

M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/Procedure.java
 Have bypass take an environment like all other methods so subclasses.
 Fix javadoc issues.

M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
 Javadoc issues. Pass environment when we invoke bypass.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
 Rename waitUntilNamespace... etc. to align with how these method types
 are named elsehwere .. i.e. waitFor rather than waitUntil..

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.java
 Cleanup message we emit when we find an exisitng procedure working
 against this entity.
 Add support for a force function which allows Assigns/Unassigns force
 ownership of the Region entity.

A hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
 Test bypass and force.

M hbase-shell/src/main/ruby/shell/commands/list_procedures.rb
 Minor cleanup of the json output... do iso8601 timestamps.
2018-10-04 16:37:37 -07:00
Wellington Chevreuil b0ac1c6aba HBASE-21185 - WALPrettyPrinter: Additional useful info to be printed by wal printer tool, for debugability purposes
Signed-off-by: Allan Yang <allan163@apache.org>
2018-10-04 03:28:21 -07:00
Xu Cang 3df8b6f7bb
HBASE-18549 Add metrics for failed replication queue recovery
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-10-01 18:39:07 -07:00
Andrew Purtell f9d7ac2d5e
HBASE-21261 Add log4j.properties for hbase-rsgroup tests 2018-10-01 18:09:00 -07:00
Xu Cang 76a487c062
HBASE-19275 TestSnapshotFileCache never worked properly
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-10-01 17:12:21 -07:00
Michael Stack 259d12f739 Revert "Revert "Revert "HBASE-21213 [hbck2] bypass leaves behind state in RegionStates when assign/unassign"""
This reverts commit 2174461cf7.

Revert because not ready to port to other branches.
2018-09-29 04:06:46 -07:00
Michael Stack 2174461cf7 Revert "Revert "HBASE-21213 [hbck2] bypass leaves behind state in RegionStates when assign/unassign""
This reverts commit b96905d1df.

i.e. a revert of a revert so a reapplication!

Revert so I can add signed-off-by....

Signed-off-by: Allan Yang <allan163@apache.org>
2018-09-29 03:34:36 -07:00
Michael Stack b96905d1df Revert "HBASE-21213 [hbck2] bypass leaves behind state in RegionStates when assign/unassign"
This reverts commit b42d7978cb.
2018-09-29 03:34:10 -07:00
Michael Stack b42d7978cb HBASE-21213 [hbck2] bypass leaves behind state in RegionStates when assign/unassign
bypass on an assign/unassign leaves region in RIT and the
RegionStateNode loaded with the bypassed procedure. First
implementation had assign/unassign cleanup leftover state.
Second implementation, on feedback, keeps the state in place
as a fence against other Procedures assuming the region entity,
and instead adds an 'override' function that hbck2 can set on
assigns/unassigns to override the fencing.

Note that the below also converts ProcedureExceptions that
come out of the Pv2 system into DoNotRetryIOEs. It is a
little awkward because DNRIOE is in client-module, not
in procedure module. Previous, we'd just keep retrying
the bypass, etc.

M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/Procedure.java
 Have bypass take an environment like all other methods so subclasses.
 Fix javadoc issues.

M hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/ProcedureExecutor.java
 Javadoc issues. Pass environment when we invoke bypass.

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/HMaster.java
 Rename waitUntilNamespace... etc. to align with how these method types
 are named elsehwere .. i.e. waitFor rather than waitUntil..

M hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/RegionTransitionProcedure.java
 Cleanup message we emit when we find an exisitng procedure working
 against this entity.
 Add support for a force function which allows Assigns/Unassigns force
 ownership of the Region entity.

A hbase-server/src/test/java/org/apache/hadoop/hbase/master/assignment/TestRegionBypass.java
 Test bypass and force.

M hbase-shell/src/main/ruby/shell/commands/list_procedures.rb
 Minor cleanup of the json output... do iso8601 timestamps.
2018-09-29 03:33:07 -07:00
zhangduo 1f90d00614 HBASE-21248 Implement exponential backoff when retrying for ModifyPeerProcedure 2018-09-29 13:26:28 +08:00
Nihal Jain c41003f5e6
HBASE-21196 HTableMultiplexer clears the meta cache after every put operation
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-09-28 16:35:57 -07:00
Kiran Kumar Maturi b7c2b953bc
HBASE-20857 balancer status tag in jmx metrics
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-09-28 16:12:11 -07:00
Archana Katiyar 209d0a8a16
HBASE-21207 Add client side sorting functionality in master web UI for table and region server details
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-09-28 15:40:43 -07:00
ramie-raufdeen e44ed1b1ef
HBASE-19418 configurable range of delay in PeriodicMemstoreFlusher
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-09-28 14:39:52 -07:00
xcang e26a6e0e10
HBASE-18451 PeriodicMemstoreFlusher should inspect the queue before adding a delayed flush request, fix logging
Signed-off-by: Andrew Purtell <apurtell@apache.org>
2018-09-28 11:50:24 -07:00
meiyi 8dea600795 HBASE-21249 Add jitter for ProcedureUtil.getBackoffTimeMs
Signed-off-by: zhangduo <zhangduo@apache.org>
2018-09-28 21:28:16 +08:00
Allan Yang f6c05faccf Revert "HBASE-21237 Use CompatRemoteProcedureResolver to dispatch open/close region requests to RS" 2018-09-28 14:07:40 +08:00
zhangduo 4947e72f63 HBASE-21233 Allow the procedure implementation to skip persistence of the state after a execution 2018-09-28 11:14:49 +08:00
Allan Yang 0290f57c3a HBASE-21237 Use CompatRemoteProcedureResolver to dispatch open/close region requests to RS 2018-09-28 09:41:31 +08:00
Allan Yang eb27251265 HBASE-21228 Memory leak since AbstractFSWAL caches Thread object and never clean later 2018-09-27 15:07:07 +08:00
Michael Stack 5169cfc8c3 HBASE-21232 Show table state in Tables view on Master home page 2018-09-26 10:57:23 -07:00
Zach York 504286d55c HBASE-20734 Colocate recovered edits directory with hbase.wal.dir
Amending-Author: Reid Chan <reidchan@apache.org>
Signed-off-by: Reid Chan <reidchan@apache.org>
2018-09-26 19:37:53 +08:00
Allan Yang ba8a252167 HBASE-21212 Wrong flush time when update flush metric 2018-09-26 19:11:23 +08:00
Chia-Ping Tsai a4e72544f7 HBASE-21208 Bytes#toShort doesn't work without unsafe
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
Signed-off-by: anoopsamjohn <anoopsamjohn@gmail.com>
Signed-off-by: Reid Chan <reidchan@apache.org>
2018-09-26 18:19:19 +08:00
Mingliang Liu fea75742b4
HBASE-21164 reportForDuty should do backoff rather than retry
Remove unused methods from Sleeper (its ok, its @Private).
Remove notion of startTime from Sleeper handling (it is is unused).
Allow passing in how long to sleep so can maintain externally.
In HRS, use a RetryCounter to calculate backoff sleep time for when
reportForDuty is failing against a struggling Master.
2018-09-25 11:31:39 -07:00
Michael Stack 0d008b4792
HBASE-21223 [amv2] Remove abort_procedure from shell
Signed-off-by: Balazs Meszaros <balazs.meszaros@cloudera.com>
2018-09-25 10:07:32 -07:00