Я работаю с spark.2.3.1. Приложение Spark отправляется в автономный кластер spark: //10.101.3.128: 7077 в режиме кластера. Мне нужны некоторые параметры JVM с spark.driver.extraJavaOptions. Тем не менее, я считаю, что это не передается в JVM. Я печатаю командную строку процесса драйвера здесь.
anqin 2239 59.6 4.2 3702324 338352 ? Sl 14:51 0:13 /opt/jdk1.8.0_91/bin/java .... -Dspark.driver.memory=1g -Dspark.port.maxRetries=20 -Dspark.cores.max=4 -Dspark.driver.maxResultSize=200m -Dspark.driver.supervise=false -Dspark.hadoop.conf.dir=/home/hadoop/hadoop-insec-2.7.3/etc/hadoop -Dspark.executor.memory=1g -Dspark.hadoop.cloneConf=true -Dspark.sql.thriftServer.incrementalCollect=false -Dspark.driver.port=31100 -Dspark.driver.extraJavaOptions=-Xdebug -Xrunjdwp:transport=dt_socket,address=8788,server=y,suspend=y -Dspark.rpc.askTimeout=10s -Dspark.driver.extraClassPath= -Dspark.master.submit=spark://10.101.3.128:7077 org.apache.spark.deploy.worker.DriverWrapper spark://Worker@10.101.3.128:59189 /home/anqin/spark-2.3.1-bin-hadoop2.7/work/driver-20200415145131-0029/vtsparkcommon.jar com.vitria.spark.MainClass /home/qa/anqin/VIA61RS/spark/apps/_appdata_qs__prj_vtd88ecbb3-b10a-4f70-8877-53122250cb8e-Deployment
Мое свойство - spark.driver.extraJavaOptions = -Xdebug -Xrunjdwp: transport = dt_socket, address = 8788, server = y, suspend = y. Мы можем видеть, что эта строка передается в JVM как значение spark.driver.extraJavaOptions. Строка "-Dspark.driver.extraJavaOptions =" не должна быть здесь, верно? Поскольку драйвер работает в той же JVM DriverWrapper, нет способа получить правильный параметр JVM.
Это ошибка? Есть ли способ трудоустройства? Я хочу знать, была ли эта проблема исправлена в Spark в каком-либо выпуске или будет исправлена в будущем.
Кстати, эта проблема не существует с spark: //10.101.3.128: 6066.
Спасибо.