使用直线启动配置单元时发生outofmemoryerror

nszi6y05  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(327)

问题:
当我使用beeline启动hive时,hive正在通过cli工作:
直线-u“jdbc:hive2://********:10000/默认“-n****-p****-d”org.apache.hive.jdbc.hivedriver”
我得到以下例外:

SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
Error: java.io.IOException: com.google.protobuf.ServiceException: java.lang.OutOfMemoryError: GC overhead limit exceeded (state=,code=0)
Beeline version 0.14.0 by Apache Hive

我尝试的是:
我知道重新启动Hive服务并不能解决这个问题,但只是尝试了一下,没有运气。
我试图清除tmp:

rm -rf *

现在,hive cli也无法启动,出现以下错误:

$ hive
Error creating temp dir in java.io.tmpdir /tmp due to Read-only file system

有什么我需要调查的特定Hive属性吗?
请引导我。任何帮助都将不胜感激

bksxznpy

bksxznpy1#

@艾迪,你可以试试下面提到的方法。它应该对你有用。

if [ "$SERVICE" = "cli" ]; then
  if [ -z "$DEBUG" ]; then
    export HADOOP_OPTS="$HADOOP_OPTS -XX:NewRatio=12 -Xmx12288m -Xms10m -XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -XX:+useParNewGC -XX:-useGCOverheadLimit"
  else
    export HADOOP_OPTS="$HADOOP_OPTS -XX:NewRatio=12 -Xmx12288m -Xms10m -XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -XX:-useGCOverheadLimit"
  fi
fi

export HADOOP_HEAPSIZE=2048

有关更多详细信息,您还可以访问cloudera博客来管理hive。

相关问题