引起:java.lang.OutOfMemoryError:超出GC开销限制
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了引起:java.lang.OutOfMemoryError:超出GC开销限制相关的知识,希望对你有一定的参考价值。
你能帮我解决一下GC开销错误吗?
背景:这是一个pig脚本,通过HCATALOGUE从4个hive表加载数据。 hive表是按顺序文件并按日期分区。负载数据大小约为。 24TB。
此脚本已成功运行16TB。
问题:尝试从配置单元读取数据时作业失败。没有为此映射提交应用程序ID,甚至在提交应用程序ID之前就会发生故障。所以,找不到YARN中的日志。
我尝试将yarn.app.mapreduce.am.resource.mb修改为6G,mapreduce.map.memory.mb(6GB),mapreduce.map.java.opts(6GB的0.8%),mapreduce.reduce.memory.mb( 8GB)和mapreduce.reduce.java.opts。仍然得到相同的错误。
对此有何帮助?
谢谢。
答案
有两种配置需要更改。
1.-XX:+ UseConcMarkSweepGC =使GC更频繁。
- -XX:-UseGCOverheadLimit =停止容器被杀,甚至等待更长时间。
在蜂巢控制台,只是解雇这个,你应该好好去。
蜂巢> SET mapred.child.java.opts=-Xmx4G -XX:+UseConcMarkSweepGC -XX:-UseGCOverheadLimit;
以上是关于引起:java.lang.OutOfMemoryError:超出GC开销限制的主要内容,如果未能解决你的问题,请参考以下文章
如何区分两个“onpause”事件 - 由单击“暂停”按钮引起,以及由到达媒体片段末尾引起?