【使用时发生的意外】file is not sufficiently replicated yet

异常堆栈如下:

2017-10-20 00:00:12,340 ERROR [com.ultrapower.secsight.util.HdfsUtil] - 追加写入文件失败!
org.apache.hadoop.ipc.RemoteException(java.io.IOException): append: lastBlock=blk_1075691975_50802816 of src=/hebei/stdlog/std_log0001/20171016/p0001 is not sufficiently replicated yet.
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.appendFileInternal(FSNamesystem.java:2915)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.appendFileInt(FSNamesystem.java:3186)
    at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.appendFile(FSNamesystem.java:3149)
    at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.append(NameNodeRpcServer.java:611)
    at org.apache.hadoop.hdfs.server.namenode.AuthorizationProviderProxyClientProtocol.append(AuthorizationProviderProxyClientProtocol.java:124)
    at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.append(ClientNamenodeProtocolServerSideTranslatorPB.java:416)
    at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java)
    at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:617)
    at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:1060)
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2086)
    at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2082)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:422)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1671)
    at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2080)

    at org.apache.hadoop.ipc.Client.call(Client.java:1469)
    at org.apache.hadoop.ipc.Client.call(Client.java:1400)
    at org.apache.hadoop.ipc.ProtobufRpcEngine$Invoker.invoke(ProtobufRpcEngine.java:232)
    at com.sun.proxy.$Proxy14.append(Unknown Source)
    at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolTranslatorPB.append(ClientNamenodeProtocolTranslatorPB.java:313)
    at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:187)
    at org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:102)
    at com.sun.proxy.$Proxy15.append(Unknown Source)
    at org.apache.hadoop.hdfs.DFSClient.callAppend(DFSClient.java:1756)
    at org.apache.hadoop.hdfs.DFSClient.append(DFSClient.java:1792)
    at org.apache.hadoop.hdfs.DFSClient.append(DFSClient.java:1785)
    at org.apache.hadoop.hdfs.DistributedFileSystem$4.doCall(DistributedFileSystem.java:323)
    at org.apache.hadoop.hdfs.DistributedFileSystem$4.doCall(DistributedFileSystem.java:319)
    at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
    at org.apache.hadoop.hdfs.DistributedFileSystem.append(DistributedFileSystem.java:319)
    at org.apache.hadoop.fs.FileSystem.append(FileSystem.java:1163)
    at com.ultrapower.secsight.util.HdfsUtil.appendWriteFile(HdfsUtil.java:309)
    at com.ultrapower.secsight.job.sync.writer.HDFSWriter.write(HDFSWriter.java:60)
    at com.ultrapower.secsight.job.maker.RunnerJob.lambda$sync$2(RunnerJob.java:130)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

发生的场景:

  hadoop 2.6.1版本

  追加HDFS过于频繁!!执行文件复制时出错。

If I run fsck it says the file is corrupt - missing one block. Sometimes the filesystem gets healthy with a random combination of running balancer/namenode recovery/hdfs dfs -setrep. After running the append for a while, the original problem reappears. I even once removed one node already which had corrupt data and the system got 100 % healthy without any problems - for a while.

https://stackoverflow.com/questions/26361470/not-sufficiently-replicated-yet-when-appending-to-a-file-in-hdfs

时间: 2024-10-30 01:20:24

【使用时发生的意外】file is not sufficiently replicated yet的相关文章

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

这几天因为工作需求,需要把MySQL请出来,所以将尘封已久的MySQL进行启动.可是事与愿违,兴许是许久没有访问MySQL了,MySQL生气的不理我,并向外抛出一阵阵报错.1.其中一个是:Windows无法启动MySQL57服务(位于本地计算机上)错误1067:进程意外终止,报错如下图所示. 2.紧跟着还有一个报错:本地计算机上的MySQL服务启动后停止.某些服务在未由其他服务或程序使用时将自动停止,报错如下图所示. 3.之后即便我垂死挣扎,在命令行窗口中不断的重启MySQL服务,但是仍然没有戳

RHEL6.5上Oracle ACFS与Linux samba一起使用时遇到的bug

RHEL上的Oracle ACFS与linux samba一起使用时遇到的bug 一.环境介绍: cat /etc/issue的结果为: Red Hat Enterprise Linux Server release 6.5 (Santiago) Kernel \r on an \m GI的详细patch信息:仅仅安装了GI的11.2.0.4版本,没有打任何的GI psu,没有打任何的GI patch 二.问题说明: 这是一套rhel6.5的rac,使用的是Oracle GI集群软件,使用了ac

在查找预编译头使用时跳过解决

环境:VS2010 微软官方解释: Visual C++ Concepts: Building a C/C++ ProgramCompiler Warning (level 1) C4627Error Message ": skipped when looking for precompiled header use While searching for the location where a precompiled header is used, the compiler encounte

解决VS在查找预编译头使用时跳过

(1)fatal error C1010: 在查找预编译头时遇到意外的文件结尾.是否忘记了向源中添加“#include "stdafx.h (2)解决VS在查找预编译头使用时跳过 visual studio默认在查找预编译头StdAfx.h使用时跳过,如果没有找到#include "StdAfx.h"会导致错误, 但是有包含StdAfx.h.但是cpp文件和StdAfx.h不在一个目录下(比如#include "../StdAfx.h")会导致错误. 解决

protobuf在使用时出现的问题小汇总

文章开头放一下IBM的google protocol buffer的介绍链接.http://www.ibm.com/developerworks/cn/linux/l-cn-gpb/ 对于这种技术不断更新的东西,我只能这么理解:因为技术在更新,版本在变化,之前很详尽的技术博文可能在之后的版本中遇到无法预知的问题,所以我们在使用时要注意甄别.废话不多说,进入正文部分. 安装什么的都是小问题了,还是贴一下步骤吧. tar -xzf protobuf-2.5.0.tar.gz cd protobuf-

广州深圳相继发生手扶电梯意外 3天内21人被送医

8月26日 广州火车东站发生手扶电梯伤人事故,伤者被送往医院 三日之内,广深相继发生手扶电梯意外,21名市民因电梯受伤被送到医院.广州市质监局有关负责人告诉羊城晚报记者,火车站.医院和大型商业中心是手扶电梯出事相对频繁的区域,“但绝大部分事故并非机械故障导致,而是乘客使用不当”. 事故因“大件行李”而起 26日上午6时许,广州火车东站,通往6号站台的一手扶电梯疑出现故障,导致扶梯上20多人摔倒.事件发生后,11名伤者被送往医院. 天河区质监局人员根据现场的监控录像发现,一名乘客在电梯上拖拽大件行

EntityFrameWork 使用时碰到的小问题

EntityFrameWork 使用时碰到的小问题 1,在使用orm访问数据库的相目里,也要引用EntityFrameWork.dll,否则无法使用orm 否则,编译错误 错误 5 "System.Data.Entity.DbSet`1<DbAccess.Entity.Dept>"不包含"Where"的定义,并且找不到可接受类型为"System.Data.Entity.DbSet`1<DbAccess.Entity.Dept>&qu

Highcharts使用时遇到的问题及解决方案

Highcharts使用时遇到的问题及解决方案 Highcharts图表控件功能强大,对细节处理得很细致,是目前使用最为广泛的图表控件.本文总结了作者在使用Highcharts时遇到的问题及解决方案. 1. 图表颜色设置 图表的边框色,背景色及点.线的颜色都是可以设置的,其中边框色(borderColor).背景色(backgroundColor)在chart中设置: chart: { backgroundColor: 'pink',// 背景色 borderColor: 'red',// 边框

bootstrap使用时 细节心得

最近国庆7天 还原某丽说 APP PC端网页(作业)时  全程使用bootstrap制作 也遇到了以前很少碰到过的问题 bootstrap 本身修改了某些默认样式  即使在 未给标签class命名某个bootstrap模板时  某些标签也被修改过  这样会容易使某些像我一样的新手误以为自己写的代码哪里出了问题  而浪费很多时间去找一个 没有错误的错误  所以在这里给各位同学做个温馨提示 例如 fieldset 中 lengd标签中的文字 应该是水平居中 位于两侧横线中间 并且垂直居中于横线 但在