Rajesh Kartha created HDFS-8738:
-----------------------------------
Summary: Limit Exceptions thrown by DataNode when a client makes
socket connection and sends an empty message
Key: HDFS-8738
URL: https://issues.apache.org/jira/browse/HDFS-8738
Project: Hadoop HDFS
Issue Type: Bug
Components: datanode
Affects Versions: 2.7.1
Reporter: Rajesh Kartha
Priority: Minor
When a client creates a socket connection to the Datanode and sends an empty
message, the datanode logs have exceptions like these:
2015-07-08 20:00:55,427 ERROR datanode.DataNode (DataXceiver.java:run(278)) -
bidev17.rtp.ibm.com:50010:DataXceiver error processing unknown operation src:
/127.0.0.1:41508 dst: /127.0.0.1:50010
java.io.EOFException
at java.io.DataInputStream.readShort(DataInputStream.java:315)
at
org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.readOp(Receiver.java:58)
at
org.apache.hadoop.hdfs.server.datanode.DataXceiver.run(DataXceiver.java:227)
at java.lang.Thread.run(Thread.java:745)
2015-07-08 20:00:56,671 ERROR datanode.DataNode (DataXceiver.java:run(278)) -
bidev17.rtp.ibm.com:50010:DataXceiver error processing unknown operation src:
/127.0.0.1:41509 dst: /127.0.0.1:50010
java.io.EOFException
at java.io.DataInputStream.readShort(DataInputStream.java:315)
at
org.apache.hadoop.hdfs.protocol.datatransfer.Receiver.readOp(Receiver.java:58)
at
org.apache.hadoop.hdfs.server.datanode.DataXceiver.run(DataXceiver.java:227)
at java.lang.Thread.run(Thread.java:745)
These can fill up the logs and was recently noticed with an Ambari 2.1 based
install which tries to check if the datanode is up.
Can be easily reproduced with a simple Java client creating a Socket connection:
public static void main(String[] args) {
Socket DNClient;
try {
DNClient = new Socket("127.0.0.1", 50010);
DataOutputStream os= new
DataOutputStream(DNClient.getOutputStream());
os.writeBytes("");
os.close();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)