HDFS使用appendToFile报错WARN hdfs.DFSClient: DataStreamer Exception java.io.IOException: Failed

简介: HDFS使用appendToFile报错WARN hdfs.DFSClient: DataStreamer Exception java.io.IOException: Failed

20200929104837267.png报错提示说原文件已经被视为bad datanode了,具体不知道怎么被视作的。参考hadoop错误解决方案:

先看看文件是否有写权限。


20200929105231981.png


往空文件中追加就相当于直接写文件,所以能追加进去,而往有内容的文件中追加不进去是因为datanode节点数不够三个,其他虚拟机没有开无法进行文件备份。

解决方法1:


至少打开三个节点。

解决方法2:

修改hdfs-site.xml文件,添加或者修改如下两项:

< property>
< name>
dfs.client.block.write.replace-datanode-on-failure.enable
</ name>
< value>true</ value>
</ property>
< property>
< name>
dfs.client.block.write.replace-datanode-on-failure.policy
</ name>
< value>never</ value>
</ property>

添加或修改完成后,重试即可。

解决方法3:

在客户端的代码里面加入:

 conf = new Configuration();
    conf.set("dfs.client.block.write.replace-datanode-on-failure.policy",
                "NEVER"
        ); 
conf.set("dfs.client.block.write.replace-datanode-on-failure.enable",
                "true"
        ); 


目录
相关文章
|
22天前
|
消息中间件 Java Kafka
zookeeper:Unexpected exception, exiting abnormally ::java.io.EOFException
zookeeper:Unexpected exception, exiting abnormally ::java.io.EOFException
41 1
zookeeper:Unexpected exception, exiting abnormally ::java.io.EOFException
|
5天前
|
Java 编译器
Error:java: Compilation failed: internal java compiler error
Error:java: Compilation failed: internal java compiler error
15 1
|
7天前
|
Java Android开发
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
解决Android编译报错:Unable to make field private final java.lang.String java.io.File.path accessible
26 1
|
8天前
|
Java
Exception in thread "main" java.lang.UnsatisfiedLinkError: xxx()V
Exception in thread "main" java.lang.UnsatisfiedLinkError: xxx()V
6 0
|
1月前
|
分布式计算 Hadoop 关系型数据库
实时计算 Flink版操作报错合集之Hadoop在将文件写入HDFS时,无法在所有指定的数据节点上进行复制,该如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
2月前
Exception in thread "main" java.lang.IllegalArgumentException: U+6570 ('.notdef') is not available in the font Helvetica-Bold, encoding: WinAnsiEncoding 这个问题如何解决
【6月更文挑战第19天】Exception in thread "main" java.lang.IllegalArgumentException: U+6570 ('.notdef') is not available in the font Helvetica-Bold, encoding: WinAnsiEncoding 这个问题如何解决
167 2
|
2月前
|
数据采集 Java Linux
Java异常之【sun.security.validator.ValidatorException: PKIX path building failed: sun.security...】
Java异常之【sun.security.validator.ValidatorException: PKIX path building failed: sun.security...】
46 0
Java异常之【sun.security.validator.ValidatorException: PKIX path building failed: sun.security...】
|
2月前
|
Java 大数据 API
【大数据】HDFS、HBase操作教程(含指令和JAVA API)
【大数据】HDFS、HBase操作教程(含指令和JAVA API)
88 0
【大数据】HDFS、HBase操作教程(含指令和JAVA API)
|
2月前
|
关系型数据库 分布式数据库 数据库
PolarDB操作报错合集之遇到报错:Exception in thread "main" java.lang.NoClassDefFoundError: jpcap/JpcapCaptor,该怎么解决
PolarDB是阿里云推出的一种云原生数据库服务,专为云设计,提供兼容MySQL、PostgreSQL的高性能、低成本、弹性可扩展的数据库解决方案,可以有效地管理和优化PolarDB实例,确保数据库服务的稳定、高效运行。以下是使用PolarDB产品的一些建议和最佳实践合集。
|
2月前
使用字节输入流报错 java.io.FileNotFoundException: srcdruid.properties (系统找不到指定的文件。)
使用字节输入流报错 java.io.FileNotFoundException: srcdruid.properties (系统找不到指定的文件。)
24 0