diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2021-11-22 13:14:09 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-22 13:14:09 +0100 |
commit | 8e72772625e0487fb750e9cd9b80a57ed2362940 (patch) | |
tree | 14f97e673ad342b301d0f98708794126ab0ed410 | |
parent | edcfe39bef2e7083bebb49477c5d486ce2da5076 (diff) | |
parent | ad0ff6e41ce779c3b6ab9ca1771bf82d7b59f6f0 (diff) |
Merge pull request #20147 from vespa-engine/hmusum/use-parallelg-gc-as-default-in-hosted
Hmusum/use parallelg gc as default in hosted [run-systemtest]
3 files changed, 15 insertions, 16 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java index 81dd458570b..f69b08ff300 100755 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerCluster.java @@ -114,8 +114,8 @@ public abstract class ContainerCluster<CONTAINER extends Container> public static final String APPLICATION_STATUS_HANDLER_CLASS = "com.yahoo.container.handler.observability.ApplicationStatusHandler"; public static final String BINDINGS_OVERVIEW_HANDLER_CLASS = BindingsOverviewHandler.class.getName(); public static final String LOG_HANDLER_CLASS = com.yahoo.container.handler.LogHandler.class.getName(); - public static final String CMS = "-XX:+UseConcMarkSweepGC -XX:MaxTenuringThreshold=15 -XX:NewRatio=1"; public static final String G1GC = "-XX:+UseG1GC -XX:MaxTenuringThreshold=15"; + public static final String PARALLEL_GC = "-XX:+UseParallelGC -XX:MaxTenuringThreshold=15 -XX:NewRatio=1"; public static final String STATE_HANDLER_CLASS = "com.yahoo.container.jdisc.state.StateHandler"; public static final BindingPattern STATE_HANDLER_BINDING_1 = SystemBindingPattern.fromHttpPath(StateHandler.STATE_API_ROOT); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java index d65fbba6a5e..319f334ffc2 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/xml/ContainerModelBuilder.java @@ -8,7 +8,6 @@ import com.yahoo.config.application.api.ApplicationPackage; import com.yahoo.config.application.api.DeployLogger; import com.yahoo.config.application.api.DeploymentInstanceSpec; import com.yahoo.config.application.api.DeploymentSpec; -import com.yahoo.config.application.api.Endpoint; import com.yahoo.config.model.ConfigModelContext; import com.yahoo.config.model.ConfigModelContext.ApplicationType; import com.yahoo.config.model.api.ApplicationClusterEndpoint; @@ -661,15 +660,15 @@ public class ContainerModelBuilder extends ConfigModelBuilder<ContainerModel> { static boolean incompatibleGCOptions(String jvmargs) { Pattern gcAlgorithm = Pattern.compile("-XX:[-+]Use.+GC"); Pattern cmsArgs = Pattern.compile("-XX:[-+]*CMS"); - return (gcAlgorithm.matcher(jvmargs).find() ||cmsArgs.matcher(jvmargs).find()); + return (gcAlgorithm.matcher(jvmargs).find() || cmsArgs.matcher(jvmargs).find()); } - private static String buildJvmGCOptions(DeployState deployState, String jvmGCOPtions) { - String options = (jvmGCOPtions != null) - ? jvmGCOPtions + private static String buildJvmGCOptions(DeployState deployState, String jvmGCOptions) { + String options = (jvmGCOptions != null) + ? jvmGCOptions : deployState.getProperties().jvmGCOptions(); return (options == null || options.isEmpty()) - ? (deployState.isHosted() ? ContainerCluster.CMS : ContainerCluster.G1GC) + ? (deployState.isHosted() ? ContainerCluster.PARALLEL_GC : ContainerCluster.G1GC) : options; } @@ -685,7 +684,7 @@ public class ContainerModelBuilder extends ConfigModelBuilder<ContainerModel> { } else { jvmOptions = nodesElement.getAttribute(VespaDomBuilder.JVMARGS_ATTRIB_NAME); if (incompatibleGCOptions(jvmOptions)) { - deployLogger.logApplicationPackage(WARNING, "You need to move out your GC related options from 'jvmargs' to 'jvm-gc-options'"); + deployLogger.logApplicationPackage(WARNING, "You need to move out your GC-related options from deprecated 'jvmargs' to 'jvm-gc-options'"); cluster.setJvmGCOptions(ContainerCluster.G1GC); } } diff --git a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/JvmOptionsTest.java b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/JvmOptionsTest.java index 9fa86d38142..9fda6016969 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/container/xml/JvmOptionsTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/container/xml/JvmOptionsTest.java @@ -132,14 +132,14 @@ public class JvmOptionsTest extends ContainerModelBuilderTestBase { @Test public void requireThatJvmGCOptionsIsHonoured() throws IOException, SAXException { - verifyJvmGCOptions(false, null,null, ContainerCluster.G1GC); - verifyJvmGCOptions(true, null,null, ContainerCluster.CMS); - verifyJvmGCOptions(true, "",null, ContainerCluster.CMS); - verifyJvmGCOptions(false, "-XX:+UseConcMarkSweepGC",null, "-XX:+UseConcMarkSweepGC"); - verifyJvmGCOptions(true, "-XX:+UseConcMarkSweepGC",null, "-XX:+UseConcMarkSweepGC"); - verifyJvmGCOptions(false, null,"-XX:+UseG1GC", "-XX:+UseG1GC"); - verifyJvmGCOptions(false, "-XX:+UseConcMarkSweepGC","-XX:+UseG1GC", "-XX:+UseG1GC"); - verifyJvmGCOptions(false, null,"-XX:+UseConcMarkSweepGC", "-XX:+UseConcMarkSweepGC"); + verifyJvmGCOptions(false, null, null, ContainerCluster.G1GC); + verifyJvmGCOptions(true, null, null, ContainerCluster.PARALLEL_GC); + verifyJvmGCOptions(true, "", null, ContainerCluster.PARALLEL_GC); + verifyJvmGCOptions(false, "-XX:+UseG1GC", null, "-XX:+UseG1GC"); + verifyJvmGCOptions(true, "-XX:+UseG1GC", null, "-XX:+UseG1GC"); + verifyJvmGCOptions(false, null, "-XX:+UseG1GC", "-XX:+UseG1GC"); + verifyJvmGCOptions(false, "-XX:+UseParallelGC", "-XX:+UseG1GC", "-XX:+UseG1GC"); + verifyJvmGCOptions(false, null, "-XX:+UseParallelGC", "-XX:+UseParallelGC"); } } |