HBASE-13532 Make UnknownScannerException less scary by giving more information in the exception string. (Apekshit)
Signed-off-by: Matteo Bertozzi <matteo.berto...@cloudera.com> Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/aaa43631 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/aaa43631 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/aaa43631 Branch: refs/heads/branch-1.2 Commit: aaa43631490874a6d7ec8afdcebd8608212c8f8c Parents: 6e3770b Author: Apekshit <apeksha...@gmail.com> Authored: Tue May 10 19:11:51 2016 -0700 Committer: Matteo Bertozzi <matteo.berto...@cloudera.com> Committed: Fri May 13 15:05:58 2016 -0700 ---------------------------------------------------------------------- .../org/apache/hadoop/hbase/regionserver/RSRpcServices.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/aaa43631/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java index f0ebbf5..113d913 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/RSRpcServices.java @@ -2370,9 +2370,14 @@ public class RSRpcServices implements HBaseRPCErrorHandler, if (request.hasScannerId()) { rsh = scanners.get(scannerName); if (rsh == null) { - LOG.info("Client tried to access missing scanner " + scannerName); + LOG.warn("Client tried to access missing scanner " + scannerName); throw new UnknownScannerException( - "Name: " + scannerName + ", already closed?"); + "Unknown scanner '" + scannerName + "'. This can happen due to any of the following " + + "reasons: a) Scanner id given is wrong, b) Scanner lease expired because of " + + "long wait between consecutive client checkins, c) Server may be closing down, " + + "d) RegionServer restart during upgrade.\nIf the issue is due to reason (b), a " + + "possible fix would be increasing the value of" + + "'hbase.client.scanner.timeout.period' configuration."); } scanner = rsh.s; HRegionInfo hri = scanner.getRegionInfo();