hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephen Yuan Jiang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-17265) Region left unassigned in master failover when failed open
Date Tue, 07 Feb 2017 01:03:41 GMT

    [ https://issues.apache.org/jira/browse/HBASE-17265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15855087#comment-15855087

Stephen Yuan Jiang commented on HBASE-17265:

[~allan163], can you leverage the fix in HBASE-17023 for your change?  I refactored the code
in HBASE-17023 so that we don't have multiple places to have the same logic.

> Region left unassigned in master failover when failed open
> ----------------------------------------------------------
>                 Key: HBASE-17265
>                 URL: https://issues.apache.org/jira/browse/HBASE-17265
>             Project: HBase
>          Issue Type: Bug
>          Components: Region Assignment
>    Affects Versions: 1.1.7
>            Reporter: Allan Yang
>            Assignee: Allan Yang
>         Attachments: HBASE-17265-branch-1.patch
> This problem is very similar with HBASE-13330. It is also a result of ServerShutdownHandler
and AssignmentManager 'thought' the region will be assigned by each other, and left the region
remain unassigned.
> But HBASE-13330 only dealed with RS_ZK_REGION_FAILED_OPEN in {{processRegionInTransition}}.
> Region failed open may happen after {{processRegionInTransition}}. In my case, when master
failover, it assigned all RIT regions, but some are failed to open(due to HBASE-17264), AssignmentManager
received the zk event, and skip to assign it(this region was opened on a failed server before
and already in RIT before master failover). The SSH also skip to assign it because it was
RIT on another RS.
> Master recevied a zk event of RS_ZK_REGION_FAILED_OPEN and begin to handle it:
> {noformat}
> 2016-11-23 17:11:46,944 DEBUG [AM.ZK.Worker-pool2-t1] master.AssignmentManager: Handling
RS_ZK_REGION_FAILED_OPEN, server=example.org,30003,1479780976834, region=57513956a7b671f4e8da1598c2e2970e,
current_state={57513956a7b671f4e8da1598c2e2970e state=PENDING_OPEN, ts=1479892306843, server=example.org,30003,1479780976834}
> 2016-11-23 17:11:46,944 INFO  [AM.ZK.Worker-pool2-t1] master.RegionStates: Transition
{57513956a7b671f4e8da1598c2e2970e state=PENDING_OPEN, ts=1479892306843, server=example.org,30003,1479780976834}
to {57513956a7b671f4e8da1598c2e2970e state=CLOSED, ts=1479892306944, server=example.org,30003,1479780976834}
> 2016-11-23 17:11:46,945 WARN  [AM.ZK.Worker-pool2-t1] master.RegionStates: 57513956a7b671f4e8da1598c2e2970e
moved to CLOSED on example.org,30003,1479780976834, expected example.org,30003,1475893095003
> 2016-11-23 17:11:46,950 DEBUG [AM.ZK.Worker-pool2-t1] master.AssignmentManager: Found
an existing plan for test,QFO7M,1475986053104.57513956a7b671f4e8da1598c2e2970e. destination
server is example.org,30003,1479780976834 accepted as a dest server = false
> 2016-11-23 17:11:47,012 DEBUG [AM.ZK.Worker-pool2-t1] master.AssignmentManager: No previous
transition plan found (or ignoring an existing plan) for test,QFO7M,1475986053104.57513956a7b671f4e8da1598c2e2970e.;
generated random plan=hri=test,QFO7M,1475986053104.57513956a7b671f4e8da1598c2e2970e., src=,
dest=,30003,1479781410131; 2 (online=3) available servers, forceNewPlan=true
> 2016-11-23 17:11:47,014 DEBUG [AM.ZK.Worker-pool2-t1] handler.ClosedRegionHandler: Handling
CLOSED event for 57513956a7b671f4e8da1598c2e2970e
> 2016-11-23 17:11:47,015 WARN  [AM.ZK.Worker-pool2-t1] master.RegionStates: 57513956a7b671f4e8da1598c2e2970e
moved to CLOSED on example.org,30003,1479780976834, expected example.org,30003,1475893095003
> {noformat}
> AssignmentManager skip to assign it because the region was on a failed server
> {noformat}
> 2016-11-23 17:11:47,017 INFO  [AM.ZK.Worker-pool2-t1] master.AssignmentManager: Skip
assigning test,QFO7M,1475986053104.57513956a7b671f4e8da1598c2e2970e., it's host example.org,30003,1475893095003
is dead but not processed yet
> {noformat}
> SSH also skip it because it was RIT on another server
> {noformat}
> 2016-11-23 17:12:17,850 INFO  [MASTER_SERVER_OPERATIONS-example.org:30001-0] master.RegionStates:
Transitioning {57513956a7b671f4e8da1598c2e2970e state=CLOSED, ts=1479892307015, server=example.org,30003,1479780976834}
will be handled by SSH for example.org,30003,1475893095003
> 2016-11-23 17:12:17,910 INFO  [MASTER_SERVER_OPERATIONS-example.org:30001-0] handler.ServerShutdownHandler:
Skip assigning region in transition on other server{57513956a7b671f4e8da1598c2e2970e state=CLOSED,
ts=1479892307015, server=example.org,30003,1479780976834}
> {noformat}

This message was sent by Atlassian JIRA

View raw message