Mina, thanks for detailed explanation!

First I went with approach "without SPARK_HOME". I just keep getting OOM
from some threads.
But now I try to do it right way - with SPARK_HOME.
I haven't changed my conf/zeppelin-env.sh at all and my spark-defaults.conf
in SPARK_HOME is:

spark.serializer                 org.apache.spark.serializer.KryoSerializer
spark.master yarn-client
spark.executor.memory 10g
spark.yarn.executor.memoryOverhead 3000
spark.executor.cores 2
spark.driver.memory 20g
spark.yarn.driver.memoryOverhead 3000
spark.sql.autoBroadcastJoinThreshold 500485760
spark.network.timeout 400s
spark.driver.maxResultSize 3g
spark.akka.frameSize 500
spark.akka.askTimeout 30
spark.dynamicAllocation.enabled true
spark.shuffle.service.enabled true
spark.dynamicAllocation.minExecutors 5
spark.dynamicAllocation.executorIdleTimeout 100s
spark.dynamicAllocation.cachedExecutorIdleTimeout 300s
spark.scheduler.mode FAIR

I get: "Error occurred during initialization of VM
Incompatible minimum and maximum heap sizes specified" in my
logs/zeppelin-egor-hadoop2.out.

When I remove spark-defaults.conf from SPARK_HOME everything is
working, but with default settings.

What might be the problem?


2015-11-16 7:08 GMT-08:00 Mina Lee <mina...@nflabs.com>:

> Hi Egor,
>
> we recommand you to set SPARK_HOME because many spark configurations can
> be handled better in this way.
> SPARK_SUBMIT_OPTIONS in conf/zeppelin-env.sh is valid only when you set
> SPARK_HOME.
> Since you get JVM error, if you have any JVM related configuration in
> your conf/zeppelin-env.sh can you share it?
>
> If you want to change driver memory without setting SPARK_HOME, you can
> try ZEPPELIN_INTP_MEM in conf/zeppelin-env.sh file as below:
> export ZEPPELIN_INTP_MEM="-Xmx10g" in conf/zeppelin-env.sh file.
> FYI, Zeppelin's default ZEPPELIN_INTP_MEM is "-Xmx1024m
> -XX:MaxPermSize=512m".
>
> Though Spark's UI won't display "Storage Memory" as 10g, because it will
> shows fraction of java heap to use for memory cache.
>
> I tested both with/without SPARK_HOME setting in yarn-client mode, and
> Spark UI shows different value.
>
>    - With SPARK_HOME setting if I export SPARK_SUBMIT_OPTIONS="--driver-momory
>    10g", driver storage memory is 5.2G.
>    - Without SPARK_HOME setting if I export ZEPPELIN_INT_MEM="-Xmx10g",
>    driver storage memory is 4.8G.
>
> The difference here is that first one starts spark interpreter process by
> running spark_submit and second one runs with java.
>
> Hope this helps!
>
>
>
>
> On Thu, Nov 12, 2015 at 8:41 AM, Egor Pahomov <pahomov.e...@gmail.com>
> wrote:
>
>> I'm trying to configure driver memory size. So far I tied next parameters:
>>
>>    -
>>
>>    export JAVA_INTP_OPTS="-Xmx10g"
>>
>>    -
>>
>>    export SPARK_SUBMIT_OPTIONS="--driver-memory 10g --executor-memory 10g"
>>
>>    -
>>
>>    " -Xmx30000m \
>>
>>    -
>>
>>    Change SparkInterpreter.java: conf.set("spark.executor.memory", "10g");
>>
>>    conf.set("spark.executor.cores", "2");
>>    conf.set("spark.driver.memory", "10g");
>>    conf.set("spark.shuffle.io.numConnectionsPerPeer", "5");
>>    conf.set("spark.sql.autoBroadcastJoinThreshold", "200483647");
>>    conf.set("spark.network.timeout", "400s");
>>    conf.set("spark.driver.maxResultSize", "3g");
>>    conf.set("spark.sql.hive.convertMetastoreParquet", "false");
>>    conf.set("spark.kryoserializer.buffer.max", "200m");
>>    conf.set("spark.serializer", 
>> "org.apache.spark.serializer.KryoSerializer");
>>    conf.set("spark.dynamicAllocation.enabled", "true");
>>    conf.set("spark.shuffle.service.enabled", "true");
>>    conf.set("spark.dynamicAllocation.minExecutors", "1");
>>    conf.set("spark.dynamicAllocation.maxExecutors", "30");
>>    conf.set("spark.dynamicAllocation.executorIdleTimeout", "60s");
>>            //.set("spark.sql.hive.metastore.version", "1.1.0")
>>    conf.set("spark.dynamicAllocation.cachedExecutorIdleTimeout", "100s");
>>
>>    -
>>
>>    I tried setting SPARK_HOME, but it didn't even started, failed with 
>> "Incompatible minimum and maximum heap sizes specified"
>>
>>
>> No matter, what I do I get in logs: "INFO [2015-11-11 14:55:24,453]
>> ({sparkDriver-akka.actor.default-dispatcher-14} Logging.scala[logInfo]:59)
>> - Registering block manager 192.168.12.121:45057 with 530.0 MB RAM,
>> BlockManagerId(driver, 192.168.12.121, 45057)" and on my spark UI:
>>
>> ​Has anyone faced this problem or knows what to do?
>>
>> --
>>
>>
>> *Sincerely yoursEgor Pakhomov*
>>
>
>


-- 


*Sincerely yoursEgor Pakhomov*

Reply via email to