WARN hdfs.DataStreamer: Caught exception
在向hdfs上传文件的时候,报了这么一个错:
Exception in thread "main" java.lang.RuntimeException: org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.hdfs.server.namenode.SafeModeException): WARN hdfs.DataStreamer: Caught exception java.lang.InterruptedException at java.lang.Object.wait(Native Method) at java.lang.Thread.join(Thread.java:1252) at java.lang.Thread.join(Thread.java:1326) at org.apache.hadoop.hdfs.DataStreamer.closeResponder(DataStreamer.java:980) at org.apache.hadoop.hdfs.DataStreamer.endBlock(DataStreamer.java:630) at org.apache.hadoop.hdfs.DataStreamer.run(DataStreamer.java:807)
去官网上查找原因后,进入https://issues.apache.org/jira/browse/HDFS-10429查看
翻译后的原因是:最初,datastreamer::closeresponder总是打印关于interruptedexception的警告;由于hdfs-9812,dfsoutputstream::closeimpl总是强制线程关闭,这会导致interruptedexception。
一个简单的修复方法是使用调试级别的日志而不是警告级别。
不过要是自己觉得不太重要的话也可以忽略,因为我觉得可能是没有按照官网要求的hdfs上传标准进行上传才报出的错,不过要是修改的话就采用上述方法。