You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Vladislav Falfushinsky (JIRA)" <ji...@apache.org> on 2014/08/27 13:26:58 UTC

[jira] [Created] (HDFS-6953) HDFS file append failing in single node configuration

Vladislav Falfushinsky created HDFS-6953:
--------------------------------------------

             Summary: HDFS file append failing in single node configuration
                 Key: HDFS-6953
                 URL: https://issues.apache.org/jira/browse/HDFS-6953
             Project: Hadoop HDFS
          Issue Type: Bug
         Environment: Ubuntu 12.01, Apache Hadoop 2.5.0 single node configuration
            Reporter: Vladislav Falfushinsky


The following issue happens in both fully distributed and single node setup. 
I have looked to the similar thread about that issue and made some changes of my configuration however it does not changed anything. The configuration files and application sources are attached.
Steps to reproduce:

$ ./test_hdfs
2014-08-27 14:23:08,472 WARN  [Thread-5] hdfs.DFSClient (DFSOutputStream.java:run(628)) - DataStreamer Exception
java.io.IOException: Failed to replace a bad datanode on the existing pipeline due to no more good datanodes being available to try. (Nodes: current=[127.0.0.1:50010], original=[127.0.0.1:50010]). The current failed datanode replacement policy is DEFAULT, and a client may configure this via 'dfs.client.block.write.replace-datanode-on-failure.policy' in its configuration.
	at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.findNewDatanode(DFSOutputStream.java:969)
	at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.addDatanode2ExistingPipeline(DFSOutputStream.java:1035)
	at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.setupPipelineForAppendOrRecovery(DFSOutputStream.java:1184)
	at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:532)
FSDataOutputStream#close error:
java.io.IOException: Failed to replace a bad datanode on the existing pipeline due to no more good datanodes being available to try. (Nodes: current=[127.0.0.1:50010], original=[127.0.0.1:50010]). The current failed datanode replacement policy is DEFAULT, and a client may configure this via 'dfs.client.block.write.replace-datanode-on-failure.policy' in its configuration.
	at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.findNewDatanode(DFSOutputStream.java:969)
	at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.addDatanode2ExistingPipeline(DFSOutputStream.java:1035)
	at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.setupPipelineForAppendOrRecovery(DFSOutputStream.java:1184)
	at org.apache.hadoop.hdfs.DFSOutputStream$DataStreamer.run(DFSOutputStream.java:532)

Also I have tried a simle example in java, that uses append function. It failed too.

Then I`ve tried to get hadoop environment settings from my application. It has shown the default ones. Not the settings that are mentioned in *site.xml files.




--
This message was sent by Atlassian JIRA
(v6.2#6252)