HBASE-4446 Rolling restart RSs scenario, regions could stay in OPENING state
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1174878 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
1bd5e4032c
commit
d4c706f1b4
|
@ -1,6 +1,7 @@
|
||||||
HBase Change Log
|
HBase Change Log
|
||||||
|
Release 0.93.0 - Unreleased
|
||||||
|
|
||||||
Release 0.91.0 - Unreleased
|
Release 0.92.0 - Unreleased
|
||||||
INCOMPATIBLE CHANGES
|
INCOMPATIBLE CHANGES
|
||||||
HBASE-2002 Coprocessors: Client side support; Support RPC interface
|
HBASE-2002 Coprocessors: Client side support; Support RPC interface
|
||||||
changes at runtime (Gary Helmling via Andrew Purtell)
|
changes at runtime (Gary Helmling via Andrew Purtell)
|
||||||
|
@ -293,6 +294,8 @@ Release 0.91.0 - Unreleased
|
||||||
(Ramkrishna)
|
(Ramkrishna)
|
||||||
HBASE-4452 Possibility of RS opening a region though tickleOpening fails due to
|
HBASE-4452 Possibility of RS opening a region though tickleOpening fails due to
|
||||||
znode version mismatch (Ramkrishna)
|
znode version mismatch (Ramkrishna)
|
||||||
|
HBASE-4446 Rolling restart RSs scenario, regions could stay in OPENING state
|
||||||
|
(Ming Ma)
|
||||||
|
|
||||||
TESTS
|
TESTS
|
||||||
HBASE-4450 test for number of blocks read: to serve as baseline for expected
|
HBASE-4450 test for number of blocks read: to serve as baseline for expected
|
||||||
|
|
|
@ -1523,7 +1523,7 @@ public class AssignmentManager extends ZooKeeperListener {
|
||||||
// to OFFLINE state meanwhile the RS could have opened the corresponding
|
// to OFFLINE state meanwhile the RS could have opened the corresponding
|
||||||
// region and the state in znode will be RS_ZK_REGION_OPENED.
|
// region and the state in znode will be RS_ZK_REGION_OPENED.
|
||||||
// For all other cases we can change the in-memory state to OFFLINE.
|
// For all other cases we can change the in-memory state to OFFLINE.
|
||||||
if (hijack &&
|
if (hijack &&
|
||||||
(state.getState().equals(RegionState.State.PENDING_OPEN) ||
|
(state.getState().equals(RegionState.State.PENDING_OPEN) ||
|
||||||
state.getState().equals(RegionState.State.OPENING))) {
|
state.getState().equals(RegionState.State.OPENING))) {
|
||||||
state.update(RegionState.State.PENDING_OPEN);
|
state.update(RegionState.State.PENDING_OPEN);
|
||||||
|
@ -2504,7 +2504,8 @@ public class AssignmentManager extends ZooKeeperListener {
|
||||||
LOG.debug("Region has transitioned to OPENED, allowing "
|
LOG.debug("Region has transitioned to OPENED, allowing "
|
||||||
+ "watched event handlers to process");
|
+ "watched event handlers to process");
|
||||||
return;
|
return;
|
||||||
} else if (dataInZNode.getEventType() != EventType.RS_ZK_REGION_OPENING) {
|
} else if (dataInZNode.getEventType() != EventType.RS_ZK_REGION_OPENING &&
|
||||||
|
dataInZNode.getEventType() != EventType.RS_ZK_REGION_FAILED_OPEN ) {
|
||||||
LOG.warn("While timing out a region in state OPENING, "
|
LOG.warn("While timing out a region in state OPENING, "
|
||||||
+ "found ZK node in unexpected state: "
|
+ "found ZK node in unexpected state: "
|
||||||
+ dataInZNode.getEventType());
|
+ dataInZNode.getEventType());
|
||||||
|
|
Loading…
Reference in New Issue