HDFS-2286. DataXceiverServer logs AsynchronousCloseException at shutdown. Contributed by Todd Lipcon.
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.23@1162004 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
48ac2d3b8c
commit
4629bbffb3
|
@ -992,6 +992,9 @@ Release 0.23.0 - Unreleased
|
||||||
HDFS-1480. All replicas of a block can end up on the same rack when
|
HDFS-1480. All replicas of a block can end up on the same rack when
|
||||||
some datanodes are decommissioning. (todd)
|
some datanodes are decommissioning. (todd)
|
||||||
|
|
||||||
|
HDFS-2286. DataXceiverServer logs AsynchronousCloseException at shutdown
|
||||||
|
(todd)
|
||||||
|
|
||||||
BREAKDOWN OF HDFS-1073 SUBTASKS
|
BREAKDOWN OF HDFS-1073 SUBTASKS
|
||||||
|
|
||||||
HDFS-1521. Persist transaction ID on disk between NN restarts.
|
HDFS-1521. Persist transaction ID on disk between NN restarts.
|
||||||
|
|
|
@ -21,6 +21,7 @@ import java.io.IOException;
|
||||||
import java.net.ServerSocket;
|
import java.net.ServerSocket;
|
||||||
import java.net.Socket;
|
import java.net.Socket;
|
||||||
import java.net.SocketTimeoutException;
|
import java.net.SocketTimeoutException;
|
||||||
|
import java.nio.channels.AsynchronousCloseException;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Iterator;
|
import java.util.Iterator;
|
||||||
|
@ -144,6 +145,12 @@ class DataXceiverServer implements Runnable {
|
||||||
new Daemon(datanode.threadGroup, exciver).start();
|
new Daemon(datanode.threadGroup, exciver).start();
|
||||||
} catch (SocketTimeoutException ignored) {
|
} catch (SocketTimeoutException ignored) {
|
||||||
// wake up to see if should continue to run
|
// wake up to see if should continue to run
|
||||||
|
} catch (AsynchronousCloseException ace) {
|
||||||
|
// another thread closed our listener socket - that's expected during shutdown,
|
||||||
|
// but not in other circumstances
|
||||||
|
if (datanode.shouldRun) {
|
||||||
|
LOG.warn(datanode.getMachineName() + ":DataXceiverServer: ", ace);
|
||||||
|
}
|
||||||
} catch (IOException ie) {
|
} catch (IOException ie) {
|
||||||
LOG.warn(datanode.getMachineName() + ":DataXceiverServer: ", ie);
|
LOG.warn(datanode.getMachineName() + ":DataXceiverServer: ", ie);
|
||||||
} catch (Throwable te) {
|
} catch (Throwable te) {
|
||||||
|
|
Loading…
Reference in New Issue