You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by "Guanghao Zhang (JIRA)" <ji...@apache.org> on 2018/06/04 03:07:00 UTC
[jira] [Created] (HBASE-20678) NPE in
ReplicationSourceManager#NodeFailoverWorker
Guanghao Zhang created HBASE-20678:
--------------------------------------
Summary: NPE in ReplicationSourceManager#NodeFailoverWorker
Key: HBASE-20678
URL: https://issues.apache.org/jira/browse/HBASE-20678
Project: HBase
Issue Type: Umbrella
Reporter: Guanghao Zhang
2018-06-04 10:28:43,362 INFO [ReplicationExecutor-0] replication.ZKReplicationQueueStorage(432): Claim queue queueId=1 from hao-optiplex-7050,38491,1528079278158 to hao-optiplex-7050,39931,1528079278272 failed with org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode, someone else took the log?
Exception in thread "ReplicationExecutor-0" java.lang.NullPointerException
at org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceManager$NodeFailoverWorker.run(ReplicationSourceManager.java:858)
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)
ZKReplicationQueueStorage's claimQueue method may return null when got NoNodeException.
{code:java}
Pair<String, SortedSet<String>> peer = queueStorage.claimQueue(deadRS,
queues.get(ThreadLocalRandom.current().nextInt(queues.size())), server.getServerName());
long sleep = sleepBeforeFailover / 2;
if (!peer.getSecond().isEmpty()) {
newQueues.put(peer.getFirst(), peer.getSecond());
sleep = sleepBeforeFailover;
}
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)