Что означает kill% p - PullRequest
       19

Что означает kill% p

0 голосов
/ 23 октября 2018

Я пытаюсь понять, что означает

-XX: OnOutOfMemoryError = 'kill% p'

в следующей команде?

Я не уверен, что%р означает?

exec /bin/bash -c "LD_LIBRARY_PATH="/usr/hdp/current/hadoop-client/lib/native:/usr/hdp/current/hadoop-client/lib/native/Linux-amd64-64:$LD_LIBRARY_PATH" $JAVA_HOME/bin/java -server -Xmx5120m '-DENVIRONMENT=pt' -Djava.io.tmpdir=$PWD/tmp '-Dspark.history.ui.port=18081' '-Dspark.driver.port=39112' -Dspark.yarn.app.container.log.dir=/hadoop/hdfs/drive5/hadoop/yarn/log/application_1539650094881_0116/container_e111_1539650094881_0116_01_000024 -XX:OnOutOfMemoryError='kill %p' org.apache.spark.executor.CoarseGrainedExecutorBackend --driver-url spark://CoarseGrainedScheduler@192.168.1.13:39112 --executor-id 13 --hostname slave3.hadoop.tsl.com --cores 5 --app-id application_1539650094881_0116 --user-class-path file:$PWD/__app__.jar 1> /hadoop/hdfs/drive5/hadoop/yarn/log/application_1539650094881_0116/container_e111_1539650094881_0116_01_000024/stdout 2> /hadoop/hdfs/drive5/hadoop/yarn/log/application_1539650094881_0116/container_e111_1539650094881_0116_01_000024/stderr"

Ответы [ 2 ]

0 голосов
/ 23 октября 2018

Этот аргумент выполняет команду ОС при возникновении ошибки OutOfMemory.Его можно использовать для отправки предупреждений, сбора диагностики или перезапуска приложения.

JVM заменит %p на идентификатор процесса (PID) самого себя.В конкретном случае это позволяет завершить приложение в OOM.Обычно это хорошая идея, потому что ошибка OutOfMemory может случайно прервать поток, и нет хорошего и надежного способа продолжить.

Начиная с 8u92, этот хак больше не нужен, так как есть опция ExitOnOutOfMemory, так какобсуждается здесь: Java - завершение работы из-за ошибки нехватки памяти

0 голосов
/ 23 октября 2018

%p здесь заполнитель для PID.
JVM автоматически заменит это идентификатором процесса запущенного в данный момент Java-процесса.

Опция сообщает JVM об удалении себя, когда происходит OutOfMemoryError.

...