HDFS-7714. Simultaneous restart of HA NameNodes and DataNode can cause DataNode to register successfully with only one NameNode.(Contributed by Vinayakumar B)
This commit is contained in:
parent
23bf6c7207
commit
3d15728ff5
|
@ -896,6 +896,9 @@ Release 2.7.0 - UNRELEASED
|
|||
HDFS-7718. Store KeyProvider in ClientContext to avoid leaking key provider
|
||||
threads when using FileContext (Arun Suresh via Colin P. McCabe)
|
||||
|
||||
HDFS-7714. Simultaneous restart of HA NameNodes and DataNode can cause
|
||||
DataNode to register successfully with only one NameNode.(vinayakumarb)
|
||||
|
||||
Release 2.6.1 - UNRELEASED
|
||||
|
||||
INCOMPATIBLE CHANGES
|
||||
|
|
|
@ -19,6 +19,7 @@ package org.apache.hadoop.hdfs.server.datanode;
|
|||
|
||||
import static org.apache.hadoop.util.Time.now;
|
||||
|
||||
import java.io.EOFException;
|
||||
import java.io.IOException;
|
||||
import java.net.InetSocketAddress;
|
||||
import java.net.SocketTimeoutException;
|
||||
|
@ -797,6 +798,10 @@ class BPServiceActor implements Runnable {
|
|||
// Use returned registration from namenode with updated fields
|
||||
bpRegistration = bpNamenode.registerDatanode(bpRegistration);
|
||||
break;
|
||||
} catch(EOFException e) { // namenode might have just restarted
|
||||
LOG.info("Problem connecting to server: " + nnAddr + " :"
|
||||
+ e.getLocalizedMessage());
|
||||
sleepAndLogInterrupts(1000, "connecting to server");
|
||||
} catch(SocketTimeoutException e) { // namenode is busy
|
||||
LOG.info("Problem connecting to server: " + nnAddr);
|
||||
sleepAndLogInterrupts(1000, "connecting to server");
|
||||
|
|
Loading…
Reference in New Issue