开发者社区 问答 正文

E-MapReduce hadoop集群一台机器中一个edits文件异常报错

已解决

E-MapReduce hadoop集群一台机器中一个edits文件异常报错Can't scan a pre-transactional edit log.

展开
收起
阿里云服务支持 2022-12-06 13:26:06 369 分享 版权
2 条回答
写回答
取消 提交回答
  • 官方回答

    可能是由于这台jounnernode节点发生过磁盘等异常,检查机器存储硬件等已恢复正常后,建议从其他JN节点上拷贝一份edits文件过来,原文件建议备份。

    2022-12-06 14:14:47
    赞同 展开评论
  • 网站:http://ixiancheng.cn/ 微信订阅号:小马哥学JAVA

    由于数据磁盘爆满,达到100%,导致journalnode宕掉,在启动journalnode以后,查看日志,提示Can't scan a pre-transactional edit log,这个时候namenode已经是不能正常启动了。 1、删除数据磁盘的一些无用的数据,让磁盘有一定的空间,只要空间>0k,journalnode就可以正常启动,我这边就是某一块盘一点磁盘空间都没有,可用空间0k。导致在启动journalnode的时候提示磁盘空间不足,说到底,还是集群在规划的时候没有预留磁盘空间导致的 2、报上述的 Can't scan a pre-transactional edit log 错误,就是由于journalnode维护的eidts文件损坏,这个时候,看一下journalnode几台节点,哪一台是好的,先删除损坏的journalnode的数据文件,然后把这台好的journalnode文件拷贝到其他的节点。 3、修改拷贝过来的数据文件的权限

    4、重启journalnode。

    2022-12-06 14:14:47
    赞同 展开评论