Spark Executor:初始堆大小无效:-Xms0M

时间:2016-01-29 03:34:22

标签: java apache-spark jvm apache-spark-sql

我已将Spark配置为在hive表上进行查询。

使用以下命令运行Thrift JDBC / ODBC服务器:

cd $SPARK_HOME
./sbin/start-thriftserver.sh --master spark://myhost:7077 --hiveconf hive.server2.thrift.bind.host=myhost --hiveconf hive.server2.thrift.port=9999

然后检查了Spark worker UI,执行程序启动失败并出现以下错误,JVM初始化失败,因为错误-Xms:

Invalid initial heap size: -Xms0M
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

以下是 conf / spark-env.sh

中更改的配置
export SPARK_JAVA_OPTS="-Dspark.executor.memory=512M"
export SPARK_EXECUTOR_MEMORY=1G
export SPARK_DRIVER_MEMORY=512M
export SPARK_WORKER_MEMORY=2G
export SPARK_WORKER_INSTANCES=1

我真的不知道这个值 -Xms0M 的来源或者它是如何派生的? 请帮助我理解问题并更改此值。

1 个答案:

答案 0 :(得分:0)

现在正在工作......

Thrift服务器没有从 spark-env.sh 中选择执行程序内存,然后我明确地在thrift服务器启动脚本中添加了。

<强> ./ sbin目录/ start-thriftserver.sh

exec "$FWDIR"/sbin/spark-daemon.sh spark-submit $CLASS 1 --executor-memory 512M "$@"

有了这个,Executor开始获得有效的内存,JDBC查询得到了结果。

conf / spark-env.sh (执行器内存配置未被thrift-server选取)

export SPARK_JAVA_OPTS="-Dspark.executor.memory=512M"
export SPARK_EXECUTOR_MEMORY=512M