When migrating from an earlier version of the SAS Viya platform to a later version, the migration might fail because the Java Virtual Machine (JVM) cannot be created. As a result, a message similar to the following occurs:
/usr/lib/jvm/java-17-openjdk-17.0.7.0.7-3.el8.x86_64/bin/java -jar /opt/sas/viya/home/libexec/svi-indexer-service-3.14.5.jar INFO 2023-06-05
10:49:44.946 +0000 [sas-runjavasvc] - Launching /usr/lib/jvm/java-17-openjdk-17.0.7.0.7-3.el8.x86_64/bin/java --add-opens=java.base/java.lang=ALL-UNNAMED
-Dspring.cloud.consul.discovery.healthCheckCriticalTimeout=2h -XX:CICompilerCount=2 -Dspring.cloud.consul.discovery.instanceId=svi-indexer-10-254-179-222
-Dendpoints.enabled=false -Dendpoints.health.enabled=true -Dendpoints.metrics.enabled=true -Dserver.forward-headers-strategy=NATIVE -
XX:MaxHeapFreeRatio=40 -XX:MinHeapFreeRatio=15 -Dserver.tomcat.remoteip.internal-proxies=(fe80|fd[0-9a-fA-F]{2})(:{1,2}[0-9a-fA-F]{0,4}){0,7}(%[0-9a-zA-
Z]+)?$|::1|0:0:0:0:0:0:0:1|10\.\d{1,3}\.\d{1,3}\.\d{1,3}|192\.168\.\d{1,3}\.\d{1,3}|169\.254\.\d{1,3}\.\d{1,3}|127\.\d{1,3}\.\d{1,3}\.\d{1,3}|172\.1[6-9]
{1}\.\d{1,3}\.\d{1,3}|172\.2[0-9]{1}\.\d{1,3}\.\d{1,3}|172\.3[0-1]{1}\.\d{1,3}\.\d{1,3} -javaagent:/opt/sas/viya/home/libexec/filesystem-init-agent.jar -
javaagent:/opt/sas/viya/home/libexec/aspectjweaver.jar -
Djava.security.properties=/opt/sas/viya/config/etc/javaesntl/default/java17.fips.java.security.properties -
Djavax.net.ssl.keyStore=/opt/sas/viya/config/etc/SASSecurityCertificateFramework/private/sas.jks -Djavax.net.ssl.keyStorePassword=changeit -
Djavax.net.ssl.keyStoreType=jks -Djdk.nio.maxCachedBufferSize=256k -XX:MaxDirectMemorySize=64m -Dsun.security.krb5.msinterop.kstring=true -XX:NewSize=20m
-Dserver.tomcat.remoteip.remote-ip-header=X-Forwarded-For -Dsas.vault.pki.reuseValidCertificate=false -Djava.security.egd=file:/dev/urandom -
Dserver.ssl.ciphers=TLS_AES_128_GCM_SHA256,TLS_AES_256_GCM_SHA384,TLS_AES_128_CCM_SHA256,TLS_AES_128_CCM_8_SHA256,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 -
Dsas.security.network.web.enabled=true -Djava.io.tmpdir=/opt/sas/viya/config/tmp/sas-svi-indexer -
Djavax.net.ssl.trustStore=/opt/sas/viya/config/etc/SASSecurityCertificateFramework/cacerts/trustedcerts.jks -Djavax.net.ssl.trustStoreType=jks -
Djavax.net.ssl.trustStorePassword=changeit -Djavax.net.ssl.trustStoreType=jks -Dserver.ssl.use-server-cipher-suites-order=true -
Dspring.cloud.vault.enabled=false -Djavax.xml.XMLConstants.FEATURE_SECURE_PROCESSING=true -Xms60m -
Dlogging.level.org.apache.geode.internal.net.SocketCreator=ERROR -Dserver.port=8080 -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -
XX:+UseCMSInitiatingOccupancyOnly -DallowExceptionForInvalidEncodedData=false -Xmx8g -Xss512k -jar /opt/sas/viya/home/libexec/svi-indexer-service-
3.14.5.jar Unrecognized VM option 'UseConcMarkSweepGC' Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program
will exit.
Workaround
To circumvent this issue, add the following -XX:+IgnoreUnrecognizedVMOptions JVM option in order to allow the service to start:
config/svi-indexer/jvm/java_option_gc_upgrade=-XX:+IgnoreUnrecognizedVMOptions