Set JVM system properties at startup

There are several ways to set JVM system properties for Hyper-Converged Database (HCD) at startup:

Command line

Use the system property (-D) switch on the command line.

Command line options are recommended for temporary configuration changes because they don’t persist through restart.

Configuration files

You can set JVM system properties in jvm-server.options, cassandra-env.sh, and jvm11-server.options.

The specific properties vary by configuration file. For example, garbage collection is set in jvm11-server.options.

Configuration files are recommended for permanent or long-term configuration changes because they are read automatically when HCD starts.

Environment variables and JVM defaults

Some properties can be set by the environment or fallback to built-in JVM defaults if not set elsewhere.

Because this documentation focuses on HCD-specific properties, it doesn’t cover all JVM properties. For information about a JVM property that isn’t directly related to HCD, see the documentation for your Java version.

Overrides for properties set multiple times

Make sure each property is set only once.

Generally, the JVM keeps the last read value for a given property. Therefore, if a property is set on the command line and in jvm-server.options file, only one value is retained. This can cause startup issues, such as failure to start or using an unexpected value.

When troubleshooting, you might need to check multiple sources to determine where a property is set:

  • Command line options: Make sure the same property isn’t set multiple times in one command.

  • Configuration files: Check all relevant configuration files.

  • System environment variables: If you cannot find the property elsewhere, it might be set by the environment. For more information about specific properties, see the documentation for your OS and Java runtime.

  • JVM defaults: If the property isn’t set elsewhere, the JVM might use a default value. For more information, see the documentation for your Java runtime.

Synopsis

Change the start up parameters using the following syntax:

  • Command line:

    hcd cassandra -D<parameter_name>=<value>
  • jvm-server.options file:

    -D<parameter_name>=<value>
  • cassandra-env.sh file:

    JVM_OPTS="$JVM_OPTS -D<parameter_name>=<value>"

Startup examples

Start a node without joining the ring
  • Command line:

    hcd cassandra -Dcassandra.join_ring=false
  • jvm-server.options file:

    -Dcassandra.join_ring=false
Replace a dead node
  • Command line:

    hcd cassandra -Dcassandra.replace_address=10.91.176.160
  • jvm-server.options file:

    -Dcassandra.replace_address=10.91.176.160

Was this helpful?

Give Feedback

How can we improve the documentation?

© Copyright IBM Corporation 2026 | Privacy policy | Terms of use Manage Privacy Choices

Apache, Apache Cassandra, Cassandra, Apache Tomcat, Tomcat, Apache Lucene, Apache Solr, Apache Hadoop, Hadoop, Apache Pulsar, Pulsar, Apache Spark, Spark, Apache TinkerPop, TinkerPop, Apache Kafka and Kafka are either registered trademarks or trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries. Kubernetes is the registered trademark of the Linux Foundation.

General Inquiries: Contact IBM