ArangoDB Server Options
The startup options of the arangod
executable
Usage: arangod [<options>]
To list the commonly used startup options with a description of each option, run
the server executable in a command-line with the --help
(or -h
) option:
arangod --help
To list all available startup options and their descriptions, use:
arangod --help-all
You can specify the database directory for the server as a positional (unnamed) parameter:
arangod /path/to/datadir
You can also be explicit by using a named parameter:
arangod --database.directory /path/to/datadir
All other startup options need to be passed as named parameters, using two
hyphens (--
), followed by the option name, an equals sign (=
) or a space,
and the option value. The value needs to be wrapped in double quote marks ("
)
if the value contains whitespace characters. Extra whitespace around =
is
allowed:
arangod --database.directory = "/path with spaces/to/datadir"
See Configuration if you want to translate startup options set to configuration files and to learn more about startup options in general.
See
Fetch Current Configuration Options
if you want to query the arangod
server for the current settings at runtime.
General
--check-configuration
Type: boolean
Check the configuration and exit.
This is a command, no value needs to be specified. The process terminates after executing the command.
--config
Type: string
The configuration file or “none”.
--configuration
Type: string
The configuration file or “none”.
--console
Type: boolean
Start the server with a JavaScript emergency console.
This option can be specified without a value to enable it.
--daemon
Type: boolean
Start the server as a daemon (background process). Requires --pid-file to be set.
This option can be specified without a value to enable it.
Available on Linux and macOS only.
--default-language
Deprecated in: v3.10.0
Type: string
An ISO-639 language code. You can only set this option once, when initializing the database.
--default-language-check
Introduced in: v3.8.0
Type: boolean
Check if --icu-language
/ --default-language
matches the stored language.
This option can be specified without a value to enable it.
Default: true
--define
Type: string…
Define a value for a @key@
entry in the configuration file using the syntax "key=value"
.
--dump-dependencies
Type: boolean
Dump the dependency graph of the feature phases (internal) and exit.
This is a command, no value needs to be specified. The process terminates after executing the command.
--dump-options
Type: boolean
Dump all available startup options in JSON format and exit.
This is a command, no value needs to be specified. The process terminates after executing the command.
--fortune
Type: boolean
Show a fortune cookie on startup.
This option can be specified without a value to enable it.
--gid
Type: string
Switch to this group ID after reading configuration files.
--honor-nsswitch
Type: boolean
Allow hostname lookup configuration via /etc/nsswitch.conf if on Linux/glibc.
This option can be specified without a value to enable it.
--hund
Type: boolean
Make ArangoDB bark on startup.
This option can be specified without a value to enable it.
--icu-language
Introduced in: v3.9.1
Type: string
An ICU locale ID to set a language and optionally additional properties that affect string comparisons and sorting. You can only set this option once, when initializing the database.
--log
Deprecated in: v3.5.0
Type: string…
Set the topic-specific log level, using --log level
for the general topic or --log topic=level
for the specified topic (can be specified multiple times). Available log levels: fatal, error, warning, info, debug, trace.
Default: info
--pid-file
Type: string
The name of the process ID file to use if the server runs as a daemon.
Available on Linux and macOS only.
--supervisor
Type: boolean
Start the server in supervisor mode. Requires --pid-file to be set.
This option can be specified without a value to enable it.
--uid
Type: string
Switch to this user ID after reading the configuration files.
--use-splice-syscall
Introduced in: v3.9.4
Type: boolean
Use the splice() syscall for file copying (may not be supported on all filesystems).
This option can be specified without a value to enable it.
Default: true
Available on Linux only.
--version
Type: boolean
Print the version and other related information, then exit.
This is a command, no value needs to be specified. The process terminates after executing the command.
--version-json
Introduced in: v3.9.0
Type: boolean
Print the version and other related information in JSON format, then exit.
This is a command, no value needs to be specified. The process terminates after executing the command.
--working-directory
Type: string
The working directory in daemon mode.
Default: /var/tmp
Available on Linux and macOS only.
agency
--agency.activate
Type: boolean
Activate the Agency.
This option can be specified without a value to enable it.
Effective on Agents only.
--agency.compaction-keep-size
Type: uint64
Keep as many Agency log entries before compaction point.
Default: 50000
Effective on Agents only.
--agency.compaction-step-size
Type: uint64
The step size between state machine compactions.
Default: 1000
Effective on Agents only.
--agency.disaster-recovery-id
Type: string
Specify the ID for this agent. WARNING: This is a dangerous option, for disaster recover only!
Effective on Agents only.
--agency.election-timeout-max
Type: double
The maximum timeout before an Agent calls for a new election (in seconds).
Default: 5
Effective on Agents only.
--agency.election-timeout-min
Type: double
The minimum timeout before an Agent calls for a new election (in seconds).
Default: 1
Effective on Agents only.
--agency.endpoint
Type: string…
The Agency endpoints.
Effective on Agents only.
--agency.max-append-size
Type: uint64
The maximum size of appendEntries document (number of log entries).
Default: 250
Effective on Agents only.
--agency.my-address
Type: string
Which address to advertise to the outside.
Effective on Agents only.
--agency.pool-size
Deprecated in: v3.11.0
Type: uint64
The number of Agents in the pool.
Default: 1
Effective on Agents only.
--agency.size
Type: uint64
The number of Agents.
Default: 1
Effective on Agents only.
--agency.supervision
Type: boolean
Perform ArangoDB cluster supervision.
This option can be specified without a value to enable it.
Effective on Agents only.
--agency.supervision-delay-add-follower
Introduced in: v3.9.6, v3.10.2
Type: uint64
The delay in supervision, before an AddFollower job is executed (in seconds).
Effective on Agents only.
--agency.supervision-delay-failed-follower
Introduced in: v3.9.6, v3.10.2
Type: uint64
The delay in supervision, before a FailedFollower job is executed (in seconds).
Effective on Agents only.
--agency.supervision-failed-leader-adds-follower
Introduced in: v3.9.7, v3.10.2
Type: boolean
Flag indicating whether or not the FailedLeader job adds a new follower.
This option can be specified without a value to enable it.
Default: true
Effective on Agents only.
--agency.supervision-frequency
Type: double
The ArangoDB cluster supervision frequency (in seconds).
Default: 1
Effective on Agents only.
--agency.supervision-grace-period
Type: double
The supervision time after which a server is considered to have failed (in seconds).
Default: 10
Effective on Agents only.
--agency.supervision-ok-threshold
Type: double
The supervision time after which a server is considered to be bad (in seconds).
Default: 5
Effective on Agents only.
--agency.wait-for-sync
Type: boolean
Wait for hard disk syncs on every persistence call (required in production).
This option can be specified without a value to enable it.
Default: true
Effective on Agents only.
arangosearch
--arangosearch.columns-cache-limit
Introduced in: v3.9.5
Enterprise Edition
Type: uint64
The limit (in bytes) for ArangoSearch columns cache (0 = no caching).
--arangosearch.columns-cache-only-leader
Introduced in: v3.10.6
Enterprise Edition
Type: boolean
Cache ArangoSearch columns only for leader shards.
This option can be specified without a value to enable it.
--arangosearch.commit-threads
Introduced in: v3.7.5
Type: uint32
The upper limit to the allowed number of commit threads (0 = auto-detect).
--arangosearch.commit-threads-idle
Introduced in: v3.7.5
Type: uint32
The upper limit to the allowed number of idle threads to use for commit tasks (0 = auto-detect)
--arangosearch.consolidation-threads
Introduced in: v3.7.5
Type: uint32
The upper limit to the allowed number of consolidation threads (0 = auto-detect).
--arangosearch.consolidation-threads-idle
Introduced in: v3.7.5
Type: uint32
The upper limit to the allowed number of idle threads to use for consolidation tasks (0 = auto-detect).
--arangosearch.default-parallelism
Introduced in: v3.11.6
Type: uint32
Default parallelism for ArangoSearch queries
Default: 1
--arangosearch.execution-threads-limit
Introduced in: v3.11.6
Type: uint32
Max number of threads that could be used to process ArangoSearch indexes during SEARCH operation
--arangosearch.fail-queries-on-out-of-sync
Introduced in: v3.9.4
Type: boolean
Whether retrieval queries on out-of-sync View links and inverted indexes should fail.
This option can be specified without a value to enable it.
--arangosearch.skip-recovery
Introduced in: v3.9.4
Type: string…
Skip the data recovery for the specified View link or inverted index on startup. The value for this option needs to have the format ‘
--arangosearch.threads
Deprecated in: v3.7.5
Type: uint32
The exact number of threads to use for asynchronous tasks (0 = auto-detect).
--arangosearch.threads-limit
Deprecated in: v3.7.5
Type: uint32
The upper limit to the auto-detected number of threads to use for asynchronous tasks (0 = use default).
audit
--audit.hostname
Enterprise Edition
Type: string
The server name to be used in audit log messages. By default, the system hostname is used.
--audit.max-entry-length
Introduced in: v3.8.0, v3.7.9
Enterprise Edition
Type: uint32
The maximum length of a log entry (in bytes).
Default: 134217728
--audit.output
Enterprise Edition
Type: string…
Specifies the target(s) of the audit log.
--audit.queue
Introduced in: v3.8.0
Enterprise Edition
Type: boolean
Queue audit log messages before writing them out (can reduce latency).
This option can be specified without a value to enable it.
--audit.write-log-level
Introduced in: v3.9.0
Enterprise Edition
Type: boolean
Add the log level of the audit event (TRACE, INFO, DEBUG, WARNING, ERROR) to audit log messages.
This option can be specified without a value to enable it.
backup
--backup.api-enabled
Enterprise Edition
Type: string
Whether the Hot Backup API is enabled (true) or not (false), or only enabled for superuser JWT (jwt).
Default: true
--backup.files-per-batch
Introduced in: v3.8.8, v3.9.4
Enterprise Edition
Type: uint64
Define how many files rclone should process in one call when uploading or downloading Hot Backups.
Default: 100
Effective on DB-Servers and Single Servers only.
--backup.local-path-prefix
Enterprise Edition
Type: string
Restrict any backup target to the given path prefix.
Default: /
--backup.number-parallel-remote-copies
Introduced in: v3.11.4
Enterprise Edition
Type: uint32
The number of remote-to-remote copy operations to run in parallel when uploading/downloading Hot Backups (0 = use system-specific default of 100)
Effective on DB-Servers and Single Servers only.
cache
--cache.acceleration-factor-for-edge-compression
Introduced in: v3.11.2
Type: uint32
The acceleration factor for the LZ4 compression of in-memory edge cache entries.
Default: 1
Effective on DB-Servers and Single Servers only.
--cache.high-water-multiplier
Introduced in: v3.11.3
Type: double
The multiplier to be used for calculating the in-memory cache’s effective memory usage limit.
Default: 0.56
Effective on DB-Servers and Single Servers only.
--cache.ideal-lower-fill-ratio
Introduced in: v3.11.2
Type: double
The lower bound fill ratio value for a cache table.
Default: 0.04
Effective on DB-Servers and Single Servers only.
--cache.ideal-upper-fill-ratio
Introduced in: v3.11.2
Type: double
The upper bound fill ratio value for a cache table.
Default: 0.25
Effective on DB-Servers and Single Servers only.
--cache.max-spare-memory-usage
Introduced in: v3.11.3
Type: uint64
The maximum memory usage for spare tables in the in-memory cache.
Default: 67108864
Effective on DB-Servers and Single Servers only.
--cache.min-value-size-for-edge-compression
Introduced in: v3.11.2
Type: uint64
The size threshold (in bytes) from which on payloads in the edge index cache transparently get LZ4-compressed.
Default: 1073741824
Effective on DB-Servers and Single Servers only.
--cache.rebalancing-interval
Type: uint64
The time between cache rebalancing attempts (in microseconds). The minimum value is 500000 (0.5 seconds).
Default: 2000000
--cache.size
Type: uint64
The global size limit for all caches (in bytes).
Default: dynamic (e.g. 7733271552
)
cluster
--cluster.agency-endpoint
Type: string…
Agency endpoint(s) to connect to.
Effective on Coordinators and DB-Servers only.
--cluster.api-jwt-policy
Introduced in: v3.8.0
Type: string
Controls the access permissions required for accessing /_admin/cluster REST APIs (jwt-all = JWT required to access all operations, jwt-write = JWT required for POST/PUT/DELETE operations, jwt-compat = 3.7 compatibility mode)
Default: jwt-compat
Possible values: “jwt-all”, “jwt-compat”, “jwt-write”
Effective on Coordinators only.
--cluster.connectivity-check-interval
Introduced in: v3.11.4
Type: uint32
The interval (in seconds) in which cluster-internal connectivity checks are performed.
Default: 3600
Effective on Coordinators and DB-Servers only.
--cluster.create-waits-for-sync-replication
Type: boolean
Let the active Coordinator wait for all replicas to create collections.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and DB-Servers only.
--cluster.default-replication-factor
Introduced in: v3.6.0
Type: uint32
The default replication factor for non-system collections.
Effective on Coordinators only.
--cluster.failed-write-concern-status-code
Introduced in: v3.11.0
Type: uint32
The HTTP status code to send if a shard has not enough in-sync replicas to fulfill the write concern.
Default: 403
Possible values: 403, 503
Effective on DB-Servers only.
--cluster.force-one-shard
Introduced in: v3.6.0
Enterprise Edition
Type: boolean
Force the OneShard mode for all new collections.
This option can be specified without a value to enable it.
Effective on Coordinators only.
--cluster.index-create-timeout
Type: double
The amount of time (in seconds) the Coordinator waits for an index to be created before giving up.
Default: 259200
Effective on Coordinators only.
--cluster.max-number-of-move-shards
Introduced in: v3.9.0
Type: uint32
The number of shards to be moved per rebalance operation. If set to 0, no shards are moved.
Default: 10
Effective on Coordinators only.
--cluster.max-number-of-shards
Introduced in: v3.5.1
Type: uint32
The maximum number of shards that can be configured when creating new collections (0 = unrestricted).
Default: 1000
Effective on Coordinators only.
--cluster.max-replication-factor
Introduced in: v3.6.0
Type: uint32
The maximum replication factor for new collections (0 = unrestricted).
Default: 10
Effective on Coordinators only.
--cluster.min-replication-factor
Introduced in: v3.6.0
Type: uint32
The minimum replication factor for new collections.
Default: 1
Effective on Coordinators only.
--cluster.my-address
Type: string
This server’s endpoint for cluster-internal communication.
Effective on Coordinators and DB-Servers only.
--cluster.my-advertised-endpoint
Type: string
This server’s advertised endpoint for external communication (optional, e.g. aan external IP address or load balancer).
Effective on Coordinators and DB-Servers only.
--cluster.my-role
Type: string
This server’s role.
--cluster.require-persisted-id
Type: boolean
If set to true
, then the instance only starts if a UUID file is found in the database directory on startup. This ensures that the instance is started using an already existing database directory and not a new one. For the first start, you must either create the UUID file manually or set the option to false
for the initial startup.
This option can be specified without a value to enable it.
--cluster.resign-leadership-on-shutdown
Type: boolean
Create a resign leader ship job for this DB-Server on shutdown.
This option can be specified without a value to enable it.
Effective on DB-Servers only.
--cluster.shard-synchronization-attempt-timeout
Introduced in: v3.9.2
Type: double
The timeout (in seconds) for every shard synchronization attempt. Running into the timeout does not lead to a synchronization failure, but continues the synchronization shortly after. Setting a timeout can help to split the replication of large shards into smaller chunks and release snapshots on the leader earlier.
Default: 1200
--cluster.synchronous-replication-timeout-factor
Type: double
All synchronous replication timeouts are multiplied by this factor.
Default: 1
--cluster.synchronous-replication-timeout-maximum
Introduced in: v3.8.0
Type: double
All synchronous replication timeouts are at most this value (in seconds).
Default: 3600
--cluster.synchronous-replication-timeout-minimum
Introduced in: v3.5.1
Type: double
All synchronous replication timeouts are at least this value (in seconds).
Default: 900
--cluster.synchronous-replication-timeout-per-4k
Type: double
All synchronous replication timeouts are increased by this amount per 4096 bytes (in seconds).
Default: 0.1
--cluster.system-replication-factor
Type: uint32
The default replication factor for system collections.
Default: 2
Effective on Coordinators only.
--cluster.upgrade
Introduced in: v3.6.0
Type: string
Perform a cluster upgrade if necessary (auto = perform an upgrade and shut down only if --database.auto-upgrade true
is set, disable = ignore --database.auto-upgrade
and never perform an upgrade, force = ignore --database.auto-upgrade
and always perform an upgrade and shut down, online = always perform an upgrade but don’t shut down).
Default: auto
Possible values: “auto”, “disable”, “force”, “online”
Effective on Coordinators only.
--cluster.write-concern
Introduced in: v3.6.0
Type: uint32
The global default write concern used for writes to new collections.
Default: 1
Effective on Coordinators only.
database
--database.auto-upgrade
Type: boolean
Perform a database upgrade if necessary.
This option can be specified without a value to enable it.
--database.check-version
Type: boolean
Check the version of the database and exit.
This is a command, no value needs to be specified. The process terminates after executing the command.
--database.directory
Type: string
The path to the database directory.
--database.extended-names
Introduced in: v3.9.0
Experimental
Type: boolean
Allow most UTF-8 characters in the names of databases, collections, Views, and indexes. Once in use, this option cannot be turned off again.
This option can be specified without a value to enable it.
--database.ignore-datafile-errors
Type: boolean
Load collections even if datafiles may contain errors.
This option can be specified without a value to enable it.
--database.init-database
Type: boolean
Initialize an empty database.
This is a command, no value needs to be specified. The process terminates after executing the command.
--database.io-heartbeat
Introduced in: v3.8.7, v3.9.2
Type: boolean
Perform I/O heartbeat to test the underlying volume.
This option can be specified without a value to enable it.
Default: true
--database.max-databases
Introduced in: v3.11.2
Type: uint64
The maximum number of databases that can exist in parallel.
Default: 18446744073709552000
--database.password
Type: string
The initial password of the root user.
--database.required-directory-state
Type: string
The required state of the database directory at startup (non-existing: the database directory must not exist, existing: thedatabase directory must exist, empty: the database directory must exist but be empty, populated: the database directory must exist and contain specific files already, any: any state is allowed)
Default: any
Possible values: “any”, “empty”, “existing”, “non-existing”, “populated”
--database.restore-admin
Type: boolean
Reset the admin users and set a new password.
This is a command, no value needs to be specified. The process terminates after executing the command.
--database.upgrade-check
Type: boolean
Skip the database upgrade if set to false.
This option can be specified without a value to enable it.
Default: true
--database.wait-for-sync
Type: boolean
The default waitForSync behavior. Can be overwritten when creating a collection.
This option can be specified without a value to enable it.
encryption
--encryption.key-generator
Enterprise Edition
Type: string
A program providing the encryption key on stdout. If set, encryption at rest is enabled.
--encryption.keyfile
Enterprise Edition
Type: string
The path to the file that contains the encryption key. Must contain 32 bytes of data. If set, encryption at rest is enabled.
foxx
--foxx.allow-install-from-remote
Introduced in: v3.8.5
Type: boolean
Allow installing Foxx apps from remote URLs other than GitHub.
This option can be specified without a value to enable it.
Effective on Coordinators and Single Servers only.
--foxx.api
Introduced in: v3.5.0
Type: boolean
Whether to enable the Foxx management REST APIs.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and Single Servers only.
--foxx.enable
Introduced in: v3.10.5
Type: boolean
Enable Foxx.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and Single Servers only.
--foxx.force-update-on-startup
Introduced in: v3.6.10, v3.7.6
Type: boolean
Ensure that all Foxx services are synchronized before completing the startup sequence.
This option can be specified without a value to enable it.
Effective on Coordinators and Single Servers only.
--foxx.queues
Type: boolean
Enable or disable Foxx queues.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and Single Servers only.
--foxx.queues-poll-interval
Type: double
The poll interval for the Foxx queue manager (in seconds)
Default: 1
Effective on Coordinators and Single Servers only.
--foxx.store
Introduced in: v3.5.0
Type: boolean
Whether to enable the Foxx store in the web interface.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and Single Servers only.
http
--http.allow-method-override
Deprecated in: v3.8.0
Type: boolean
Allow HTTP method override using special headers.
This option can be specified without a value to enable it.
--http.hide-product-header
Deprecated in: v3.8.0
Type: boolean
Whether to omit the Server: ArangoDB
header in HTTP responses.
This option can be specified without a value to enable it.
--http.keep-alive-timeout
Type: double
The keep-alive timeout for HTTP connections (in seconds).
Default: 300
--http.permanently-redirect-root
Introduced in: v3.7.12
Type: boolean
Whether to use a permanent or temporary redirect.
This option can be specified without a value to enable it.
Default: true
--http.redirect-root-to
Introduced in: v3.7.12
Type: string
Redirect of the root URL.
Default: /_admin/aardvark/index.html
--http.return-queue-time-header
Introduced in: v3.9.0
Type: boolean
Whether to return the x-arango-queue-time-seconds
header in all responses.
This option can be specified without a value to enable it.
Default: true
--http.trusted-origin
Type: string…
The trusted origin URLs for CORS requests with credentials.
javascript
--javascript.allow-admin-execute
Type: boolean
For testing purposes, allow /_admin/execute
. Never enable this option in production!
This option can be specified without a value to enable it.
Effective on Coordinators and Single Servers only.
--javascript.allow-external-process-control
Introduced in: v3.5.0
Type: boolean
Allow the execution and control of external processes from within JavaScript actions.
This option can be specified without a value to enable it.
Effective on Coordinators and Single Servers only.
--javascript.allow-port-testing
Introduced in: v3.5.0
Type: boolean
Allow the testing of ports from within JavaScript actions.
This option can be specified without a value to enable it.
Effective on Coordinators and Single Servers only.
--javascript.app-path
Type: string
The directory for Foxx applications.
Default: ./js/apps
Effective on Coordinators and Single Servers only.
--javascript.copy-installation
Type: boolean
Copy the contents of javascript.startup-directory
on first start.
This option can be specified without a value to enable it.
Effective on Coordinators and Single Servers only.
--javascript.enabled
Type: boolean
Enable the V8 JavaScript engine.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and Single Servers only.
--javascript.endpoints-allowlist
Introduced in: v3.5.0
Type: string…
Endpoints that can be connected to via the @arangodb/request
module in JavaScript actions.
Effective on Coordinators and Single Servers only.
--javascript.endpoints-denylist
Introduced in: v3.5.0
Type: string…
Endpoints that cannot be connected to via the @arangodb/request
module in JavaScript actions (if not in the allowlist).
Effective on Coordinators and Single Servers only.
--javascript.environment-variables-allowlist
Introduced in: v3.5.0
Type: string…
Environment variables that are accessible in JavaScript.
Effective on Coordinators and Single Servers only.
--javascript.environment-variables-denylist
Introduced in: v3.5.0
Type: string…
Environment variables that are inaccessible in JavaScript (if not in the allowlist).
Effective on Coordinators and Single Servers only.
--javascript.files-allowlist
Introduced in: v3.5.0
Type: string…
Filesystem paths that are accessible from within JavaScript actions.
Effective on Coordinators and Single Servers only.
--javascript.gc-frequency
Type: double
Time-based garbage collection frequency for JavaScript objects (each x seconds).
Default: 60
Effective on Coordinators and Single Servers only.
--javascript.gc-interval
Type: uint64
Request-based garbage collection interval for JavaScript objects (each x requests).
Default: 2000
Effective on Coordinators and Single Servers only.
--javascript.harden
Introduced in: v3.5.0
Type: boolean
Disable access to JavaScript functions in the internal module: getPid() and logLevel().
This option can be specified without a value to enable it.
Effective on Coordinators and Single Servers only.
--javascript.module-directory
Type: string…
Additional paths containing JavaScript modules.
Default: ./enterprise/js
Effective on Coordinators and Single Servers only.
--javascript.script
Type: string…
Run the script and exit.
--javascript.script-parameter
Type: string…
Script parameter.
--javascript.startup-directory
Type: string
A path to the directory containing the JavaScript startup scripts.
Default: ./js
Effective on Coordinators and Single Servers only.
--javascript.startup-options-allowlist
Introduced in: v3.5.0
Type: string…
Startup options whose names match this regular expression are allowed and exposed to JavaScript.
Effective on Coordinators and Single Servers only.
--javascript.startup-options-denylist
Introduced in: v3.5.0
Type: string…
Startup options whose names match this regular expression are not exposed (if not in the allowlist) to JavaScript actions.
Effective on Coordinators and Single Servers only.
--javascript.tasks
Introduced in: v3.8.0
Type: boolean
Enable JavaScript tasks.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and Single Servers only.
--javascript.transactions
Introduced in: v3.8.0
Type: boolean
Enable JavaScript transactions.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and Single Servers only.
--javascript.user-defined-functions
Introduced in: v3.10.4
Type: boolean
Enable JavaScript user-defined functions (UDFs) in AQL queries.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and Single Servers only.
--javascript.v8-contexts
Type: uint64
The maximum number of V8 contexts that are created for executing JavaScript actions.
Effective on Coordinators and Single Servers only.
--javascript.v8-contexts-max-age
Type: double
The maximum age for each V8 context (in seconds) before it is disposed.
Default: 60
Effective on Coordinators and Single Servers only.
--javascript.v8-contexts-max-invocations
Type: uint64
The maximum number of invocations for each V8 context before it is disposed (0 = unlimited).
Effective on Coordinators and Single Servers only.
--javascript.v8-contexts-minimum
Type: uint64
The minimum number of V8 contexts to keep available for executing JavaScript actions.
Effective on Coordinators and Single Servers only.
--javascript.v8-max-heap
Type: uint64
The maximal heap size (in MiB).
Default: 3072
--javascript.v8-options
Type: string…
Options to pass to V8.
ldap
--ldap.allow-offline
Enterprise Edition
Type: boolean
If a refresh attempt fails to connect to the LDAP server, continue with the cached authentication data.
This option can be specified without a value to enable it.
--ldap.async-connect
Enterprise Edition
Type: boolean
Whether the connection to the LDAP library is done asynchronously.
This option can be specified without a value to enable it.
--ldap.basedn
Enterprise Edition
Type: string
LDAP basedn. Example: “dc=example,dc=com”
--ldap.binddn
Enterprise Edition
Type: string
LDAP binddn. Example: “cn=admin,dc=example,dc=com”
--ldap.bindpasswd
Enterprise Edition
Type: string
LDAP bindpassword. Example: “admin”
--ldap.debug
Enterprise Edition
Type: boolean
Turn on the internal OpenLDAP library output (warning: prints to stdout).
This option can be specified without a value to enable it.
--ldap.enabled
Enterprise Edition
Type: boolean
Enable LDAP.
This option can be specified without a value to enable it.
--ldap.network-timeout
Enterprise Edition
Type: double
Timeout value (in seconds) after which network operations following the initial connection return in case of no activity (0 = default timeout).
--ldap.port
Enterprise Edition
Type: uint16
The port to use.
Default: 389
--ldap.prefix
Enterprise Edition
Type: string
LDAP prefix. Example: “uid= xor dn= xor cn=”
--ldap.referrals
Enterprise Edition
Type: boolean
Whether the LDAP library should implicitly chase referrals.
This option can be specified without a value to enable it.
--ldap.refresh-rate
Enterprise Edition
Type: double
Refresh user settings after this time (in seconds).
Default: 300
--ldap.responsible-for
Introduced in: v3.7.11
Enterprise Edition
Type: string
A file of usernames this provider is responsible for. If empty, it is responsible for all users.
--ldap.restart
Enterprise Edition
Type: boolean
Whether the LDAP library should implicitly restart connections.
This option can be specified without a value to enable it.
--ldap.retries
Enterprise Edition
Type: uint32
The number of tries to attempt connecting to the LDAP server. Setting it to values greater than 1 retries connecting in case the LDAP server is unavailable or denies the connection.
Default: 1
--ldap.roles-attribute-name
Enterprise Edition
Type: string
LDAP attributename where the roles are located.
--ldap.roles-exclude
Enterprise Edition
Type: string
Regular expression to exclude groups. Leave empty to exclude none.
--ldap.roles-include
Enterprise Edition
Type: string
Regular expression to include groups. Leave empty to include all.
--ldap.roles-search
Enterprise Edition
Type: string
LDAP search for roles; ‘{USER}’ is replaced by the ‘dn’ of the user.
--ldap.roles-transformation
Enterprise Edition
Type: string…
Regular expression to normalizer role name. Example: ‘/^ (.[^ ]])*/$2/’
--ldap.search-attribute
Enterprise Edition
Type: string
LDAP search attribute: Example: “uid”
Default: uid
--ldap.search-filter
Enterprise Edition
Type: string
LDAP search filter. Example: “(objectClass=simpleSecurityObject)”
Default: objectClass=*
--ldap.search-scope
Enterprise Edition
Type: string
LDAP search scope, one of: base, one, sub
Default: sub
--ldap.serialize-timeout
Enterprise Edition
Type: double
Maximum amount of time (in seconds) to wait for the serialization mutex.
Default: 5
--ldap.serialized
Enterprise Edition
Type: boolean
Whether calls into the LDAP library should be serialized. You can use this option to work around thread-unsafe LDAP library functionality.
This option can be specified without a value to enable it.
--ldap.server
Enterprise Edition
Type: string
The server to use.
--ldap.suffix
Enterprise Edition
Type: string
LDAP suffix. Example: “,dc=example,dc=com”
--ldap.superuser-role
Enterprise Edition
Type: string
Role mapping to the super-users.
--ldap.timeout
Enterprise Edition
Type: double
Timeout value (in seconds) for synchronous LDAP API calls (0 = default timeout).
--ldap.tls
Enterprise Edition
Type: boolean
Enable TLS.
This option can be specified without a value to enable it.
--ldap.tls-cacert-dir
Enterprise Edition
Type: string
LDAP TLS CA certificate directory.
--ldap.tls-cacert-file
Enterprise Edition
Type: string
LDAP TLS CA certificate file.
--ldap.tls-cert-check-strategy
Enterprise Edition
Type: string
LDAP TLS certificate check strategy, one of: never, hard, demand, allow, try
Default: hard
--ldap.tls-version
Enterprise Edition
Type: string
LDAP TLS version, one of: 1.0, 1.1, 1.2
Default: 1.2
--ldap.url
Enterprise Edition
Type: string
The LDAP URL. Example: ldap://example.com:389/dc=example,dc=com?uid?sub
ldap2
--ldap2.allow-offline
Enterprise Edition
Type: boolean
If a refresh attempt fails to connect to the LDAP server, continue with the cached authentication data.
This option can be specified without a value to enable it.
--ldap2.async-connect
Enterprise Edition
Type: boolean
Whether the connection to the LDAP library is done asynchronously.
This option can be specified without a value to enable it.
--ldap2.basedn
Enterprise Edition
Type: string
LDAP basedn. Example: “dc=example,dc=com”
--ldap2.binddn
Enterprise Edition
Type: string
LDAP binddn. Example: “cn=admin,dc=example,dc=com”
--ldap2.bindpasswd
Enterprise Edition
Type: string
LDAP bindpassword. Example: “admin”
--ldap2.debug
Enterprise Edition
Type: boolean
Turn on the internal OpenLDAP library output (warning: prints to stdout).
This option can be specified without a value to enable it.
--ldap2.enabled
Enterprise Edition
Type: boolean
Enable LDAP.
This option can be specified without a value to enable it.
--ldap2.network-timeout
Enterprise Edition
Type: double
Timeout value (in seconds) after which network operations following the initial connection return in case of no activity (0 = default timeout).
--ldap2.port
Enterprise Edition
Type: uint16
The port to use.
Default: 389
--ldap2.prefix
Enterprise Edition
Type: string
LDAP prefix. Example: “uid= xor dn= xor cn=”
--ldap2.referrals
Enterprise Edition
Type: boolean
Whether the LDAP library should implicitly chase referrals.
This option can be specified without a value to enable it.
--ldap2.refresh-rate
Enterprise Edition
Type: double
Refresh user settings after this time (in seconds).
Default: 300
--ldap2.responsible-for
Introduced in: v3.7.11
Enterprise Edition
Type: string
A file of usernames this provider is responsible for. If empty, it is responsible for all users.
--ldap2.restart
Enterprise Edition
Type: boolean
Whether the LDAP library should implicitly restart connections.
This option can be specified without a value to enable it.
--ldap2.retries
Enterprise Edition
Type: uint32
The number of tries to attempt connecting to the LDAP server. Setting it to values greater than 1 retries connecting in case the LDAP server is unavailable or denies the connection.
Default: 1
--ldap2.roles-attribute-name
Enterprise Edition
Type: string
LDAP attributename where the roles are located.
--ldap2.roles-exclude
Enterprise Edition
Type: string
Regular expression to exclude groups. Leave empty to exclude none.
--ldap2.roles-include
Enterprise Edition
Type: string
Regular expression to include groups. Leave empty to include all.
--ldap2.roles-search
Enterprise Edition
Type: string
LDAP search for roles; ‘{USER}’ is replaced by the ‘dn’ of the user.
--ldap2.roles-transformation
Enterprise Edition
Type: string…
Regular expression to normalizer role name. Example: ‘/^ (.[^ ]])*/$2/’
--ldap2.search-attribute
Enterprise Edition
Type: string
LDAP search attribute: Example: “uid”
Default: uid
--ldap2.search-filter
Enterprise Edition
Type: string
LDAP search filter. Example: “(objectClass=simpleSecurityObject)”
Default: objectClass=*
--ldap2.search-scope
Enterprise Edition
Type: string
LDAP search scope, one of: base, one, sub
Default: sub
--ldap2.serialize-timeout
Enterprise Edition
Type: double
Maximum amount of time (in seconds) to wait for the serialization mutex.
Default: 5
--ldap2.serialized
Enterprise Edition
Type: boolean
Whether calls into the LDAP library should be serialized. You can use this option to work around thread-unsafe LDAP library functionality.
This option can be specified without a value to enable it.
--ldap2.server
Enterprise Edition
Type: string
The server to use.
--ldap2.suffix
Enterprise Edition
Type: string
LDAP suffix. Example: “,dc=example,dc=com”
--ldap2.superuser-role
Enterprise Edition
Type: string
Role mapping to the super-users.
--ldap2.timeout
Enterprise Edition
Type: double
Timeout value (in seconds) for synchronous LDAP API calls (0 = default timeout).
--ldap2.tls
Enterprise Edition
Type: boolean
Enable TLS.
This option can be specified without a value to enable it.
--ldap2.tls-cacert-dir
Enterprise Edition
Type: string
LDAP TLS CA certificate directory.
--ldap2.tls-cacert-file
Enterprise Edition
Type: string
LDAP TLS CA certificate file.
--ldap2.tls-cert-check-strategy
Enterprise Edition
Type: string
LDAP TLS certificate check strategy, one of: never, hard, demand, allow, try
Default: hard
--ldap2.tls-version
Enterprise Edition
Type: string
LDAP TLS version, one of: 1.0, 1.1, 1.2
Default: 1.2
--ldap2.url
Enterprise Edition
Type: string
The LDAP URL. Example: ldap://example.com:389/dc=example,dc=com?uid?sub
log
--log.api-enabled
Introduced in: v3.4.11, v3.5.6, v3.6.5
Type: string
Whether the log API is enabled (true) or not (false), or only enabled for superuser JWT (jwt).
Default: true
--log.color
Type: boolean
Use colors for TTY logging.
This option can be specified without a value to enable it.
Default: dynamic (e.g. true
)
--log.escape-control-chars
Introduced in: v3.9.0
Type: boolean
Escape control characters in log messages.
This option can be specified without a value to enable it.
Default: true
--log.escape-unicode-chars
Introduced in: v3.9.0
Type: boolean
Escape Unicode characters in log messages.
This option can be specified without a value to enable it.
--log.file
Type: string
shortcut for ‘--log.output file://
--log.file-group
Introduced in: v3.4.5
Type: string
group to use for new log file, user must be a member of this group
--log.file-mode
Introduced in: v3.4.5
Type: string
mode to use for new log file, umask will be applied as well
--log.force-direct
Type: boolean
Do not start a separate thread for logging.
This option can be specified without a value to enable it.
--log.foreground-tty
Type: boolean
Also log to TTY if backgrounded.
This option can be specified without a value to enable it.
--log.hostname
Introduced in: v3.8.0
Type: string
The hostname to use in log message. Leave empty for none, use “auto” to automatically determine a hostname.
--log.ids
Introduced in: v3.5.0
Type: boolean
Log unique message IDs.
This option can be specified without a value to enable it.
Default: true
--log.in-memory
Introduced in: v3.8.0
Type: boolean
Use an in-memory log appender which can be queried via the API and web interface.
This option can be specified without a value to enable it.
Default: true
--log.in-memory-level
Introduced in: v3.7.9
Type: string
Use an in-memory log appender only for this log level and higher.
Default: info
Possible values: “debug”, “err”, “error”, “fatal”, “info”, “trace”, “warn”, “warning”
--log.keep-logrotate
Type: boolean
Keep the old log file after receiving a SIGHUP.
This option can be specified without a value to enable it.
--log.level
Type: string…
Set the topic-specific log level, using --log.level level
for the general topic or --log.level topic=level
for the specified topic (can be specified multiple times).
Available log levels: fatal, error, warning, info, debug, trace.
Available log topics: all, agency, agencycomm, agencystore, aql, arangosearch, audit-authentication, audit-authorization, audit-collection, audit-database, audit-document, audit-hotbackup, audit-service, audit-view, authentication, authorization, backup, bench, cache, cluster, communication, config, crash, development, dump, engines, flush, general, graphs, heartbeat, httpclient, ldap, libiresearch, license, maintenance, memory, mmap, pregel, queries, rep-state, replication, replication2, requests, restore, rocksdb, security, ssl, startup, statistics, supervision, syscall, threads, trx, ttl, v8, validation, views.
Default: info
--log.line-number
Type: boolean
Include the function name, file name, and line number of the source code that issues the log message. Format: [func@FileName.cpp:123]
This option can be specified without a value to enable it.
--log.max-entry-length
Introduced in: v3.7.9
Type: uint32
The maximum length of a log entry (in bytes).
Default: 134217728
--log.max-queued-entries
Introduced in: v3.10.12, v3.11.5
Type: uint32
Upper limit of log entries that are queued in a background thread.
Default: 10000
--log.output
Type: string…
Log destination(s), e.g. file:///path/to/file (any occurrence of $PID is replaced with the process ID).
--log.performance
Deprecated in: v3.5.0
Type: boolean
Shortcut for --log.level performance=trace
.
This option can be specified without a value to enable it.
--log.prefix
Type: string
Prefix log message with this string.
--log.process
Introduced in: v3.8.0
Type: boolean
Show the process identifier (PID) in log messages.
This option can be specified without a value to enable it.
Default: true
--log.request-parameters
Type: boolean
include full URLs and HTTP request parameters in trace logs
This option can be specified without a value to enable it.
Default: true
--log.role
Type: boolean
Log the server role.
This option can be specified without a value to enable it.
--log.shorten-filenames
Type: boolean
shorten filenames in log output (use with --log.line-number)
This option can be specified without a value to enable it.
Default: true
--log.structured-param
Introduced in: v3.10.0
Type: string…
Toggle the usage of the log category parameter in structured log messages.
--log.thread
Type: boolean
Show the thread identifier in log messages.
This option can be specified without a value to enable it.
--log.thread-name
Type: boolean
Show thread name in log messages.
This option can be specified without a value to enable it.
--log.time-format
Introduced in: v3.5.0
Type: string
The time format to use in logs.
Default: utc-datestring
Possible values: “local-datestring”, “timestamp”, “timestamp-micros”, “timestamp-millis”, “uptime”, “uptime-micros”, “uptime-millis”, “utc-datestring”, “utc-datestring-micros”, “utc-datestring-millis”
--log.use-json-format
Introduced in: v3.8.0
Type: boolean
Use JSON as output format for logging.
This option can be specified without a value to enable it.
--log.use-local-time
Deprecated in: v3.5.0
Type: boolean
Use the local timezone instead of UTC.
This option can be specified without a value to enable it.
--log.use-microtime
Deprecated in: v3.5.0
Type: boolean
Use Unix timestamps in seconds with microsecond precision.
This option can be specified without a value to enable it.
network
--network.idle-connection-ttl
Introduced in: v3.6.0
Type: uint64
The default time-to-live of idle connections for cluster-internal communication (in milliseconds).
Default: 120000
--network.io-threads
Introduced in: v3.6.0
Type: uint32
The number of network I/O threads for cluster-internal communication.
Default: 2
--network.max-open-connections
Introduced in: v3.6.0
Type: uint64
The maximum number of open TCP connections for cluster-internal communication per endpoint
Default: 1024
--network.max-requests-in-flight
Introduced in: v3.8.0
Type: uint64
The number of internal requests that can be in flight at a given point in time.
Default: 65536
--network.protocol
Introduced in: v3.7.0
Deprecated in: v3.9.0
Type: string
The network protocol to use for cluster-internal communication.
Possible values: “”, “h2”, “http”, “http2”, “vst”
--network.verify-hosts
Introduced in: v3.6.0
Type: boolean
Verify peer certificates when using TLS in cluster-internal communication.
This option can be specified without a value to enable it.
pregel
--pregel.max-parallelism
Introduced in: v3.10.0
Type: uint64
The maximum parallelism usable in a Pregel job.
Default: dynamic (e.g. 8
)
Effective on Coordinators and Single Servers only.
--pregel.min-parallelism
Introduced in: v3.10.0
Type: uint64
The minimum parallelism usable in a Pregel job.
Default: 1
Effective on Coordinators and Single Servers only.
--pregel.parallelism
Introduced in: v3.10.0
Type: uint64
The default parallelism to use in a Pregel job if none is specified.
Default: dynamic (e.g. 2
)
Effective on Coordinators and Single Servers only.
query
--query.allow-collections-in-expressions
Introduced in: v3.8.0
Deprecated in: v3.9.0
Type: boolean
Allow full collections to be used in AQL expressions.
This option can be specified without a value to enable it.
--query.cache-entries
Type: uint64
The maximum number of results in query result cache per database.
Default: 128
--query.cache-entries-max-size
Type: uint64
The maximum cumulated size of results in the query result cache per database (in bytes).
Default: 268435456
--query.cache-entry-max-size
Type: uint64
The maximum size of an individual result entry in query result cache (in bytes).
Default: 16777216
--query.cache-include-system-collections
Type: boolean
Whether to include system collection queries in the query result cache.
This option can be specified without a value to enable it.
--query.cache-mode
Type: string
The mode for the AQL query result cache. Can be “on”, “off”, or “demand”.
Default: off
--query.enable-debug-apis
Introduced in: v3.11.9
Type: boolean
Whether to enable query debug APIs.
This option can be specified without a value to enable it.
Default: true
--query.fail-on-warning
Type: boolean
Whether AQL queries should fail with errors even for recoverable warnings.
This option can be specified without a value to enable it.
--query.global-memory-limit
Introduced in: v3.8.0
Type: uint64
The memory threshold for all AQL queries combined (in bytes, 0 = no limit).
Default: dynamic (e.g. 26795261583
)
--query.log-failed
Introduced in: v3.9.5, v3.10.2
Type: boolean
Whether to log failed AQL queries.
This option can be specified without a value to enable it.
Effective on Coordinators, Agents and Single Servers only.
--query.log-memory-usage-threshold
Introduced in: v3.9.5, v3.10.2
Type: uint64
Log queries that have a peak memory usage larger than this threshold.
Default: 4294967296
Effective on Coordinators, Agents and Single Servers only.
--query.max-artifact-log-length
Introduced in: v3.9.5, v3.10.2
Type: uint64
The maximum length of query strings and bind parameter values in logs before they get truncated.
Default: 4096
Effective on Coordinators, Agents and Single Servers only.
--query.max-collections-per-query
Introduced in: v3.10.7
Type: uint64
The maximum number of collections/shards that can be used in one AQL query.
Default: 2048
--query.max-dnf-condition-members
Introduced in: v3.11.0
Type: uint64
The maximum number of OR sub-nodes in the internal representation of an AQL FILTER condition.
Default: 786432
Effective on Coordinators and Single Servers only.
--query.max-nodes-per-callstack
Introduced in: v3.9.0
Type: uint64
The maximum number of execution nodes on the callstack before splitting the remaining nodes into a separate thread
Default: 250
--query.max-parallelism
Introduced in: v3.7.1
Enterprise Edition
Type: uint64
The maximum number of threads to use for a single query; the actual query execution may use less depending on various factors.
Default: 4
--query.max-runtime
Introduced in: v3.6.7, v3.7.3
Type: double
The runtime threshold for AQL queries (in seconds, 0 = no limit).
--query.memory-limit
Type: uint64
The memory threshold per AQL query (in bytes, 0 = no limit).
Default: dynamic (e.g. 19848341913
)
--query.memory-limit-override
Introduced in: v3.8.0
Type: boolean
Allow increasing the per-query memory limits for individual queries.
This option can be specified without a value to enable it.
Default: true
--query.optimizer-max-plans
Type: uint64
The maximum number of query plans to create for a query.
Default: 128
--query.optimizer-rules
Introduced in: v3.6.0
Type: string…
Enable or disable specific optimizer rules by default. Specify the rule name prefixed with -
for disabling, or +
for enabling.
--query.parallelize-traversals
Introduced in: v3.7.1
Enterprise Edition
Type: boolean
Whether to enable traversal parallelization.
This option can be specified without a value to enable it.
Default: true
--query.registry-ttl
Type: double
The default time-to-live of cursors and query snippets (in seconds). If set to 0 or lower, the value defaults to 30 for single server instances and 600 for Coordinator instances.
--query.require-with
Introduced in: v3.7.11, v3.8.0
Type: boolean
Whether AQL queries should require the WITH collection-name
clause even on single servers (enable this to remove this behavior difference between single server and cluster).
This option can be specified without a value to enable it.
--query.slow-streaming-threshold
Type: double
The threshold for slow streaming AQL queries (in seconds).
Default: 10
--query.slow-threshold
Type: double
The threshold for slow AQL queries (in seconds).
Default: 10
--query.smart-joins
Introduced in: v3.4.5
Enterprise Edition
Type: boolean
Whether to enable the SmartJoins query optimization.
This option can be specified without a value to enable it.
Default: true
--query.tracking
Type: boolean
Whether to track queries.
This option can be specified without a value to enable it.
Default: true
--query.tracking-slow-queries
Introduced in: v3.7.4
Type: boolean
Whether to track slow queries.
This option can be specified without a value to enable it.
Default: true
--query.tracking-with-bindvars
Type: boolean
Whether to track bind variable of AQL queries.
This option can be specified without a value to enable it.
Default: true
--query.tracking-with-datasources
Introduced in: v3.7.4
Type: boolean
Whether to track data sources of AQL queries.
This option can be specified without a value to enable it.
--query.tracking-with-querystring
Introduced in: v3.7.4
Type: boolean
Whether to track the query string.
This option can be specified without a value to enable it.
Default: true
random
--random.generator
Type: uint32
The random number generator to use (1 = MERSENNE, 2 = RANDOM, 3 = URANDOM, 4 = COMBINED (not available on Windows), 5 = WinCrypt (Windows only). The options 2, 3, 4, and 5 are deprecated and will be removed in a future version.
Default: 1
Possible values: 1, 2, 3, 4
rclone
--rclone.argument
Introduced in: v3.9.11, v3.10.7, v3.11.1
Enterprise Edition
Type: string…
Prepend custom arguments to rclone.
--rclone.executable
Enterprise Edition
Type: string
Path to the rclone executable used for uploading and downloading of Hot Backups.
replication
--replication.active-failover
Type: boolean
Enable active-failover during asynchronous replication.
This option can be specified without a value to enable it.
--replication.active-failover-leader-grace-period
Introduced in: v3.10.8
Type: double
The amount of time (in seconds) for which the current leader will continue to assume its leadership even if it lost connection to the agency (0 = unlimited)
Default: 120
--replication.auto-repair-revision-trees
Introduced in: v3.10.6
Type: boolean
Whether to automatically repair revision trees of shards after too many shard synchronization failures.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers only.
--replication.auto-start
Type: boolean
Enable or disable the automatic start of replication appliers.
This option can be specified without a value to enable it.
Default: true
--replication.connect-timeout
Introduced in: v3.4.9, v3.5.4
Type: double
The default timeout value for replication connection attempts (in seconds).
Default: 10
--replication.max-parallel-tailing-invocations
Introduced in: v3.5.0
Type: uint64
The maximum number of concurrently allowed WAL tailing invocations (0 = unlimited).
--replication.quick-keys-limit
Introduced in: v3.7.9
Type: uint64
Limit at which ‘quick’ calls to the replication keys API return only the document count for the second run.
Default: 1000000
--replication.request-timeout
Introduced in: v3.4.9, v3.5.4
Type: double
The default timeout value for replication requests (in seconds).
Default: 600
--replication.sync-by-revision
Introduced in: v3.7.0
Type: boolean
Whether to use the newer revision-based replication protocol.
This option can be specified without a value to enable it.
Default: true
rocksdb
--rocksdb.allow-fallocate
Introduced in: v3.4.5
Type: boolean
Whether to allow RocksDB to use fallocate calls. If disabled, fallocate calls are bypassed and no pre-allocation is done.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.auto-fill-index-caches-on-startup
Introduced in: v3.9.6, v3.10.2
Type: boolean
Whether to automatically fill the in-memory index caches with entries from edge indexes and cache-enabled persistent indexes on server startup.
This option can be specified without a value to enable it.
Effective on DB-Servers and Single Servers only.
--rocksdb.auto-flush-check-interval
Introduced in: v3.10.5
Type: double
The interval (in seconds) in which auto-flushes of WAL and column family data is executed.
Default: 1800
Effective on DB-Servers and Single Servers only.
--rocksdb.auto-flush-min-live-wal-files
Introduced in: v3.10.5
Type: uint64
The minimum number of live WAL files that triggers an auto-flush of WAL and column family data.
Default: 20
Effective on DB-Servers and Single Servers only.
--rocksdb.auto-refill-index-caches-on-followers
Introduced in: v3.10.5
Type: boolean
Whether or not to automatically (re-)fill the in-memory index caches on followers as well.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers and Single Servers only.
--rocksdb.auto-refill-index-caches-on-modify
Introduced in: v3.9.6, v3.10.2
Type: boolean
Whether to automatically (re-)fill the in-memory index caches with entries from edge indexes and cache-enabled persistent indexes on insert/update/replace/remove operations by default.
This option can be specified without a value to enable it.
Effective on DB-Servers and Single Servers only.
--rocksdb.auto-refill-index-caches-queue-capacity
Introduced in: v3.9.6, v3.10.2
Type: uint64
How many changes can be queued at most for automatically refilling the index caches.
Default: 131072
Effective on DB-Servers and Single Servers only.
--rocksdb.blob-compression-type
Introduced in: v3.11.0
Experimental
Type: string
The compression algorithm to use for blob data in the documents column family. Requires --rocksdb.enable-blob-files
.
Default: lz4
Possible values: “lz4”, “lz4hc”, “none”, “snappy”
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.blob-file-size
Introduced in: v3.11.0
Experimental
Type: uint64
The size limit for blob files in the documents column family (in bytes). Requires --rocksdb.enable-blob-files
.
Default: 1073741824
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.blob-garbage-collection-age-cutoff
Introduced in: v3.11.0
Experimental
Type: double
The age cutoff for garbage collecting blob files in the documents column family (percentage value from 0 to 1 determines how many blob files are garbage collected during compaction). Requires --rocksdb.enable-blob-files
and --rocksdb.enable-blob-garbage-collection
.
Default: 0.25
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.blob-garbage-collection-force-threshold
Introduced in: v3.11.0
Experimental
Type: double
The garbage ratio threshold for scheduling targeted compactions for the oldest blob files in the documents column family (percentage value between 0 and 1). Requires --rocksdb.enable-blob-files
and --rocksdb.enable-blob-garbage-collection
.
Default: 1
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.block-align-data-blocks
Type: boolean
If enabled, data blocks are aligned on the lesser of page size and block size.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.block-cache-jemalloc-allocator
Introduced in: v3.11.0
Experimental
Type: boolean
Use jemalloc-based memory allocator for RocksDB block cache.
This option can be specified without a value to enable it.
Available on Linux only.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.block-cache-shard-bits
Type: int64
The number of shard bits to use for the block cache (-1 = default value).
Default: -1
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.block-cache-size
Type: uint64
The size of block cache (in bytes).
Default: dynamic (e.g. 9279925862
)
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.bloom-filter-bits-per-key
Introduced in: v3.10.3
Type: double
The average number of bits to use per key in a Bloom filter.
Default: 10
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.cache-index-and-filter-blocks
Introduced in: v3.7.1
Type: boolean
If enabled, the RocksDB block cache quota also includes RocksDB memtable sizes.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.cache-index-and-filter-blocks-with-high-priority
Introduced in: v3.7.1
Type: boolean
If enabled and --rocksdb.cache-index-and-filter-blocks
is also enabled, cache index and filter blocks with high priority, making index and filter blocks be less likely to be evicted than data blocks.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.checksum-type
Introduced in: v3.10.0
Type: string
The checksum type to use for table files.
Default: xxHash64
Possible values: “XXH3”, “crc32c”, “xxHash”, “xxHash64”
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.compaction-read-ahead-size
Type: uint64
If non-zero, bigger reads are performed when doing compaction. If you run RocksDB on spinning disks, you should set this to at least 2 MB. That way, RocksDB’s compaction does sequential instead of random reads.
Default: 2097152
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.compaction-style
Introduced in: v3.10.0
Type: string
The compaction style which is used to pick the next file(s) to be compacted (note: all styles except ’level’ are experimental).
Default: level
Possible values: “fifo”, “level”, “none”, “universal”
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.compression-type
Introduced in: v3.10.0
Type: string
The compression algorithm to use within RocksDB.
Default: lz4
Possible values: “lz4”, “lz4hc”, “none”, “snappy”
--rocksdb.create-sha-files
Enterprise Edition
Type: boolean
Whether to enable the generation of sha256 files for each .sst file.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers and Single Servers only.
--rocksdb.debug-logging
Type: boolean
Whether to enable RocksDB debug logging.
This option can be specified without a value to enable it.
Effective on DB-Servers and Single Servers only.
--rocksdb.delayed-write-rate
Type: uint64
Limit the write rate to the database (in bytes per second) when writing to the last mem-table allowed and if more than 3 mem-tables are allowed, or if a certain number of level-0 files are surpassed and writes need to be slowed down.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.dynamic-level-bytes
Type: boolean
Whether to determine the number of bytes for each level dynamically to minimize space amplification.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.edge-cache
Introduced in: v3.6.4
Deprecated in: v3.10.0
Type: boolean
Whether to use the in-memory cache for edges
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers and Single Servers only.
--rocksdb.enable-blob-files
Introduced in: v3.11.0
Experimental
Type: boolean
Enable blob files for the documents column family.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.enable-blob-garbage-collection
Introduced in: v3.11.0
Experimental
Type: boolean
Enable blob garbage collection during compaction in the documents column family. Requires --rocksdb.enable-blob-files
.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.enable-index-compression
Introduced in: v3.10.0
Type: boolean
Enable index compression.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.enable-pipelined-write
Type: boolean
If enabled, use a two stage write queue for WAL writes and memtable writes.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.enable-statistics
Type: boolean
Whether RocksDB statistics should be enabled.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.encryption-gen-internal-key
Introduced in: v3.7.1
Enterprise Edition
Type: boolean
Generate an internal encryption-at-rest key.
This option can be specified without a value to enable it.
--rocksdb.encryption-hardware-acceleration
Introduced in: v3.8.0
Enterprise Edition
Type: boolean
Use Intel intrinsics-based encryption, requiring a CPU with the AES-NI instruction set. If turned off, then OpenSSL is used, which may use hardware-accelerated encryption, too.
This option can be specified without a value to enable it.
Default: true
--rocksdb.encryption-key-generator
Enterprise Edition
Type: string
A program providing the encryption key on stdout. If set, encryption is enabled.
--rocksdb.encryption-key-rotation
Introduced in: v3.7.1
Enterprise Edition
Type: boolean
Allow encryption key rotation.
This option can be specified without a value to enable it.
--rocksdb.encryption-keyfile
Enterprise Edition
Type: string
A file containing an encryption key. If set, encryption is enabled.
--rocksdb.encryption-keyfolder
Introduced in: v3.7.0
Enterprise Edition
Type: string
A folder containing all possible user encryption keys. All keys are used to decrypt the internal keystore.
--rocksdb.enforce-block-cache-size-limit
Type: boolean
If enabled, strictly enforces the block cache size limit.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.exclusive-writes
Introduced in: v3.5.4
Deprecated in: v3.8.0
Type: boolean
If enabled, writes are exclusive. This allows the RocksDB engine to mimic the collection locking behavior of the now-removed MMFiles storage engine, but inhibits concurrent write operations.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.force-legacy-comparator
Introduced in: v3.12.2
Type: boolean
If set to true
, forces a new database directory to use the legacy sorting method. This is only for testing. Don’t use.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.format-version
Introduced in: v3.10.0
Type: uint32
The table format version to use inside RocksDB.
Default: 5
Possible values: 3, 4, 5
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.intermediate-commit-count
Type: uint64
An intermediate commit is performed automatically when this number of operations is reached in a transaction, and a new transaction is started.
Default: 1000000
--rocksdb.intermediate-commit-size
Type: uint64
An intermediate commit is performed automatically when a transaction has accumulated operations of this size (in bytes), and a new transaction is started.
Default: 536870912
--rocksdb.level0-compaction-trigger
Type: int64
The number of level-0 files that triggers a compaction.
Default: 2
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.level0-slowdown-trigger
Type: int64
The number of level-0 files that triggers a write slowdown
Default: 16
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.level0-stop-trigger
Type: int64
The number of level-0 files that triggers a full write stop
Default: 256
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.limit-open-files-at-startup
Introduced in: v3.4.5
Type: boolean
Limit the amount of .sst files RocksDB inspects at startup, in order to reduce the startup I/O operations.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.max-background-jobs
Type: int32
The maximum number of concurrent background jobs (compactions and flushes).
Default: dynamic (e.g. 8
)
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.max-bytes-for-level-base
Type: uint64
If not using dynamic level sizes, this controls the maximum total data size for level-1 of the LSM tree.
Default: 268435456
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.max-bytes-for-level-multiplier
Type: double
If not using dynamic level sizes, the maximum number of bytes for level L of the LSM tree can be calculated as max-bytes-for-level-base * (max-bytes-for-level-multiplier ^ (L-1))
Default: 10
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.max-concurrent-index-fill-tasks
Introduced in: v3.9.6, v3.10.2
Type: uint64
The maximum number of index fill tasks that can run concurrently on server startup.
Default: dynamic (e.g. 1
)
Effective on DB-Servers and Single Servers only.
--rocksdb.max-parallel-compactions
Introduced in: v3.7.11
Type: uint64
The maximum number of parallel compactions jobs.
Default: 2
--rocksdb.max-subcompactions
Type: uint32
The maximum number of concurrent sub-jobs for a background compaction.
Default: 2
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.max-total-wal-size
Type: uint64
The maximum total size of WAL files that force a flush of stale column families.
Default: 83886080
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.max-transaction-size
Type: uint64
The transaction size limit (in bytes).
Default: 18446744073709552000
--rocksdb.max-write-buffer-number
Type: uint64
The maximum number of write buffers that build up in memory (default: number of column families + 2 = 9 write buffers). You can only increase the number.
Default: 10
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.max-write-buffer-number-definitions
Introduced in: v3.8.0
Type: uint64
If non-zero, overrides the value of --rocksdb.max-write-buffer-number
for the definitions column family
--rocksdb.max-write-buffer-number-documents
Introduced in: v3.8.0
Type: uint64
If non-zero, overrides the value of --rocksdb.max-write-buffer-number
for the documents column family
--rocksdb.max-write-buffer-number-edge
Introduced in: v3.8.0
Type: uint64
If non-zero, overrides the value of --rocksdb.max-write-buffer-number
for the edge column family
--rocksdb.max-write-buffer-number-fulltext
Introduced in: v3.8.0
Type: uint64
If non-zero, overrides the value of --rocksdb.max-write-buffer-number
for the fulltext column family
--rocksdb.max-write-buffer-number-geo
Introduced in: v3.8.0
Type: uint64
If non-zero, overrides the value of --rocksdb.max-write-buffer-number
for the geo column family
--rocksdb.max-write-buffer-number-primary
Introduced in: v3.8.0
Type: uint64
If non-zero, overrides the value of --rocksdb.max-write-buffer-number
for the primary column family
--rocksdb.max-write-buffer-number-replicated-logs
Introduced in: v3.8.0
Type: uint64
If non-zero, overrides the value of --rocksdb.max-write-buffer-number
for the replicated-logs column family
--rocksdb.max-write-buffer-number-vpack
Introduced in: v3.8.0
Type: uint64
If non-zero, overrides the value of --rocksdb.max-write-buffer-number
for the vpack column family
--rocksdb.max-write-buffer-size-to-maintain
Introduced in: v3.7.3
Type: int64
The maximum size of immutable write buffers that build up in memory per column family. Larger values mean that more in-memory data can be used for transaction conflict checking (-1 = use automatic default value, 0 = do not keep immutable flushed write buffers, which is the default and usually correct).
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.min-blob-size
Introduced in: v3.11.0
Experimental
Type: uint64
The size threshold for storing documents in blob files (in bytes, 0 = store all documents in blob files). Requires --rocks.enable-blob-files
.
Default: 256
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.min-write-buffer-number-to-merge
Type: uint64
The minimum number of write buffers that are merged together before writing to storage.
Default: dynamic (e.g. 1
)
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.minimum-disk-free-bytes
Introduced in: v3.8.0
Type: uint64
The minimum number of free disk bytes for considering the server healthy in health checks (0 = disable the check).
Default: 16777216
Effective on DB-Servers and Single Servers only.
--rocksdb.minimum-disk-free-percent
Introduced in: v3.8.0
Type: double
The minimum percentage of free disk space for considering the server healthy in health checks (0 = disable the check).
Default: 0.01
Effective on DB-Servers and Single Servers only.
--rocksdb.num-levels
Type: uint64
The number of levels for the database in the LSM tree.
Default: 7
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.num-threads-priority-high
Introduced in: v3.8.5
Type: uint32
The number of threads for high priority operations (e.g. flush).
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.num-threads-priority-low
Type: uint32
The number of threads for low priority operations (e.g. compaction).
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.num-uncompressed-levels
Type: uint64
The number of levels that do not use compression in the LSM tree.
Default: 2
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.optimize-filters-for-hits
Type: boolean
Whether the implementation should optimize the filters mainly for cases where keys are found rather than also optimize for keys missed. You can enable the option if you know that there are very few misses or the performance in the case of misses is not important for your application.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.partition-files-for-documents
Introduced in: v3.11.3
Experimental
Type: boolean
If enabled, the document data for different collections/shards will end up in different .sst files.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.partition-files-for-edge-index
Introduced in: v3.11.3
Experimental
Type: boolean
If enabled, the index data for different edge indexes will end up in different .sst files.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.partition-files-for-persistent-index
Introduced in: v3.11.3
Experimental
Type: boolean
If enabled, the index data for different persistent indexes will end up in different .sst files.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.partition-files-for-primary-index
Introduced in: v3.11.3
Experimental
Type: boolean
If enabled, the primary index data for different collections/shards will end up in different .sst files.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.pending-compactions-slowdown-trigger
Introduced in: v3.8.5
Type: uint64
The number of pending compaction bytes that triggers a write slowdown.
Default: 131072
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.pending-compactions-stop-trigger
Introduced in: v3.8.5
Type: uint64
The number of pending compaction bytes that triggers a full write stop.
Default: 17179869184
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.periodic-compaction-ttl
Introduced in: v3.9.3
Type: uint64
Time-to-live (in seconds) for periodic compaction of .sst files, based on the file age (0 = no periodic compaction).
Default: 2592000
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.pin-l0-filter-and-index-blocks-in-cache
Introduced in: v3.7.1
Type: boolean
If enabled and --rocksdb.cache-index-and-filter-blocks
is also enabled, filter and index blocks are pinned and only evicted from cache when the table reader is freed.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.pin-top-level-index-and-filter
Introduced in: v3.7.1
Type: boolean
If enabled and --rocksdb.cache-index-and-filter-blocks
is also enabled, the top-level index of partitioned filter and index blocks are pinned and only evicted from cache when the table reader is freed.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.prepopulate-block-cache
Introduced in: v3.10.0
Type: boolean
Pre-populate block cache on flushes.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.recycle-log-file-num
Type: boolean
If enabled, keep a pool of log files around for recycling.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.reserve-file-metadata-memory
Introduced in: v3.11.0
Type: boolean
account for .sst file metadata memory in block cache
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.reserve-table-builder-memory
Introduced in: v3.10.0
Type: boolean
Account for table building memory in block cache.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.reserve-table-reader-memory
Introduced in: v3.10.0
Type: boolean
Account for table reader memory in block cache.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.sync-delay-threshold
Introduced in: v3.6.8, v3.7.5
Type: uint64
The threshold for self-observation of WAL disk syncs (in milliseconds, 0 = no warnings). Any WAL disk sync longer ago than this threshold triggers a warning
Default: 5000
Effective on DB-Servers and Single Servers only.
--rocksdb.sync-interval
Type: uint64
The interval for automatic, non-requested disk syncs (in milliseconds, 0 = turn automatic syncing off)
Default: 100
Available on Linux and macOS only.
Effective on DB-Servers and Single Servers only.
--rocksdb.table-block-size
Type: uint64
The approximate size (in bytes) of the user data packed per block for uncompressed data.
Default: 16384
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.target-file-size-base
Introduced in: v3.7.1
Type: uint64
Per-file target file size for compaction (in bytes). The actual target file size for each level is --rocksdb.target-file-size-base
multiplied by --rocksdb.target-file-size-multiplier
^ (level - 1)
Default: 67108864
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.target-file-size-multiplier
Introduced in: v3.7.1
Type: uint64
The multiplier for --rocksdb.target-file-size
. A value of 1 means that files in different levels will have the same size.
Default: 1
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.throttle
Type: boolean
Enable write-throttling.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers and Single Servers only.
--rocksdb.throttle-frequency
Introduced in: v3.8.5
Type: uint64
The frequency for write-throttle calculations (in milliseconds).
Default: 1000
Effective on DB-Servers and Single Servers only.
--rocksdb.throttle-lower-bound-bps
Introduced in: v3.8.5
Type: uint64
The lower bound for throttle’s write bandwidth (in bytes per second).
Default: 10485760
Effective on DB-Servers and Single Servers only.
--rocksdb.throttle-max-write-rate
Introduced in: v3.8.5
Type: uint64
The maximum write rate enforced by throttle (in bytes per second, 0 = unlimited).
Effective on DB-Servers and Single Servers only.
--rocksdb.throttle-scaling-factor
Introduced in: v3.8.5
Type: uint64
The adaptiveness scaling factor for write-throttle calculations.
Default: 17
Effective on DB-Servers and Single Servers only.
--rocksdb.throttle-slots
Introduced in: v3.8.5
Type: uint64
The number of historic metrics to use for throttle value calculation.
Default: 120
Effective on DB-Servers and Single Servers only.
--rocksdb.throttle-slow-down-writes-trigger
Introduced in: v3.8.5
Type: uint64
The number of level 0 files whose payload is not considered in throttle calculations when penalizing the presence of L0 files.
Default: 8
Effective on DB-Servers and Single Servers only.
--rocksdb.total-write-buffer-size
Type: uint64
The maximum total size of in-memory write buffers (0 = unbounded).
Default: dynamic (e.g. 12373234483
)
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.transaction-lock-stripes
Introduced in: v3.9.2
Type: uint64
The number of lock stripes to use for transaction locks.
Default: dynamic (e.g. 16
)
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.transaction-lock-timeout
Type: int64
If positive, specifies the wait timeout in milliseconds when a transaction attempts to lock a document. A negative value is not recommended as it can lead to deadlocks (0 = no waiting, < 0 no timeout)
Default: 1000
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.use-direct-io-for-flush-and-compaction
Type: boolean
Use O_DIRECT for writing files for flush and compaction.
This option can be specified without a value to enable it.
Available on Linux only.
--rocksdb.use-direct-reads
Type: boolean
Use O_DIRECT for reading files.
This option can be specified without a value to enable it.
Available on Linux only.
--rocksdb.use-file-logging
Type: boolean
Use a file-base logger for RocksDB’s own logs.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.use-fsync
Type: boolean
Whether to use fsync calls when writing to disk (set to false for issuing fdatasync calls only).
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.use-range-delete-in-wal
Introduced in: v3.9.3
Type: boolean
Enable range delete markers in the write-ahead log (WAL). Potentially incompatible with older arangosync versions.
This option can be specified without a value to enable it.
Default: true
Effective on DB-Servers only.
--rocksdb.verify-sst
Introduced in: v3.11.0
Type: boolean
Verify the validity of .sst files present in the engine-rocksdb
directory on startup.
This is a command, no value needs to be specified. The process terminates after executing the command.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.wal-archive-size-limit
Type: uint64
The maximum total size (in bytes) of archived WAL files to keep on the leader (0 = unlimited).
Effective on DB-Servers and Single Servers only.
--rocksdb.wal-directory
Type: string
Absolute path for RocksDB WAL files. If not set, a subdirectory journals
inside the database directory is used.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.wal-file-timeout
Type: double
The timeout after which unused WAL files are deleted (in seconds).
Default: 10
Effective on DB-Servers and Single Servers only.
--rocksdb.wal-file-timeout-initial
Type: double
The initial timeout (in seconds) after which unused WAL files deletion kicks in after server start.
Default: 60
Effective on DB-Servers and Single Servers only.
--rocksdb.wal-recovery-skip-corrupted
Type: boolean
Skip corrupted records in WAL recovery.
This option can be specified without a value to enable it.
Effective on DB-Servers, Agents and Single Servers only.
--rocksdb.write-buffer-size
Type: uint64
The amount of data to build up in memory before converting to a sorted on-disk file (0 = disabled).
Default: 67108864
Effective on DB-Servers, Agents and Single Servers only.
server
--server.allow-use-database
Type: boolean
Allow to change the database in REST actions. Only needed internally for unit tests.
This option can be specified without a value to enable it.
--server.authentication
Type: boolean
Whether to use authentication for all client requests.
This option can be specified without a value to enable it.
Default: true
--server.authentication-system-only
Type: boolean
Use HTTP authentication only for requests to /_api and /_admin endpoints.
This option can be specified without a value to enable it.
Default: true
--server.authentication-timeout
Type: double
The timeout for the authentication cache (in seconds, 0 = indefinitely).
--server.authentication-unix-sockets
Type: boolean
Whether to use authentication for requests via UNIX domain sockets.
This option can be specified without a value to enable it.
Default: true
Available on Linux and macOS only.
--server.cluster-metrics-timeout
Introduced in: v3.10.0
Type: uint32
Cluster metrics polling timeout (in seconds).
--server.count-descriptors-interval
Introduced in: v3.11.0
Type: uint64
Controls the interval (in milliseconds) in which the number of open file descriptors for the process is determined (0 = disable counting).
Default: 60000
Available on Linux only.
--server.descriptors-minimum
Type: uint64
The minimum number of file descriptors needed to start (0 = no minimum)
Default: 8192
Available on Linux and macOS only.
--server.early-connections
Introduced in: v3.10.0
Type: boolean
Allow requests to a limited set of APIs early during the server startup.
This option can be specified without a value to enable it.
--server.endpoint
Type: string…
Endpoint for client requests (e.g. http+tcp://127.0.0.1:8529
, or vst+ssl://192.168.1.1:8529
)
Default: tcp://0.0.0.0:8529
--server.ensure-whitespace-metrics-format
Introduced in: v3.10.6
Type: boolean
Set to true
to ensure whitespace between the exported metric value and the preceding token (metric name or labels) in the metrics output.
This option can be specified without a value to enable it.
Default: true
--server.export-metrics-api
Introduced in: v3.6.0
Type: boolean
Whether to enable the metrics API.
This option can be specified without a value to enable it.
Default: true
--server.export-read-write-metrics
Introduced in: v3.7.7
Type: boolean
Whether to enable metrics for document reads and writes.
This option can be specified without a value to enable it.
--server.export-shard-usage-metrics
Introduced in: v3.10.13, v3.11.7
Type: string
Whether or not to export shard usage metrics.
Default: disabled
Possible values: “disabled”, “enabled-per-shard”, “enabled-per-shard-per-user”
Effective on DB-Servers only.
--server.gid
Type: string
Switch to this group ID after reading configuration files.
--server.harden
Introduced in: v3.5.0
Type: boolean
Lock down REST APIs that reveal version information or server internals for non-admin users.
This option can be specified without a value to enable it.
--server.io-threads
Type: uint64
The number of threads used to handle I/O.
Default: dynamic (e.g. 2
)
--server.jwt-secret
Deprecated in: v3.3.22, v3.4.2
Type: string
The secret to use when doing JWT authentication.
--server.jwt-secret-folder
Introduced in: v3.7.0
Enterprise Edition
Type: string
A folder containing one or more JWT secret files to use for JWT authentication.
--server.jwt-secret-keyfile
Type: string
A file containing the JWT secret to use when doing JWT authentication.
--server.local-authentication
Type: boolean
Whether to use ArangoDB’s built-in authentication system.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and Single Servers only.
--server.maintenance-actions-block
Type: int32
The minimum number of seconds finished actions block duplicates.
Default: 2
Effective on DB-Servers only.
--server.maintenance-actions-linger
Type: int32
The minimum number of seconds finished actions remain in the deque.
Default: 3600
Effective on DB-Servers only.
--server.maintenance-slow-threads
Introduced in: v3.8.3
Type: uint32
The maximum number of threads available for slow maintenance actions (long SynchronizeShard and long EnsureIndex).
Default: dynamic (e.g. 1
)
Effective on DB-Servers only.
--server.maintenance-threads
Type: uint32
The maximum number of threads available for maintenance actions.
Default: dynamic (e.g. 3
)
Effective on DB-Servers only.
--server.max-number-detached-threads
Introduced in: v3.11.5
Type: uint64
The maximum number of detached scheduler threads.
Default: 1000
--server.maximal-queue-size
Type: uint64
The size of the priority 3 FIFO.
Default: 4096
--server.maximal-threads
Type: uint64
The maximum number of request handling threads to run (0 = use system-specific default of 32)
--server.minimal-threads
Type: uint64
The minimum number of request handling threads to run.
Default: 4
--server.ongoing-low-priority-multiplier
Introduced in: v3.8.0
Type: double
Controls the number of low priority requests that can be ongoing at a given point in time, relative to the maximum number of request handling threads.
Default: 4
--server.prio1-size
Type: uint64
The size of the priority 1 FIFO.
Default: 4096
--server.prio2-size
Introduced in: v3.8.0
Type: uint64
The size of the priority 2 FIFO.
Default: 4096
--server.rest-server
Type: boolean
Start a REST server.
This option can be specified without a value to enable it.
Default: true
--server.scheduler-queue-size
Type: uint64
The number of simultaneously queued requests inside the scheduler.
Default: 4096
--server.session-timeout
Introduced in: v3.9.0
Type: double
The lifetime for tokens (in seconds) that can be obtained from the POST /_open/auth
endpoint. Used by the web interface for JWT-based sessions.
Default: 3600
Effective on Coordinators and Single Servers only.
--server.statistics
Type: boolean
Whether to enable statistics gathering and statistics APIs.
This option can be specified without a value to enable it.
Default: true
--server.statistics-all-databases
Introduced in: v3.8.0
Type: boolean
Provide cluster statistics in the web interface for all databases.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators only.
--server.statistics-history
Introduced in: v3.4.9, v3.5.1
Type: boolean
Whether to store statistics in the database.
This option can be specified without a value to enable it.
Default: dynamic (e.g. true
)
--server.storage-engine
Type: string
The storage engine type (note that the MMFiles engine is unavailable since v3.7.0 and cannot be used anymore).
Default: auto
Possible values: “auto”, “rocksdb”
--server.support-info-api
Introduced in: v3.9.0
Type: string
The policy for exposing the support info and also the telemetrics API.
Default: admin
Possible values: “admin”, “disabled”, “jwt”, “public”
--server.telemetrics-api
Introduced in: v3.11.0
Type: boolean
Whether to enable the telemetrics API.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators, DB-Servers and Single Servers only.
--server.telemetrics-api-max-requests
Introduced in: v3.11.0
Type: uint64
The maximum number of requests from arangosh that the telemetrics API responds to without rate-limiting.
Default: 3
Effective on Coordinators and Single Servers only.
--server.uid
Type: string
Switch to this user ID after reading configuration files.
--server.unavailability-queue-fill-grade
Introduced in: v3.6.10, v3.7.6
Type: double
The queue fill grade from which onwards the server is considered unavailable because of an overload (ratio, 0 = disable)
Default: 0.75
--server.validate-utf8-strings
Introduced in: v3.7.0
Type: boolean
Perform UTF-8 string validation for incoming JSON and VelocyPack data.
This option can be specified without a value to enable it.
Default: true
ssl
--ssl.cafile
Type: string
The CA file used for secure connections.
--ssl.cipher-list
Type: string
The SSL ciphers to use. See the OpenSSL documentation.
Default: HIGH:!EXPORT:!aNULL@STRENGTH
--ssl.ecdh-curve
Type: string
The SSL ECDH curve, see the output of “openssl ecparam -list_curves”.
Default: prime256v1
--ssl.keyfile
Type: string
The keyfile used for secure connections.
--ssl.options
Type: uint64
The SSL connection options. See the OpenSSL documentation.
Default: 2147485776
--ssl.prefer-http1-in-alpn
Type: boolean
Allows to let the server prefer HTTP/1.1 over HTTP/2 in ALPN protocol negotiations
This option can be specified without a value to enable it.
--ssl.protocol
Type: uint64
The SSL protocol (1 = SSLv2 (unsupported), 2 = SSLv2 or SSLv3 (negotiated), 3 = SSLv3, 4 = TLSv1, 5 = TLSv1.2, 6 = TLSv1.3, 9 = generic TLS (negotiated))
Default: 9
Possible values: 1, 2, 3, 4, 5, 6, 9
--ssl.require-peer-certificate
Enterprise Edition
Type: boolean
Require a peer certificate from the client before connecting.
This option can be specified without a value to enable it.
--ssl.server-name-indication
Introduced in: v3.7.0
Enterprise Edition
Type: string…
Use a different server keyfile and certificate if the client indicates a specific server name. Format: SERVERNAME=KEYFILENAME
--ssl.session-cache
Type: boolean
Enable the session cache for connections.
This option can be specified without a value to enable it.
tcp
--tcp.backlog-size
Type: uint64
Specify the size of the backlog for the listen
system call.
Default: 64
--tcp.reuse-address
Type: boolean
Try to reuse TCP port(s).
This option can be specified without a value to enable it.
Default: true
temp
--temp.intermediate-results-capacity
Introduced in: v3.10.0
Experimental
Type: uint64
The maximum capacity (in bytes) to use for ephemeral, intermediate results on disk (0 = unlimited).
--temp.intermediate-results-encryption
Introduced in: v3.10.0
Experimental Enterprise Edition
Type: boolean
Encrypt ephemeral, intermediate results on disk.
This option can be specified without a value to enable it.
--temp.intermediate-results-encryption-hardware-acceleration
Introduced in: v3.10.0
Experimental Enterprise Edition
Type: boolean
Use Intel intrinsics-based encryption, requiring a CPU with the AES-NI instruction set. If turned off, then OpenSSL is used, which may use hardware-accelerated encryption, too.
This option can be specified without a value to enable it.
Default: true
--temp.intermediate-results-path
Introduced in: v3.10.0
Experimental
Type: string
The path for storing ephemeral, intermediate results on disk (empty = not used).
--temp.intermediate-results-spillover-threshold-memory-usage
Introduced in: v3.10.0
Experimental
Type: uint64
The memory usage threshold (in bytes) after which a spillover from RAM to disk happens for intermediate results (threshold per query executor).
Default: 134217728
--temp.intermediate-results-spillover-threshold-num-rows
Introduced in: v3.10.0
Experimental
Type: uint64
The number of result rows after which a spillover from RAM to disk happens for intermediate results (threshold per query executor).
Default: 5000000
--temp.path
Type: string
The path for temporary files.
transaction
--transaction.streaming-idle-timeout
Introduced in: v3.8.0
Type: double
The idle timeout (in seconds) for Stream Transactions.
Default: 60
Effective on Coordinators and Single Servers only.
--transaction.streaming-lock-timeout
Introduced in: v3.6.5, v3.7.1
Type: double
The lock timeout (in seconds) in case of parallel access to the same Stream Transaction.
Default: 8
ttl
--ttl.frequency
Type: uint64
The frequency (in milliseconds) for the TTL background thread invocation (0 = turn the TTL background thread off entirely).
Default: 30000
--ttl.max-collection-removes
Type: uint64
The maximum number of documents to remove per collection in each invocation of the TTL thread.
Default: 100000
--ttl.max-total-removes
Type: uint64
The maximum number of documents to remove per invocation of the TTL thread.
Default: 1000000
web-interface
--web-interface.proxy-request-check
Type: boolean
Enable proxy request checking.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and Single Servers only.
--web-interface.trusted-proxy
Type: string…
The list of proxies to trust (can be IP or network). Make sure --web-interface.proxy-request-check
is enabled.
Effective on Coordinators and Single Servers only.
--web-interface.version-check
Type: boolean
Alert the user if new versions are available.
This option can be specified without a value to enable it.
Default: true
Effective on Coordinators and Single Servers only.