作为我的Java映射器的一部分,我有一个命令在本地节点上执行一些代码,并将本地输出文件复制到hadoop fs。不幸的是我得到了以下输出:
VM初始化期间发生错误
无法为对象堆保留足够的空间
我已经尝试将mapred.map.child.java.opts调整为-Xmx512M,但遗憾的是没有运气。
当我进入节点时,我可以运行-copyFromLocal命令而不会出现任何问题。输出文件也很小,大约100kb。
非常感谢任何帮助!
答案 0 :(得分:0)
映射器或缩减器中的无限循环可能导致内存不足错误。
当我使用iterator.hasNext()作为条件时,我遇到了一个OoM,对于reducer值,并没有在循环中调用iterator.next()。