[
https://issues.apache.org/jira/browse/HBASE-23040?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sean Busbey resolved HBASE-23040.
---------------------------------
Fix Version/s: 2.2.2
2.1.7
2.3.0
3.0.0
Release Note:
giving the region mover "unload" command a region server name that isn't
recognized by the cluster results in a "I don't know about that host" message
instead of a NPE.
set log level to DEBUG if you'd like the region mover to log the set of region
server names it got back from the cluster.
Resolution: Fixed
> region mover gives NullPointerException instead of saying a host isn't in the
> cluster
> -------------------------------------------------------------------------------------
>
> Key: HBASE-23040
> URL: https://issues.apache.org/jira/browse/HBASE-23040
> Project: HBase
> Issue Type: Bug
> Affects Versions: 3.0.0, 2.1.0, 2.2.0, 2.3.0
> Reporter: Sean Busbey
> Assignee: Sean Busbey
> Priority: Minor
> Fix For: 3.0.0, 2.3.0, 2.1.7, 2.2.2
>
>
> if passed a host that isn't in the cluster we get a NPE
> {code}
> 2019-09-17 21:50:45,595 ERROR [pool-2-thread-1] util.RegionMover: Error while
> unloading regions
> java.lang.NullPointerException: serverName is null
> at
> org.apache.hbase.thirdparty.com.google.common.base.Preconditions.checkNotNull(Preconditions.java:897)
> at
> org.apache.hadoop.hbase.client.AsyncRpcRetryingCallerFactory$AdminRequestCallerBuilder.build(AsyncRpcRetryingCallerFactory.java:518)
> at
> org.apache.hadoop.hbase.client.AsyncRpcRetryingCallerFactory$AdminRequestCallerBuilder.call(AsyncRpcRetryingCallerFactory.java:522)
> at
> org.apache.hadoop.hbase.client.RawAsyncHBaseAdmin.getRegions(RawAsyncHBaseAdmin.java:842)
> at
> org.apache.hadoop.hbase.client.AdminOverAsyncAdmin.getRegions(AdminOverAsyncAdmin.java:229)
> at
> org.apache.hadoop.hbase.util.RegionMover.unloadRegions(RegionMover.java:448)
> at
> org.apache.hadoop.hbase.util.RegionMover.lambda$unload$1(RegionMover.java:431)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> {code}
> Should instead give some kind of "I don't know what this host is
> 'foobar.example.com'" and maybe a debug message with what hosts were in the
> cluster.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)