Options Reference

CLI options

Usage: torodb-stampede [options]

Option
--application-name The application name used by driver to connect.
-W, --ask-for-password Force input of database user password.
--auth-mode The authentication mode:
  • disabled: Disable authentication mechanism. No authentication will be done
  • negotiate: The client will negotiate best mechanism to authenticate. With server version 3.0 or above, the driver will authenticate using the SCRAM-SHA-1 mechanism. Otherwise, the driver will authenticate using the Challenge Response mechanism
  • cr: Challenge Response authentication
  • x509: X.509 authentication
--auth-source The source database where the user is present.
--auth-user The user that will be authenticate
-b, --backend Specify the backend to use with default values.
--backend-database The database that will be used.
--backend-host The host or ip that will be used to connect.
--backend-port The port that will be used to connect.
--backend-ssl Enable SSL for backend connection.
--backend-user The user that will be used to connect.
--offHeapBuffer-enabled If set to true, it enabled the use of the off heap buffer system., if false it's disabled.
--offHeapBuffer-path Absolute path to locate the off heap buffer files.
--offHeapBuffer-rollcycle The Rolling cycle determines how often you create a new data file. The values can be: DAILY, HOURLY or MINUTELY.
--offHeapBuffer-maxFiles Max number of files to store for the off heap buffer.
-c, --conf Configuration file in YAML format.
--connection-pool-size Maximum number of connections to establish to the database. It must be higher or equal than 3.
--connection-pool-timeout The timeout in milliseconds after which retrieve a connection from the pool will fail.
--enable-metrics Enable metrics system.
--enable-ssl Enable SSL/TLS for replication layer.
-h, --help Print help and exit.
-hp, --help-param Print help for all available parameters and exit.
--log-level Level of log emitted (will overwrite default log4j2 configuration)
--log4j2-file Log4j2 configuration file.
--mongopass-file You can specify a file that use .pgpass syntax: <host>:<port>:<database>:<user>:<password> (can have multiple lines)
-p, --param Specify a configuration parameter using = syntax. Use --help-param to see all available parameters.
-l, --print-config Print the configuration in YAML format and exit.
-lp, --print-param Print value for a parameter present at (print an empty string if parameter is not present). Use --help-param to see syntax.
-lx, --print-xml-config Print the configuration in XML format and exit.
--repl-set-name The name of the MongoDB Replica Set where this instance will attach.
--ssl-allow-invalid-hostnames Disable hostname verification.
--ssl-ca-file The path to the Certification Authority in PEM format.
--ssl-fips-mode Enable FIPS 140-2 mode.
--ssl-key-password The password of the private key used to authenticate client.
--ssl-key-store-file The path to the Java Key Store file containing the certificate and private key used to authenticate client.
--ssl-key-store-password The password of the Java Key Store file containing and private key used to authenticate client.
--ssl-trust-store-file The path to the Java Key Store file containing the Certification Authority. If CAFile is specified it will be used instead.
--ssl-trust-store-password The password of the Java Key Store file containing the Certification Authority.
--sync-source The host and port (:) of the MongoDB node from ToroDB has to replicate.
--toropass-file You can specify a file that use .pgpass syntax: <host>:<port>:<database>:<user>:<password> (can have multiple lines)
--version Prints the version and exits.
-x, --xml-conf Configuration file in XML format.

Configuration file

Another way to configure the system is through configuration file or setting configuration parameters, using the CLI parameter -p. Next sections will provide a list of available parameters with the path that identify it in the configuration (as defined by JSON pointer specification).

ToroDB logging configuration

Parameter
/logging/log4j2File Overwrites Log4j2 configuration file with the given one.
/logging/level Overwrites the default level with the given one.
/logging/packages/ Overwrites the default level for the given package name.
/logging/file Overwrites the default value for the log output file path.
/metricsEnabled With value true enables the metrics system, and false disables it.

Off Heap Buffer configuration

Parameter
/offHeapBuffer/enabled If set to true, it enabled the use of the off heap buffer system., if false it's disabled.
/offHeapBuffer/path Absolute path to locate the off heap buffer files.
/offHeapBuffer/rollCycle The Rolling cycle determines how often you create a new data file. The values can be: DAILY, HOURLY or MINUTELY.
/offHeapBuffer/maxFiles Max number of files to store for the off heap buffer.

Replication configuration

Parameter
/replication/replSetName Overwrites the default value of the MongoDB Replica Set used for replication.
/replication/syncSource Overwrites the default connection address for the MongoDB Replica Set used for replication (host:port)
/replication/include/<string> A map of databases and/or collections and/or indexes to exclusively replicate.
  • Each entry represent a database name under which a list of collection names can be specified.
  • Each collection can contain a list of indexes each formed by one or more of those fields:
    • name= the index name
    • unique= true when index is unique, false otherwise
    • keys/= the name of the field indexed and the index direction or type
  • Character '*' can be used to denote "any-character" and character '\' to escape characters.
/replication/exclude/<string> A map of databases and/or collections and/or indexes to exclusively replicate.
  • Each entry represent a database name under which a list of collection names can be specified.
  • Each collection can contain a list of indexes each formed by one or more of those fields:
    • name= the index name
    • unique= true when index is unique, false otherwise
    • keys/= the name of the field indexed and the index direction or type
  • Character '*' can be used to denote "any-character" and character '\' to escape characters.

Replication SSL configuration

Parameter
/replication/ssl/enabled If false the SSL/TLS layer is disabled if true it is enabled.
/replication/ssl/allowInvalidHostnames If true hostname verification is disabled, if false it is enabled.
/replication/ssl/trustStoreFile The path to the Java Key Store file containing the Certification Authority. If CAFile is specified it will be used instead.
/replication/ssl/trustStorePassword The password of the Java Key Store file containing the Certification Authority.
/replication/ssl/keyStoreFile The path to the Java Key Store file containing the certificate and private key used to authenticate client.
/replication/ssl/keyStorePassword The password of the Java Key Store file containing and private key used to authenticate client.
/replication/ssl/keyPassword The password of the private key used to authenticate client.
/replication/ssl/fipsMode If true enable FIPS 140-2 mode.
/replication/ssl/caFile The path to the Certification Authority in PEM format.

Replication authentication configuration

Parameter
/replication/auth/mode Specifies the authentication mode, that can take one of the next values.
  • disabled: Disable authentication mechanism.
  • negotiate: The client will negotiate best mechanism to authenticate. With server version 3.0 or above, the driver will authenticate using the SCRAM-SHA-1 mechanism. Otherwise, the driver will authenticate using the Challenge Response mechanism.
  • cr: Challenge Response authentication
  • x509: X.509 authentication
  • scram_sha1: SCRAM-SHA-1 SASL authentication
/replication/auth/user User to be authenticated.
/replication/auth/source The source database where the user is present.
/replication/mongopassFile Path to the file with MongoDB access configuration in .pgpass syntax.

Replication configuration for shards

Parameter
/replication/shards//replSetName Overwrites the default value of the MongoDB Replica Set used for replication.
/replication/shards//syncSource Overwrites the default connection address for the MongoDB Replica Set used for replication (host:port). If this parameter is specified leave empty /replication/syncSource.

Replication SSL configuration for shards

Any parameter not specified here will default to the value specified in the configuration under /replication/ssl.

Parameter
/replication/shards//ssl/enabled If false the SSL/TLS layer is disabled if true it is enabled.
/replication/shards//ssl/allowInvalidHostnames If true hostname verification is disabled, if false it is enabled.
/replication/shards//ssl/trustStoreFile The path to the Java Key Store file containing the Certification Authority. If CAFile is specified it will be used instead.
/replication/shards//ssl/trustStorePassword The password of the Java Key Store file containing the Certification Authority.
/replication/shards//ssl/keyStoreFile The path to the Java Key Store file containing the certificate and private key used to authenticate client.
/replication/shards//ssl/keyStorePassword The password of the Java Key Store file containing and private key used to authenticate client.
/replication/shards//ssl/keyPassword The password of the private key used to authenticate client.
/replication/shards//ssl/fipsMode If true enable FIPS 140-2 mode.
/replication/shards//ssl/caFile The path to the Certification Authority in PEM format.

Replication authentication configuration for shards

Any parameter not specified here will default to the value specified in the configuration under /replication/auth.

Parameter
/replication/shards//auth/mode Specifies the authentication mode, that can take one of the next values.
  • disabled: Disable authentication mechanism.
  • negotiate: The client will negotiate best mechanism to authenticate. With server version 3.0 or above, the driver will authenticate using the SCRAM-SHA-1 mechanism. Otherwise, the driver will authenticate using the Challenge Response mechanism.
  • cr: Challenge Response authentication
  • x509: X.509 authentication
  • scram_sha1: SCRAM-SHA-1 SASL authentication
/replication/shards//auth/user User to be authenticated.
/replication/shards//auth/source The source database where the user is present.

PostgreSQL configuration

Parameter
/backend/postgres/host The host or ip that will be used to connect.
/backend/postgres/port The port that will be used to connect.
/backend/postgres/database The database that will be used.
/backend/postgres/user The user that will be used to connect.
/backend/postgres/toropassFile Path to the file with PostgreSQL access configuration in  .pgpass syntax.
/backend/postgres/applicationName The application name used by driver to connect.
/backend/postgres/ssl If true Enabled the SSL connection with PostgreSQL server, if false is disabled.

MySQL configuration

Parameter
/backend/mysql/host The host or ip that will be used to connect.
/backend/mysql/port The port that will be used to connect.
/backend/mysql/database The database that will be used.
/backend/mysql/user The user that will be used to connect.
/backend/mysql/toropassFile Path to the file with MySQL access configuration in  .pgpass syntax.
/backend/mysql/applicationName The application name used by driver to connect.
/backend/mysql/ssl If true Enabled the SSL connection with MySQL server, if false is disabled.

ToroDB Stampede pool configuration

Parameter
/backend/pool/connectionPoolTimeout The timeout in milliseconds after which retrieve a connection from the pool will fail.
/backend/pool/connectionPoolSize Maximum number of connections to establish to the database. It must be higher or equal than 3.