Skip to content

Commit 0c789ff

Browse files
authored
Docker: Disable HeapDumpOnOutOfMemoryError by default (#2708)
Signed-off-by: Viet Nguyen Duc <[email protected]>
1 parent 8da2459 commit 0c789ff

11 files changed

+81
-51
lines changed

Base/Dockerfile

+1-1
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ ENV SE_BIND_HOST="false" \
195195
SE_STRUCTURED_LOGS="false" \
196196
SE_ENABLE_TRACING="true" \
197197
SE_ENABLE_TLS="false" \
198-
SE_JAVA_OPTS_DEFAULT="-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/selenium/logs" \
198+
SE_JAVA_OPTS_DEFAULT="" \
199199
SE_JAVA_HEAP_DUMP="false" \
200200
SE_JAVA_HTTPCLIENT_VERSION="HTTP_1_1" \
201201
SE_JAVA_SSL_TRUST_STORE="/opt/selenium/secrets/server.jks" \

Distributor/start-selenium-grid-distributor.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -186,18 +186,21 @@ if [ -n "${SE_JAVA_OPTS_DEFAULT}" ]; then
186186
SE_JAVA_OPTS="${SE_JAVA_OPTS_DEFAULT} $SE_JAVA_OPTS"
187187
fi
188188

189-
if [ -n "${JAVA_OPTS:-$SE_JAVA_OPTS}" ]; then
190-
echo "Using JAVA_OPTS: ${JAVA_OPTS:-$SE_JAVA_OPTS}"
191-
fi
192-
193189
function handle_heap_dump() {
194190
/opt/bin/handle_heap_dump.sh /opt/selenium/logs
195191
}
196192
if [ "${SE_JAVA_HEAP_DUMP}" = "true" ]; then
193+
SE_JAVA_OPTS="$SE_JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/selenium/logs"
197194
trap handle_heap_dump ERR SIGTERM SIGINT
198195
fi
199196

200-
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
197+
if [ -n "${JAVA_OPTS}" ]; then
198+
SE_JAVA_OPTS="$SE_JAVA_OPTS ${JAVA_OPTS}"
199+
fi
200+
201+
echo "Using JAVA_OPTS: ${SE_JAVA_OPTS}"
202+
203+
java ${SE_JAVA_OPTS} \
201204
-jar /opt/selenium/selenium-server.jar \
202205
${EXTRA_LIBS} \
203206
distributor \

EventBus/start-selenium-grid-eventbus.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -116,18 +116,21 @@ if [ -n "${SE_JAVA_OPTS_DEFAULT}" ]; then
116116
SE_JAVA_OPTS="${SE_JAVA_OPTS_DEFAULT} $SE_JAVA_OPTS"
117117
fi
118118

119-
if [ -n "${JAVA_OPTS:-$SE_JAVA_OPTS}" ]; then
120-
echo "Using JAVA_OPTS: ${JAVA_OPTS:-$SE_JAVA_OPTS}"
121-
fi
122-
123119
function handle_heap_dump() {
124120
/opt/bin/handle_heap_dump.sh /opt/selenium/logs
125121
}
126122
if [ "${SE_JAVA_HEAP_DUMP}" = "true" ]; then
123+
SE_JAVA_OPTS="$SE_JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/selenium/logs"
127124
trap handle_heap_dump ERR SIGTERM SIGINT
128125
fi
129126

130-
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
127+
if [ -n "${JAVA_OPTS}" ]; then
128+
SE_JAVA_OPTS="$SE_JAVA_OPTS ${JAVA_OPTS}"
129+
fi
130+
131+
echo "Using JAVA_OPTS: ${SE_JAVA_OPTS}"
132+
133+
java ${SE_JAVA_OPTS} \
131134
-jar /opt/selenium/selenium-server.jar \
132135
${EXTRA_LIBS} event-bus \
133136
--bind-host ${SE_BIND_HOST} \

Hub/start-selenium-grid-hub.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -166,18 +166,21 @@ if [ -n "${SE_JAVA_OPTS_DEFAULT}" ]; then
166166
SE_JAVA_OPTS="${SE_JAVA_OPTS_DEFAULT} $SE_JAVA_OPTS"
167167
fi
168168

169-
if [ -n "${JAVA_OPTS:-$SE_JAVA_OPTS}" ]; then
170-
echo "Using JAVA_OPTS: ${JAVA_OPTS:-$SE_JAVA_OPTS}"
171-
fi
172-
173169
function handle_heap_dump() {
174170
/opt/bin/handle_heap_dump.sh /opt/selenium/logs
175171
}
176172
if [ "${SE_JAVA_HEAP_DUMP}" = "true" ]; then
173+
SE_JAVA_OPTS="$SE_JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/selenium/logs"
177174
trap handle_heap_dump ERR SIGTERM SIGINT
178175
fi
179176

180-
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
177+
if [ -n "${JAVA_OPTS}" ]; then
178+
SE_JAVA_OPTS="$SE_JAVA_OPTS ${JAVA_OPTS}"
179+
fi
180+
181+
echo "Using JAVA_OPTS: ${SE_JAVA_OPTS}"
182+
183+
java ${SE_JAVA_OPTS} \
181184
-jar /opt/selenium/selenium-server.jar \
182185
${EXTRA_LIBS} \
183186
hub \

NodeBase/start-selenium-node.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -181,18 +181,21 @@ if [ -n "${SE_JAVA_OPTS_DEFAULT}" ]; then
181181
SE_JAVA_OPTS="${SE_JAVA_OPTS_DEFAULT} $SE_JAVA_OPTS"
182182
fi
183183

184-
if [ -n "${JAVA_OPTS:-$SE_JAVA_OPTS}" ]; then
185-
echo "Using JAVA_OPTS: ${JAVA_OPTS:-$SE_JAVA_OPTS}"
186-
fi
187-
188184
function handle_heap_dump() {
189185
/opt/bin/handle_heap_dump.sh /opt/selenium/logs
190186
}
191187
if [ "${SE_JAVA_HEAP_DUMP}" = "true" ]; then
188+
SE_JAVA_OPTS="$SE_JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/selenium/logs"
192189
trap handle_heap_dump ERR SIGTERM SIGINT
193190
fi
194191

195-
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
192+
if [ -n "${JAVA_OPTS}" ]; then
193+
SE_JAVA_OPTS="$SE_JAVA_OPTS ${JAVA_OPTS}"
194+
fi
195+
196+
echo "Using JAVA_OPTS: ${SE_JAVA_OPTS}"
197+
198+
java ${SE_JAVA_OPTS} \
196199
${CHROME_DRIVER_PATH_PROPERTY} \
197200
${EDGE_DRIVER_PATH_PROPERTY} \
198201
${GECKO_DRIVER_PATH_PROPERTY} \

NodeDocker/start-selenium-grid-docker.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -133,18 +133,21 @@ if [ -n "${SE_JAVA_OPTS_DEFAULT}" ]; then
133133
SE_JAVA_OPTS="${SE_JAVA_OPTS_DEFAULT} $SE_JAVA_OPTS"
134134
fi
135135

136-
if [ -n "${JAVA_OPTS:-$SE_JAVA_OPTS}" ]; then
137-
echo "Using JAVA_OPTS: ${JAVA_OPTS:-$SE_JAVA_OPTS}"
138-
fi
139-
140136
function handle_heap_dump() {
141137
/opt/bin/handle_heap_dump.sh /opt/selenium/logs
142138
}
143139
if [ "${SE_JAVA_HEAP_DUMP}" = "true" ]; then
140+
SE_JAVA_OPTS="$SE_JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/selenium/logs"
144141
trap handle_heap_dump ERR SIGTERM SIGINT
145142
fi
146143

147-
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
144+
if [ -n "${JAVA_OPTS}" ]; then
145+
SE_JAVA_OPTS="$SE_JAVA_OPTS ${JAVA_OPTS}"
146+
fi
147+
148+
echo "Using JAVA_OPTS: ${SE_JAVA_OPTS}"
149+
150+
java ${SE_JAVA_OPTS} \
148151
-jar /opt/selenium/selenium-server.jar \
149152
${EXTRA_LIBS} node \
150153
--publish-events tcp://"${SE_EVENT_BUS_HOST}":${SE_EVENT_BUS_PUBLISH_PORT} \

Router/start-selenium-grid-router.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -167,18 +167,21 @@ if [ -n "${SE_JAVA_OPTS_DEFAULT}" ]; then
167167
SE_JAVA_OPTS="${SE_JAVA_OPTS_DEFAULT} $SE_JAVA_OPTS"
168168
fi
169169

170-
if [ -n "${JAVA_OPTS:-$SE_JAVA_OPTS}" ]; then
171-
echo "Using JAVA_OPTS: ${JAVA_OPTS:-$SE_JAVA_OPTS}"
172-
fi
173-
174170
function handle_heap_dump() {
175171
/opt/bin/handle_heap_dump.sh /opt/selenium/logs
176172
}
177173
if [ "${SE_JAVA_HEAP_DUMP}" = "true" ]; then
174+
SE_JAVA_OPTS="$SE_JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/selenium/logs"
178175
trap handle_heap_dump ERR SIGTERM SIGINT
179176
fi
180177

181-
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
178+
if [ -n "${JAVA_OPTS}" ]; then
179+
SE_JAVA_OPTS="$SE_JAVA_OPTS ${JAVA_OPTS}"
180+
fi
181+
182+
echo "Using JAVA_OPTS: ${SE_JAVA_OPTS}"
183+
184+
java ${SE_JAVA_OPTS} \
182185
-jar /opt/selenium/selenium-server.jar \
183186
${EXTRA_LIBS} router \
184187
--sessions-host "${SE_SESSIONS_MAP_HOST}" --sessions-port "${SE_SESSIONS_MAP_PORT}" \

SessionQueue/start-selenium-grid-session-queue.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -120,18 +120,21 @@ if [ -n "${SE_JAVA_OPTS_DEFAULT}" ]; then
120120
SE_JAVA_OPTS="${SE_JAVA_OPTS_DEFAULT} $SE_JAVA_OPTS"
121121
fi
122122

123-
if [ -n "${JAVA_OPTS:-$SE_JAVA_OPTS}" ]; then
124-
echo "Using JAVA_OPTS: ${JAVA_OPTS:-$SE_JAVA_OPTS}"
125-
fi
126-
127123
function handle_heap_dump() {
128124
/opt/bin/handle_heap_dump.sh /opt/selenium/logs
129125
}
130126
if [ "${SE_JAVA_HEAP_DUMP}" = "true" ]; then
127+
SE_JAVA_OPTS="$SE_JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/selenium/logs"
131128
trap handle_heap_dump ERR SIGTERM SIGINT
132129
fi
133130

134-
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
131+
if [ -n "${JAVA_OPTS}" ]; then
132+
SE_JAVA_OPTS="$SE_JAVA_OPTS ${JAVA_OPTS}"
133+
fi
134+
135+
echo "Using JAVA_OPTS: ${SE_JAVA_OPTS}"
136+
137+
java ${SE_JAVA_OPTS} \
135138
-jar /opt/selenium/selenium-server.jar \
136139
${EXTRA_LIBS} sessionqueue \
137140
--session-request-timeout ${SE_SESSION_REQUEST_TIMEOUT} \

Sessions/start-selenium-grid-sessions.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -155,18 +155,21 @@ if [ -n "${SE_JAVA_OPTS_DEFAULT}" ]; then
155155
SE_JAVA_OPTS="${SE_JAVA_OPTS_DEFAULT} $SE_JAVA_OPTS"
156156
fi
157157

158-
if [ -n "${JAVA_OPTS:-$SE_JAVA_OPTS}" ]; then
159-
echo "Using JAVA_OPTS: ${JAVA_OPTS:-$SE_JAVA_OPTS}"
160-
fi
161-
162158
function handle_heap_dump() {
163159
/opt/bin/handle_heap_dump.sh /opt/selenium/logs
164160
}
165161
if [ "${SE_JAVA_HEAP_DUMP}" = "true" ]; then
162+
SE_JAVA_OPTS="$SE_JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/selenium/logs"
166163
trap handle_heap_dump ERR SIGTERM SIGINT
167164
fi
168165

169-
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
166+
if [ -n "${JAVA_OPTS}" ]; then
167+
SE_JAVA_OPTS="$SE_JAVA_OPTS ${JAVA_OPTS}"
168+
fi
169+
170+
echo "Using JAVA_OPTS: ${SE_JAVA_OPTS}"
171+
172+
java ${SE_JAVA_OPTS} \
170173
-jar /opt/selenium/selenium-server.jar \
171174
${EXTRA_LIBS} sessions \
172175
--publish-events tcp://"${SE_EVENT_BUS_HOST}":${SE_EVENT_BUS_PUBLISH_PORT} \

Standalone/start-selenium-standalone.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -169,18 +169,21 @@ if [ -n "${SE_JAVA_OPTS_DEFAULT}" ]; then
169169
SE_JAVA_OPTS="${SE_JAVA_OPTS_DEFAULT} $SE_JAVA_OPTS"
170170
fi
171171

172-
if [ -n "${JAVA_OPTS:-$SE_JAVA_OPTS}" ]; then
173-
echo "Using JAVA_OPTS: ${JAVA_OPTS:-$SE_JAVA_OPTS}"
174-
fi
175-
176172
function handle_heap_dump() {
177173
/opt/bin/handle_heap_dump.sh /opt/selenium/logs
178174
}
179175
if [ "${SE_JAVA_HEAP_DUMP}" = "true" ]; then
176+
SE_JAVA_OPTS="$SE_JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/selenium/logs"
180177
trap handle_heap_dump ERR SIGTERM SIGINT
181178
fi
182179

183-
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
180+
if [ -n "${JAVA_OPTS}" ]; then
181+
SE_JAVA_OPTS="$SE_JAVA_OPTS ${JAVA_OPTS}"
182+
fi
183+
184+
echo "Using JAVA_OPTS: ${SE_JAVA_OPTS}"
185+
186+
java ${SE_JAVA_OPTS} \
184187
${CHROME_DRIVER_PATH_PROPERTY} \
185188
${EDGE_DRIVER_PATH_PROPERTY} \
186189
${GECKO_DRIVER_PATH_PROPERTY} \

StandaloneDocker/start-selenium-grid-docker.sh

+8-5
Original file line numberDiff line numberDiff line change
@@ -134,18 +134,21 @@ if [ -n "${SE_JAVA_OPTS_DEFAULT}" ]; then
134134
SE_JAVA_OPTS="${SE_JAVA_OPTS_DEFAULT} $SE_JAVA_OPTS"
135135
fi
136136

137-
if [ -n "${JAVA_OPTS:-$SE_JAVA_OPTS}" ]; then
138-
echo "Using JAVA_OPTS: ${JAVA_OPTS:-$SE_JAVA_OPTS}"
139-
fi
140-
141137
function handle_heap_dump() {
142138
/opt/bin/handle_heap_dump.sh /opt/selenium/logs
143139
}
144140
if [ "${SE_JAVA_HEAP_DUMP}" = "true" ]; then
141+
SE_JAVA_OPTS="$SE_JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/opt/selenium/logs"
145142
trap handle_heap_dump ERR SIGTERM SIGINT
146143
fi
147144

148-
java ${JAVA_OPTS:-$SE_JAVA_OPTS} \
145+
if [ -n "${JAVA_OPTS}" ]; then
146+
SE_JAVA_OPTS="$SE_JAVA_OPTS ${JAVA_OPTS}"
147+
fi
148+
149+
echo "Using JAVA_OPTS: ${SE_JAVA_OPTS}"
150+
151+
java ${SE_JAVA_OPTS} \
149152
-jar /opt/selenium/selenium-server.jar \
150153
${EXTRA_LIBS} standalone \
151154
--session-request-timeout ${SE_SESSION_REQUEST_TIMEOUT} \

0 commit comments

Comments
 (0)