Skip to content

Commit 399e2f3

Browse files
authored
Merge pull request #202 from Josh-Matsuoka/removeMaxMetaspace
[OPENJDK-131] Review container maxMetaspaceSize tuning
2 parents 00718e4 + 1a945c4 commit 399e2f3

File tree

2 files changed

+16
-12
lines changed

2 files changed

+16
-12
lines changed

modules/jvm/bash/artifacts/opt/jboss/container/java/jvm/java-default-options

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,10 +135,11 @@ gc_config() {
135135
local maxHeapFreeRatio=${GC_MAX_HEAP_FREE_RATIO:-20}
136136
local timeRatio=${GC_TIME_RATIO:-4}
137137
local adaptiveSizePolicyWeight=${GC_ADAPTIVE_SIZE_POLICY_WEIGHT:-90}
138-
local maxMetaspaceSize=${GC_MAX_METASPACE_SIZE:-100}
139138
local gcOptions="${GC_CONTAINER_OPTIONS:--XX:+UseParallelOldGC}"
140139
# for compat reasons we don't set a default value for metaspaceSize
141140
local metaspaceSize
141+
# We also don't set a default value for maxMetaspaceSize
142+
local maxMetaspaceSize=${GC_MAX_METASPACE_SIZE}
142143

143144
if [ -n "${GC_METASPACE_SIZE}" ]; then
144145
metaspaceSize=${GC_METASPACE_SIZE}
@@ -154,7 +155,10 @@ gc_config() {
154155
allOptions+="-XX:MaxHeapFreeRatio=${maxHeapFreeRatio} "
155156
allOptions+="-XX:GCTimeRatio=${timeRatio} "
156157
allOptions+="-XX:AdaptiveSizePolicyWeight=${adaptiveSizePolicyWeight} "
157-
allOptions+="-XX:MaxMetaspaceSize=${maxMetaspaceSize}m "
158+
# if no value was specified for maxMetaSpaceSize we should skip passing it entirely
159+
if [ -n "${maxMetaspaceSize}" ]; then
160+
allOptions+="-XX:MaxMetaspaceSize=${maxMetaspaceSize}m "
161+
fi
158162
if [ -n "${metaspaceSize}" ]; then
159163
allOptions+="-XX:MetaspaceSize=${metaspaceSize}m "
160164
fi

tests/features/java/gc.feature

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,36 +7,36 @@ Feature: Openshift OpenJDK GC tests
77

88
Scenario: Check default GC configuration
99
Given s2i build https://github.com/jboss-openshift/openshift-quickstarts from undertow-servlet
10-
Then s2i build log should contain Using MAVEN_OPTS -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m
11-
And container log should contain -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m
10+
Then s2i build log should contain Using MAVEN_OPTS -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90
11+
And container log should contain -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90
1212

1313
Scenario: Check GC_MIN_HEAP_FREE_RATIO GC configuration
1414
Given s2i build https://github.com/jboss-openshift/openshift-quickstarts from undertow-servlet
1515
| variable | value |
1616
| GC_MIN_HEAP_FREE_RATIO | 5 |
17-
Then s2i build log should contain Using MAVEN_OPTS -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m
18-
And container log should contain -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m
17+
Then s2i build log should contain Using MAVEN_OPTS -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90
18+
And container log should contain -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=5 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90
1919

2020
Scenario: Check GC_MAX_HEAP_FREE_RATIO GC configuration
2121
Given s2i build https://github.com/jboss-openshift/openshift-quickstarts from undertow-servlet
2222
| variable | value |
2323
| GC_MAX_HEAP_FREE_RATIO | 50 |
24-
Then s2i build log should contain Using MAVEN_OPTS -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=50 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m
25-
And container log should contain -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=50 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m
24+
Then s2i build log should contain Using MAVEN_OPTS -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=50 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90
25+
And container log should contain -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=50 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90
2626

2727
Scenario: Check GC_TIME_RATIO GC configuration
2828
Given s2i build https://github.com/jboss-openshift/openshift-quickstarts from undertow-servlet
2929
| variable | value |
3030
| GC_TIME_RATIO | 5 |
31-
Then s2i build log should contain Using MAVEN_OPTS -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=5 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m
32-
And container log should contain -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=5 -XX:AdaptiveSizePolicyWeight=90 -XX:MaxMetaspaceSize=100m
31+
Then s2i build log should contain Using MAVEN_OPTS -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=5 -XX:AdaptiveSizePolicyWeight=90
32+
And container log should contain -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=5 -XX:AdaptiveSizePolicyWeight=90
3333

3434
Scenario: Check GC_ADAPTIVE_SIZE_POLICY_WEIGHT GC configuration
3535
Given s2i build https://github.com/jboss-openshift/openshift-quickstarts from undertow-servlet
3636
| variable | value |
3737
| GC_ADAPTIVE_SIZE_POLICY_WEIGHT | 80 |
38-
Then s2i build log should contain Using MAVEN_OPTS -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=80 -XX:MaxMetaspaceSize=100m
39-
And container log should contain -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=80 -XX:MaxMetaspaceSize=100m
38+
Then s2i build log should contain Using MAVEN_OPTS -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=80
39+
And container log should contain -XX:+UseParallelOldGC -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20 -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=80
4040

4141
Scenario: Check GC_MAX_METASPACE_SIZE GC configuration
4242
Given s2i build https://github.com/jboss-openshift/openshift-quickstarts from undertow-servlet

0 commit comments

Comments
 (0)