HBASE-20772 Controlled shutdown fills Master log with the disturbing message 'No matching procedure found for rit=OPEN, location=ZZZZ, table=YYYYY, region=XXXX transition to CLOSED'
Look for the particular case where RS does the close of region w/o involving Master and log special message in this case. Dodgy. But until we have Master run shutdown of all regions, better than the message we currently show. Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/e705cf14 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/e705cf14 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/e705cf14 Branch: refs/heads/HBASE-20387 Commit: e705cf1447dd7e44f0cc0297746a0f14135e2f2f Parents: a2d3f16 Author: Michael Stack <[email protected]> Authored: Mon Aug 13 12:01:54 2018 -0700 Committer: Michael Stack <[email protected]> Committed: Mon Aug 13 15:59:54 2018 -0700 ---------------------------------------------------------------------- .../apache/hadoop/hbase/master/ServerManager.java | 2 +- .../hbase/master/assignment/AssignmentManager.java | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/e705cf14/hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java index 8841808..2cb4d5e 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/ServerManager.java @@ -921,7 +921,7 @@ public class ServerManager { } } - boolean isClusterShutdown() { + public boolean isClusterShutdown() { return this.clusterShutdown.get(); } http://git-wip-us.apache.org/repos/asf/hbase/blob/e705cf14/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java index 60a2349..70a9680 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/assignment/AssignmentManager.java @@ -850,8 +850,20 @@ public class AssignmentManager implements ServerListener { final ServerStateNode serverNode = regionStates.getOrCreateServer(serverName); if (!reportTransition(regionNode, serverNode, state, seqId)) { - // Don't log if shutting down cluster; during shutdown. - LOG.warn("No matching procedure found for {} transition to {}", regionNode, state); + // Don't log WARN if shutting down cluster; during shutdown. Avoid the below messages: + // 2018-08-13 10:45:10,551 WARN ...AssignmentManager: No matching procedure found for + // rit=OPEN, location=ve0538.halxg.cloudera.com,16020,1533493000958, + // table=IntegrationTestBigLinkedList, region=65ab289e2fc1530df65f6c3d7cde7aa5 transition + // to CLOSED + // These happen because on cluster shutdown, we currently let the RegionServers close + // regions. This is the only time that region close is not run by the Master (so cluster + // goes down fast). Consider changing it so Master runs all shutdowns. + if (this.master.getServerManager().isClusterShutdown() && + state.equals(TransitionCode.CLOSED)) { + LOG.info("RegionServer {} {}", state, regionNode.getRegionInfo().getEncodedName()); + } else { + LOG.warn("No matching procedure found for {} transition to {}", regionNode, state); + } } }
