DataStax Distribution of Apache Cassandra 3.11 start-up parameters
Switches to change the JVM settings at start up.
jvm.options
The location of the jvm.options file depends on the type of installation:| Package installations | /etc/dse/cassandra/jvm.options | 
| Tarball installations | installation_location/resources/cassandra/conf/jvm.options | 
cassandra.yaml
- The cassandra.yaml file is located in the installation_location/conf directory.
triggers
- The triggers file is located in the installation_location/conf directory.
You can run DataStax
          Distribution of Apache Cassandra™ (DDAC) with start-up parameters by
        adding them to the jvm.options file or at the command line
        when starting up a installation.
Tip: You can also add options such as maximum
          and minimum heap size to the jvm.options file to pass them to the
          Java virtual machine at start up, rather than setting them in the environment.
Usage
Add a start-up parameter to the jvm.options file as
        follows:
        
      -Dparameter_nameWhen starting up Tarball or Installer-No Services  installations, you can set parameters
        from the command
        line:
      installation_location/bin/cassandra [-Dparameter_name -Dparameter_name ...]
See the Startup examples section.
Start-up parameters
Use the -D option before the start-up parameter name on the command line or in the jvm.options file.
- -Dcassandra.auto_bootstrap=false
- falseon initial set-up of the cluster. The next time you start the cluster, you do not need to change the cassandra.yaml file on each node to revert to- true. default setting in the cassandra.yaml file.- Default: true. 
- -Dcassandra.available_processors=number_of_processors
- In a multi-instance deployment, each instance independently assumes that all CPU processors are available to it. Use this setting to specify a smaller set of processors.
- -Dcassandra.config=directory
- Sets the directory location of the cassandra.yaml file. The default location depends on the type of installation.
- -Dcassandra.consistent.rangemovement=true
- Set to true, makes bootstrapping behavior effective.
- -Dcassandra.disable_auth_caches_remote_configuration=true
- Disables authentication caches, for example the caches used for credentials, permissions, and roles. This will mean those config options can only be set (persistently) in cassandra.yaml and will require a restart for new values to take effect.
- -Dcassandra.expiration_date_overflow_policy=POLICY
- Set the policy for TTL (time to live) timestamps that exceed the maximum value
            supported by the storage engine, 2038-01-19T03:14:06+00:00. The database storage engine can only encode TTL timestamps throughJanuary 19 2038 03:14:07 UTCdue to the Year 2038 problem.- REJECT: Reject requests that contain an expiration timestamp later than- 2038-01-19T03:14:06+00:00.
- CAP: Allow requests and insert expiration timestamps later than- 2038-01-19T03:14:06+00:00as- 2038-01-19T03:14:06+00:00.
 Default: REJECT.
- -Dcassandra.force_default_indexing_page_size=true
- 
            Disable dynamic calculation of the page size used when indexing an entire partition (during initial index build/rebuild). If set to true, the page size will be fixed to the default of 10000 rows per page. 
- -Dcassandra.initial_token=token
- Use when Cassandra is not using
            virtual nodes (vnodes). Sets the initial partitioner token for a node the first time the
            node is started. (Default: disabled) Note: Vnodes automatically select tokens.
- -Dcassandra.join_ring=true | false
- When set to false, prevents the node from joining a ring on startup. (Default: true) You can add the node to the ring afterwards using nodetool join and a JMX call.
- -Dcassandra.load_ring_state=true | false
- When set to false, clears all gossip state for the node on restart. (Default: true)
- -Dcassandra.metricsReporterConfigFile=file
- Enables pluggable metrics reporter.
- -Dcassandra.native_transport_port=port
- Sets the port on which the CQL native transport listens for clients. (Default: 9042)
- -Dcassandra.native_transport_startup_delay_seconds=seconds
- Delays the startup of native transport server for the number of seconds. (Default: 0)
- -Dcassandra.partitioner=partitioner
- Sets the partitioner. (Default: org.apache.cassandra.dht.Murmur3Partitioner)
- -Dcassandra.partition_sstables_by_token_range=true | false
- Whether to disable JBOD SSTable partitioning by token range to multiple data_file_directories. (Default: true). Set to false only as directed by DataStax Support.
- -Dcassandra.printHeapHistogramOnOutOfMemoryError
- Set to falseto disable a heap histogram dump on an OutOfMemoryError.Default: false.
- -Dcassandra.range_tombstone_bound_check_chance
- Check for bad range tombstones on a percentage of queries. Valid values are 0.0 to 1.0. Default: 0.01
- -Dcassandra.replace_address=listen_address_of_dead_node|broadcast_address_of_dead_node
- To replace a node, restart a new node in its place specifying the listen_address or broadcast_address that the new
            node is assuming. The new node must be in the same state as before bootstrapping,
            without any data in its data directory.Note: The broadcast_address defaults to the listen_address except when the ring is using the Ec2MultiRegionSnitch.
- -Dcassandra.replayList=table
- Allows restoring specific tables from an archived commit log.
- -Dcassandra.ring_delay_ms=ms
- Defines the amount of time a node waits to hear from other nodes before formally joining the ring. (Default: 30000ms)
- -Dcassandra.rpc_port=port
- Sets the port for the Thrift RPC service, which is used for client connections. (Default: 9160).
- -Dcassandra.ssl_storage_port=port
- Sets the SSL port for encrypted communication. (Default: 7001)
- -Dcassandra.start_native_transport=true | false
- Enables or disables the native transport server. See start_native_transport in cassandra.yaml. (Default: true)
- -Dcassandra.start_rpc=true | false
- Enables or disables the Thrift RPC server. (Default: true)
- -Dcassandra.storage_port=port
- Sets the port for inter-node communication. (Default: 7000)
- -Ddse.timeAllowed.enabled.default
- The Solr timeAllowedoption is enforced by default to prevent long-running shard queries (such as complex facets and Boolean queries) from using system resources after they have timed out from the DSE Search coordinator.Note: DSE Search checks the timeout per segment instead of during document or terms iteration. The system propertyBy default for all queries, thesolr.timeAllowed.docsPerSamplehas been removed.timeAllowedvalue is the same as theinternode_messaging_options.client_request_timeout_secondssetting in dse.yaml. For more details, see Limiting queries by time.Attention: Using the SolrtimeAllowedparameter may cause a latency cost. If you find the cost for queries is too high in your environment, consider setting the-Ddse.timeAllowed.enabled.defaultproperty tofalseat DSE startup time. Or settimeAllowed.enableto false in the query.Default: true.
- -Dcassandra.triggers_dir=directory - Deprecated
- Sets the default location for the triggers JARs.
- -Dcassandra.write_survey=true
- Enables a tool for testing new compaction and compression strategies.
              write_surveyallows you to experiment with different strategies and benchmark write performance differences without affecting the production workload. See Testing compaction and compression.
Startup examples
        Starting a node without joining the ring:
      - Command line:
- 
            sudo bin/cassandra -Dcassandra.join_ring=false 
- jvm.options: -Dcassandra.join_ring=false 
        Replacing a dead node:
        
      - Command line:
            sudo bin/cassandra -Dcassandra.replace_address=10.91.176.160 
- jvm.options: -Dcassandra.replace_address=10.91.176.160 
Changing LDAP authentication retry interval from its default of 10 ms:
        
    - Command line:
- jvm.options: -Ddse.ldap.retry_interval.ms=20 
