ArangoDB v3.8 reached End of Life (EOL) and is no longer supported.

This documentation is outdated. Please see the most recent version at docs.arangodb.com

ArangoDB Server Options

Usage: arangod [<options>]

The database directory can be specified as positional (unnamed) first parameter:

arangod /path/to/datadir

Or explicitly as named parameter:

arangod --database.directory /path/to/datadir

All other parameters need to be passed as named parameters. That is two hyphens followed by the option name, an equals sign or a space and finally the parameter value. The value needs to be wrapped in double quote marks if the value contains whitespace. Extra whitespace around = is allowed:

arangod --database.directory = "/path with spaces/to/datadir"

See Configuration if you want to translate startup parameters to configuration files or 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'

Default: ""


--configuration

Type: string

The configuration file or 'none'

Default: ""


--console

Type: boolean

Start a JavaScript emergency console

This option can be specified without a value to enable it.

Default: false


--daemon

Type: boolean

Background the server, running it as daemon

This option can be specified without a value to enable it.

Default: false


--default-language

Type: string

ISO-639 language code

Default: ""


--default-language-check

Introduced in: v3.8.0

Type: boolean

Check if default language matches stored language

This option can be specified without a value to enable it.

Default: true


--define

Type: string…

Define key=value for a @key@ entry in config file

Default: []


--dump-dependencies

Type: boolean

Dump dependency graph

This is a command, no value needs to be specified. The process terminates after executing the command.


--dump-options

Type: boolean

Dump configuration options in JSON format

This is a command, no value needs to be specified. The process terminates after executing the command.


--fortune

Type: boolean

Show fortune cookie on startup

This option can be specified without a value to enable it.

Default: false


--gid

Type: string

Switch to group-id after reading config files

Default: ""


--hund

Type: boolean

Make ArangoDB bark on startup

This option can be specified without a value to enable it.

Default: false


--log

Deprecated in: v3.5.0

Type: string…

The global or topic-specific log level

Default: ["info","info"]


--pid-file

Type: string

Pid-file in daemon mode

Default: ""


--supervisor

Type: boolean

Background the server, starts a supervisor

This option can be specified without a value to enable it.

Default: false


--uid

Type: string

Switch to user-id after reading config files

Default: ""


--version

Type: boolean

Reports the version and exits

This is a command, no value needs to be specified. The process terminates after executing the command.


--working-directory

Type: string

Working directory in daemon mode

Default: "/var/tmp"

Agency

--agency.activate

Type: boolean

Activate agency

This option can be specified without a value to enable it.

Default: false

Effective on Agents only.


--agency.compaction-keep-size

Type: uint64

Keep as many indices before compaction point

Default: 50000

Effective on Agents only.


--agency.compaction-step-size

Type: uint64

Step size between state machine compactions

Default: 1000

Effective on Agents only.


--agency.disaster-recovery-id

Type: string

Allows for specification of the id for this agent; dangerous option for disaster recover only!

Default: ""

Effective on Agents only.


--agency.election-timeout-max

Type: double

Maximum timeout before an agent calls for new election (in seconds)

Default: 5

Effective on Agents only.


--agency.election-timeout-min

Type: double

Minimum timeout before an agent calls for new election (in seconds)

Default: 1

Effective on Agents only.


--agency.endpoint

Type: string…

Agency endpoints

Default: []

Effective on Agents only.


--agency.max-append-size

Type: uint64

Maximum size of appendEntries document (# log entries)

Default: 250

Effective on Agents only.


--agency.my-address

Type: string

Which address to advertise to the outside

Default: ""

Effective on Agents only.


--agency.pool-size

Type: uint64

Number of agent pool

Default: 1

Effective on Agents only.


--agency.size

Type: uint64

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.

Default: false

Effective on Agents only.


--agency.supervision-frequency

Type: double

Arangodb cluster supervision frequency (in seconds)

Default: 1

Effective on Agents only.


--agency.supervision-grace-period

Type: double

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

Supervision time, after which a server is considered to be bad [s]

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.commit-threads

Introduced in: v3.7.5

Type: uint32

Upper limit to the allowed number of commit threads (0 == autodetect)

Default: 0


--arangosearch.commit-threads-idle

Introduced in: v3.7.5

Type: uint32

Upper limit to the allowed number of idle threads to use for commit tasks (0 == autodetect)

Default: 0


--arangosearch.consolidation-threads

Introduced in: v3.7.5

Type: uint32

Upper limit to the allowed number of consolidation threads (0 == autodetect)

Default: 0


--arangosearch.consolidation-threads-idle

Introduced in: v3.7.5

Type: uint32

Upper limit to the allowed number of idle threads to use for consolidation tasks (0 == autodetect)

Default: 0


--arangosearch.threads

Deprecated in: v3.7.5

Type: uint32

The exact number of threads to use for asynchronous tasks (0 == autodetect)

Default: 0


--arangosearch.threads-limit

Deprecated in: v3.7.5

Type: uint32

Upper limit to the autodetected number of threads to use for asynchronous tasks (0 == use default)

Default: 0

Audit

--audit.hostname

Enterprise Edition only

Type: string

Hostname to use

Default: ""


--audit.max-entry-length

Introduced in: v3.8.0, v3.7.9

Enterprise Edition only

Type: uint32

Maximum length of a log entry (in bytes)

Default: 134217728


--audit.output

Enterprise Edition only

Type: string…

Audit destination(s)

Default: []


--audit.queue

Introduced in: v3.8.0

Enterprise Edition only

Type: boolean

Queue audit log message before writing them out (can reduce latency)

This option can be specified without a value to enable it.

Default: false

Backup

--backup.api-enabled

Type: string

Whether the 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

Type: uint64

This option tells the hotbackup up-/download, how many files it should do in one call to rclone

Default: 100

Effective on DB-Servers and Single Servers only.


--backup.local-path-prefix

Type: string

This option restricts any backup target to a given path prefix

Default: "/"

Cache

--cache.rebalancing-interval

Type: uint64

Microseconds between rebalancing attempts

Default: 2000000


--cache.size

Type: uint64

Size of cache in bytes

Default: dynamic (e.g. 18004834304)

Cluster

--cluster.agency-endpoint

Type: string…

Agency endpoint to connect to

Default: []

Effective on Coordinators and DB-Servers only.


--cluster.api-jwt-policy

Introduced in: v3.8.0

Type: string

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.create-waits-for-sync-replication

Type: boolean

Active coordinator will wait for all replicas to create collection

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

Default replication factor for non-system collections

Default: 0

Effective on Coordinators only.


--cluster.force-one-shard

Introduced in: v3.6.0

Type: boolean

Force one-shard mode for all new collections

This option can be specified without a value to enable it.

Default: false

Effective on Coordinators only.


--cluster.index-create-timeout

Type: double

Amount of time (in seconds) the coordinator will wait for an index to be created before giving up

Default: 259200

Effective on Coordinators only.


--cluster.max-number-of-shards

Introduced in: v3.5.1

Type: uint32

Maximum number of shards when creating new collections (0 = unrestricted)

Default: 1000

Effective on Coordinators only.


--cluster.max-replication-factor

Introduced in: v3.6.0

Type: uint32

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

Minimum replication factor for new collections

Default: 1

Effective on Coordinators only.


--cluster.my-address

Type: string

This server's endpoint (cluster internal)

Default: ""

Effective on Coordinators and DB-Servers only.


--cluster.my-advertised-endpoint

Type: string

This server's advertised endpoint (e.g. external IP address or load balancer, optional)

Default: ""

Effective on Coordinators and DB-Servers only.


--cluster.my-role

Type: string

This server's role

Default: ""


--cluster.require-persisted-id

Type: boolean

If set to true, then the instance will only start if a UUID file is found in the database on startup. Setting this option will make sure the instance is started using an already existing database directory and not a new one. For the first start, the UUID file must either be created manually or the option must be set to false for the initial startup

This option can be specified without a value to enable it.

Default: false


--cluster.resign-leadership-on-shutdown

Type: boolean

Create resign leader ship job for this dbsever on shutdown

This option can be specified without a value to enable it.

Default: false

Effective on DB-Servers only.


--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 will be at most this value (in seconds)

Default: 3600


--cluster.synchronous-replication-timeout-minimum

Type: double

All synchronous replication timeouts will be 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

Default replication factor for system collections

Default: 2

Effective on Coordinators only.


--cluster.upgrade

Type: string

Perform a cluster upgrade if necessary (auto = perform upgrade and shut down only if --database.auto-upgrade true is set, disable = never perform upgrade, force = 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”


--cluster.write-concern

Introduced in: v3.6.0

Type: uint32

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.

Default: false


--database.check-version

Type: boolean

Checks the versions 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

Path to the database directory

Default: ""


--database.force-sync-properties

Type: boolean

Force syncing of collection properties to disk, will use waitForSync value of collection when turned off

This option can be specified without a value to enable it.

Default: true


--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.

Default: false


--database.init-database

Type: boolean

Initializes 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

Type: boolean

Perform IO heartbeat to test underlying volume

This option can be specified without a value to enable it.

Default: true


--database.old-system-collections

Introduced in: v3.6.9, v3.7.5

Deprecated in: v3.8.0

Type: boolean

Create and use deprecated system collection (_modules, _fishbowl)

This option can be specified without a value to enable it.

Default: false


--database.password

Type: string

Initial password of root user

Default: ""


--database.required-directory-state

Type: string

Required state of database directory at startup (non-existing: database directory must not exist, existing: database directory must exist, empty: database directory must exist but be empty, populated: database directory must exist and contain specific files already, any: any state allowed)

Default: "any"

Possible values: “any”, “empty”, “existing”, “non-existing”, “populated”


--database.restore-admin

Type: boolean

Resets the admin users and sets 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 a database upgrade

This option can be specified without a value to enable it.

Default: true


--database.wait-for-sync

Type: boolean

Default wait-for-sync behavior, can be overwritten when creating a collection

This option can be specified without a value to enable it.

Default: false

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.

Default: true

Effective on Coordinators and Single Servers only.


--foxx.api

Introduced in: v3.5.0

Type: boolean

Enables 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.force-update-on-startup

Introduced in: v3.7.5

Type: boolean

Ensure all Foxx services are synchronized before completeing the boot sequence

This option can be specified without a value to enable it.

Default: false

Effective on Coordinators and Single Servers only.


--foxx.queues

Type: boolean

Enable 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

Poll interval (in seconds) for Foxx queue manager

Default: 1

Effective on Coordinators and Single Servers only.


--foxx.store

Introduced in: v3.5.0

Type: boolean

Enables Foxx store in web interface

This option can be specified without a value to enable it.

Default: true

Effective on Coordinators and Single Servers only.

Frontend

--frontend.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.


--frontend.trusted-proxy

Type: string…

List of proxies to trust (may be IP or network). Make sure --frontend.proxy-request-check is enabled

Default: []

Effective on Coordinators and Single Servers only.


--frontend.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.

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.

Default: false


--http.hide-product-header

Deprecated in: v3.8.0

Type: boolean

Do not expose "Server: ArangoDB" header in HTTP responses

This option can be specified without a value to enable it.

Default: false


--http.keep-alive-timeout

Type: double

Keep-alive timeout in seconds

Default: 300


--http.permanently-redirect-root

Introduced in: v3.7.12

Type: boolean

If true, use a permanent redirect. If false, use a temporary

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 root URL

Default: "/_admin/aardvark/index.html"


--http.trusted-origin

Type: string…

Trusted origin URLs for CORS requests with credentials

Default: []

JavaScript

--javascript.allow-admin-execute

Type: boolean

For testing purposes allow '_admin/execute', NEVER enable on production

This option can be specified without a value to enable it.

Default: false

Effective on Coordinators and Single Servers only.


--javascript.allow-external-process-control

Introduced in: v3.5.0

Type: boolean

Allow execution and control of external processes from within JavaScript actions

This option can be specified without a value to enable it.

Default: false

Effective on Coordinators and Single Servers only.


--javascript.allow-port-testing

Introduced in: v3.5.0

Type: boolean

Allow testing of ports from within JavaScript actions

This option can be specified without a value to enable it.

Default: false

Effective on Coordinators and Single Servers only.


--javascript.app-path

Type: string

Directory for Foxx applications

Default: "./js/apps"

Effective on Coordinators and Single Servers only.


--javascript.copy-installation

Type: boolean

Copy contents of 'javascript.startup-directory' on first start

This option can be specified without a value to enable it.

Default: false

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 @arangodb/request module in JavaScript actions

Default: []

Effective on Coordinators and Single Servers only.


--javascript.endpoints-denylist

Introduced in: v3.5.0

Type: string…

Endpoints that cannot be connected to via @arangodb/request module in JavaScript actions (if not in allowlist)

Default: []

Effective on Coordinators and Single Servers only.


--javascript.environment-variables-allowlist

Introduced in: v3.5.0

Type: string…

Environment variables that will be accessible in JavaScript

Default: []

Effective on Coordinators and Single Servers only.


--javascript.environment-variables-denylist

Introduced in: v3.5.0

Type: string…

Environment variables that will be inaccessible in JavaScript (if not in allowlist)

Default: []

Effective on Coordinators and Single Servers only.


--javascript.files-allowlist

Introduced in: v3.5.0

Type: string…

Filesystem paths that will be accessible from within JavaScript actions

Default: []

Effective on Coordinators and Single Servers only.


--javascript.gc-frequency

Type: double

JavaScript time-based garbage collection frequency (each x seconds)

Default: 60

Effective on Coordinators and Single Servers only.


--javascript.gc-interval

Type: uint64

JavaScript request-based garbage collection interval (each x requests)

Default: 2000

Effective on Coordinators and Single Servers only.


--javascript.harden

Introduced in: v3.5.0

Type: boolean

Disables access to JavaScript functions in the internal module: getPid() and logLevel()

This option can be specified without a value to enable it.

Default: false

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 scripts and exit

Default: []


--javascript.script-parameter

Type: string…

Script parameter

Default: []


--javascript.startup-directory

Type: string

Path to the directory containing 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 will be allowed and exposed to JavaScript

Default: []

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 will not be exposed (if not in allowlist) to JavaScript actions

Default: []

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.v8-contexts

Type: uint64

Maximum number of V8 contexts that are created for executing JavaScript actions

Default: 0

Effective on Coordinators and Single Servers only.


--javascript.v8-contexts-max-age

Type: double

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

Maximum number of invocations for each V8 context before it is disposed

Default: 0

Effective on Coordinators and Single Servers only.


--javascript.v8-contexts-minimum

Type: uint64

Minimum number of V8 contexts that keep available for executing JavaScript actions

Default: 0

Effective on Coordinators and Single Servers only.


--javascript.v8-max-heap

Type: uint64

Maximal heap size (in MB)

Default: 3072


--javascript.v8-options

Type: string…

Options to pass to v8

Default: []

LDAP

--ldap.allow-offline

Enterprise Edition only

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.

Default: false


--ldap.async-connect

Enterprise Edition only

Type: boolean

Whether or not the connection to the LDAP library will be done asynchronously

This option can be specified without a value to enable it.

Default: false


--ldap.basedn

Enterprise Edition only

Type: string

Ldap basedn, eg. dc=example,dc=com

Default: ""


--ldap.binddn

Enterprise Edition only

Type: string

Ldap binddn, eg. cn=admin,dc=example,dc=com

Default: ""


--ldap.bindpasswd

Enterprise Edition only

Type: string

Ldap bindpassword, eg. admin

Default: ""


--ldap.debug

Enterprise Edition only

Type: boolean

Turn on internal OpenLDAP library output (warning: will print to stdout)

This option can be specified without a value to enable it.

Default: false


--ldap.enabled

Enterprise Edition only

Type: boolean

Enable LDAP

This option can be specified without a value to enable it.

Default: false


--ldap.network-timeout

Enterprise Edition only

Type: double

Timeout value (in seconds) after which network operations following the initial connection return in case of no activity (a value of 0 means default timeout)

Default: 0


--ldap.port

Enterprise Edition only

Type: uint16

Port to use

Default: 389


--ldap.prefix

Enterprise Edition only

Type: string

Ldap prefix, eg. uid= xor dn= xor cn=

Default: ""


--ldap.referrals

Enterprise Edition only

Type: boolean

Whether or not the LDAP library should implicitly chase referrals

This option can be specified without a value to enable it.

Default: false


--ldap.refresh-rate

Enterprise Edition only

Type: double

Refresh user settings after this time (in seconds)

Default: 300


--ldap.responsible-for

Introduced in: v3.7.11

Enterprise Edition only

Type: string

A file of usernames this provider is responsible for. If empty, it will be responsible for all users

Default: ""


--ldap.restart

Enterprise Edition only

Type: boolean

Whether or not the LDAP library should implicitly restart connections

This option can be specified without a value to enable it.

Default: false


--ldap.retries

Enterprise Edition only

Type: uint32

Number of tries to attempt connecting to the LDAP server. Setting it to values greater than one will retry connecting in case the LDAP server is unavailable or denies the connection

Default: 1


--ldap.roles-attribute-name

Enterprise Edition only

Type: string

Ldap attributename where the role are located.

Default: ""


--ldap.roles-exclude

Enterprise Edition only

Type: string

Regexp to exclude groups. Leave empty to exclude none.

Default: ""


--ldap.roles-include

Enterprise Edition only

Type: string

Regexp to include groups. Leave empty to include all.

Default: ""


Enterprise Edition only

Type: string

Ldap search for roles; '{USER}' is replaced by the 'dn' of the user.

Default: ""


--ldap.roles-transformation

Enterprise Edition only

Type: string…

Regexp to normalizer role name, e.g. '/^ (.[^ ]])*/$2/'

Default: []


--ldap.search-attribute

Enterprise Edition only

Type: string

Ldap search attribute, eg. uid

Default: "uid"


--ldap.search-filter

Enterprise Edition only

Type: string

Ldap search filter, eg. (objectClass=simpleSecurityObject)

Default: "objectClass=*"


--ldap.search-scope

Enterprise Edition only

Type: string

Ldap search scope, one of base, one, sub

Default: "sub"


--ldap.serialize-timeout

Enterprise Edition only

Type: double

Maximum amount of time (in seconds) that will be waited for the serialization mutex

Default: 5


--ldap.serialized

Enterprise Edition only

Type: boolean

Whether or not calls into the LDAP library should be serialized. This option can be used to work around thread-unsafe LDAP library functionality

This option can be specified without a value to enable it.

Default: false


--ldap.server

Enterprise Edition only

Type: string

Server to use

Default: ""


--ldap.suffix

Enterprise Edition only

Type: string

Ldap suffix, eg. ,dc=example,dc=com

Default: ""


--ldap.superuser-role

Enterprise Edition only

Type: string

Role mapping to the super-users

Default: ""


--ldap.timeout

Enterprise Edition only

Type: double

Timeout value (in seconds) for synchronous LDAP API calls (a value of 0 means default timeout)

Default: 0


--ldap.tls

Enterprise Edition only

Type: boolean

Enable TLS

This option can be specified without a value to enable it.

Default: false


--ldap.tls-cacert-dir

Enterprise Edition only

Type: string

Ldap tls cacert dir

Default: ""


--ldap.tls-cacert-file

Enterprise Edition only

Type: string

Ldap tls cacert file

Default: ""


--ldap.tls-cert-check-strategy

Enterprise Edition only

Type: string

Ldap tls cert check strategy, one of never, hard, demand, allow, try

Default: "hard"


--ldap.tls-version

Enterprise Edition only

Type: string

Ldap tls version, one of 1.0, 1.1, 1.2

Default: "1.2"


--ldap.url

Enterprise Edition only

Type: string

Ldap url, eg. ldap://example.com:389/dc=example,dc=com?uid?sub

Default: ""

LDAP2 (secondary server)

The ldap2.* options are identical to the ldap.* options, but configure a secondary LDAP server. See LDAP Secondary server options (ldap2).

--ldap2.allow-offline

Enterprise Edition only

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.

Default: false


--ldap2.async-connect

Enterprise Edition only

Type: boolean

Whether or not the connection to the LDAP library will be done asynchronously

This option can be specified without a value to enable it.

Default: false


--ldap2.basedn

Enterprise Edition only

Type: string

Ldap basedn, eg. dc=example,dc=com

Default: ""


--ldap2.binddn

Enterprise Edition only

Type: string

Ldap binddn, eg. cn=admin,dc=example,dc=com

Default: ""


--ldap2.bindpasswd

Enterprise Edition only

Type: string

Ldap bindpassword, eg. admin

Default: ""


--ldap2.debug

Enterprise Edition only

Type: boolean

Turn on internal OpenLDAP library output (warning: will print to stdout)

This option can be specified without a value to enable it.

Default: false


--ldap2.enabled

Enterprise Edition only

Type: boolean

Enable LDAP

This option can be specified without a value to enable it.

Default: false


--ldap2.network-timeout

Enterprise Edition only

Type: double

Timeout value (in seconds) after which network operations following the initial connection return in case of no activity (a value of 0 means default timeout)

Default: 0


--ldap2.port

Enterprise Edition only

Type: uint16

Port to use

Default: 389


--ldap2.prefix

Enterprise Edition only

Type: string

Ldap prefix, eg. uid= xor dn= xor cn=

Default: ""


--ldap2.referrals

Enterprise Edition only

Type: boolean

Whether or not the LDAP library should implicitly chase referrals

This option can be specified without a value to enable it.

Default: false


--ldap2.refresh-rate

Enterprise Edition only

Type: double

Refresh user settings after this time (in seconds)

Default: 300


--ldap2.responsible-for

Introduced in: v3.7.11

Enterprise Edition only

Type: string

A file of usernames this provider is responsible for. If empty, it will be responsible for all users

Default: ""


--ldap2.restart

Enterprise Edition only

Type: boolean

Whether or not the LDAP library should implicitly restart connections

This option can be specified without a value to enable it.

Default: false


--ldap2.retries

Enterprise Edition only

Type: uint32

Number of tries to attempt connecting to the LDAP server. Setting it to values greater than one will retry connecting in case the LDAP server is unavailable or denies the connection

Default: 1


--ldap2.roles-attribute-name

Enterprise Edition only

Type: string

Ldap attributename where the role are located.

Default: ""


--ldap2.roles-exclude

Enterprise Edition only

Type: string

Regexp to exclude groups. Leave empty to exclude none.

Default: ""


--ldap2.roles-include

Enterprise Edition only

Type: string

Regexp to include groups. Leave empty to include all.

Default: ""


Enterprise Edition only

Type: string

Ldap search for roles; '{USER}' is replaced by the 'dn' of the user.

Default: ""


--ldap2.roles-transformation

Enterprise Edition only

Type: string…

Regexp to normalizer role name, e.g. '/^ (.[^ ]])*/$2/'

Default: []


--ldap2.search-attribute

Enterprise Edition only

Type: string

Ldap search attribute, eg. uid

Default: "uid"


--ldap2.search-filter

Enterprise Edition only

Type: string

Ldap search filter, eg. (objectClass=simpleSecurityObject)

Default: "objectClass=*"


--ldap2.search-scope

Enterprise Edition only

Type: string

Ldap search scope, one of base, one, sub

Default: "sub"


--ldap2.serialize-timeout

Enterprise Edition only

Type: double

Maximum amount of time (in seconds) that will be waited for the serialization mutex

Default: 5


--ldap2.serialized

Enterprise Edition only

Type: boolean

Whether or not calls into the LDAP library should be serialized. This option can be used to work around thread-unsafe LDAP library functionality

This option can be specified without a value to enable it.

Default: false


--ldap2.server

Enterprise Edition only

Type: string

Server to use

Default: ""


--ldap2.suffix

Enterprise Edition only

Type: string

Ldap suffix, eg. ,dc=example,dc=com

Default: ""


--ldap2.superuser-role

Enterprise Edition only

Type: string

Role mapping to the super-users

Default: ""


--ldap2.timeout

Enterprise Edition only

Type: double

Timeout value (in seconds) for synchronous LDAP API calls (a value of 0 means default timeout)

Default: 0


--ldap2.tls

Enterprise Edition only

Type: boolean

Enable TLS

This option can be specified without a value to enable it.

Default: false


--ldap2.tls-cacert-dir

Enterprise Edition only

Type: string

Ldap tls cacert dir

Default: ""


--ldap2.tls-cacert-file

Enterprise Edition only

Type: string

Ldap tls cacert file

Default: ""


--ldap2.tls-cert-check-strategy

Enterprise Edition only

Type: string

Ldap tls cert check strategy, one of never, hard, demand, allow, try

Default: "hard"


--ldap2.tls-version

Enterprise Edition only

Type: string

Ldap tls version, one of 1.0, 1.1, 1.2

Default: "1.2"


--ldap2.url

Enterprise Edition only

Type: string

Ldap url, eg. ldap://example.com:389/dc=example,dc=com?uid?sub

Default: ""

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

Type: boolean

Escape characters when logging

This option can be specified without a value to enable it.

Default: true


--log.file

Type: string

Shortcut for '--log.output file://<filename>'

Default: ""


--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

Default: ""


--log.file-mode

Introduced in: v3.4.5

Type: string

Mode to use for new log file, umask will be applied as well

Default: ""


--log.force-direct

Type: boolean

Do not start a seperate thread for logging

This option can be specified without a value to enable it.

Default: false


--log.foreground-tty

Type: boolean

Also log to tty if backgrounded

This option can be specified without a value to enable it.

Default: dynamic (e.g. false)


--log.hostname

Introduced in: v3.8.0

Type: string

Hostname to use in log message (empty for none, use 'auto' to automatically figure out hostname)

Default: ""


--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 in-memory log appender, which can be queried via API and web UI

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 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.

Default: false


--log.level

Type: string…

The global or topic-specific log level

Default: ["info","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.

Default: false


--log.max-entry-length

Introduced in: v3.7.9

Type: uint32

Maximum length of a log entry (in bytes)

Default: 134217728


--log.output

Type: string…

Log destination(s), e.g. file:///path/to/file (any '$PID' will be replaced with the process id)

Default: []


--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.

Default: false


--log.prefix

Type: string

Prefix log message with this string

Default: ""


--log.process

Introduced in: v3.8.0

Type: boolean

Show process identifier (pid) in log message

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 server role

This option can be specified without a value to enable it.

Default: false


--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.thread

Type: boolean

Show thread identifier in log message

This option can be specified without a value to enable it.

Default: false


--log.thread-name

Type: boolean

Show thread name in log message

This option can be specified without a value to enable it.

Default: false


--log.time-format

Introduced in: v3.5.0

Type: string

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-millis”


--log.use-json-format

Introduced in: v3.8.0

Type: boolean

Use json output format

This option can be specified without a value to enable it.

Default: false


--log.use-local-time

Deprecated in: v3.5.0

Type: boolean

Use local timezone instead of UTC

This option can be specified without a value to enable it.

Default: false


--log.use-microtime

Deprecated in: v3.5.0

Type: boolean

Use microtime instead

This option can be specified without a value to enable it.

Default: false

Network

--network.idle-connection-ttl

Introduced in: v3.6.0

Type: uint64

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

Number of network IO threads for cluster-internal communication

Default: 2


--network.max-open-connections

Introduced in: v3.6.0

Type: uint64

Max open TCP connections for cluster-internal communication per endpoint

Default: 1024


--network.max-requests-in-flight

Introduced in: v3.8.0

Type: uint64

Controls 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

Type: string

Network protocol to use for cluster-internal communication

Default: ""

Possible values: “”, “h2”, “http”, “http2”, “vst”


--network.verify-hosts

Introduced in: v3.6.0

Type: boolean

Verify hosts when using TLS in cluster-internal communication

This option can be specified without a value to enable it.

Default: false

Nonce

--nonce.size

Type: uint64

The size of the hash array for nonces

Default: 4194304

Query

--query.allow-collections-in-expressions

Introduced in: v3.8.0

Type: boolean

Allow full collections to be used in AQL expressions

This option can be specified without a value to enable it.

Default: true


--query.cache-entries

Type: uint64

Maximum number of results in query result cache per database

Default: 128


--query.cache-entries-max-size

Type: uint64

Maximum cumulated size of results in query result cache per database

Default: 268435456


--query.cache-entry-max-size

Type: uint64

Maximum size of an invidiual result entry in query result cache

Default: 16777216


--query.cache-include-system-collections

Type: boolean

Whether or not to include system collection queries in the query result cache

This option can be specified without a value to enable it.

Default: false


--query.cache-mode

Type: string

Mode for the AQL query result cache (on, off, demand)

Default: "off"


--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.

Default: false


--query.global-memory-limit

Introduced in: v3.8.0

Type: uint64

Memory threshold for all AQL queries combined (in bytes, 0 = no limit)

Default: dynamic (e.g. 60075124900)


--query.max-parallelism

Introduced in: v3.7.1

Enterprise Edition only

Type: uint64

Maximum number of threads to use for a single query; 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

Runtime threshold for AQL queries (in seconds, 0 = no limit)

Default: 0


--query.memory-limit

Type: uint64

Memory threshold per AQL query (in bytes, 0 = no limit)

Default: dynamic (e.g. 44500092519)


--query.memory-limit-override

Introduced in: v3.8.0

Type: boolean

Allow increasing 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

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 (use rule name prefixed with '-' for disabling, '+' for enabling)

Default: []


--query.parallelize-gather-writes

Introduced in: v3.6.0

Type: boolean

Enable write parallelization for gather nodes

This option can be specified without a value to enable it.

Default: true


--query.parallelize-traversals

Introduced in: v3.7.1

Enterprise Edition only

Type: boolean

Enable traversal parallelization

This option can be specified without a value to enable it.

Default: true


--query.registry-ttl

Type: double

Default time-to-live of cursors and query snippets (in seconds); if <= 0, value will default to 30 for single-server instances or 600 for cluster instances

Default: 0


--query.require-with

Introduced in: 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.

Default: false


--query.slow-streaming-threshold

Type: double

Threshold for slow streaming AQL queries (in seconds)

Default: 10


--query.slow-threshold

Type: double

Threshold for slow AQL queries (in seconds)

Default: 10


--query.smart-joins

Introduced in: v3.4.5

Enterprise Edition only

Type: boolean

Enable 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 vars with 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 with AQL queries

This option can be specified without a value to enable it.

Default: false


--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

Random number generator to use (1 = MERSENNE, 2 = RANDOM, 3 = URANDOM, 4 = COMBINED (not for Windows), 5 = WinCrypt (Windows only)

Default: 1

Possible values: 1, 2, 3, 4

Rclone

--rclone.executable

Type: string

Rclone executable used for up and download of backups

Default: ""

Replication

--replication.active-failover

Type: boolean

Enable active-failover during asynchronous replication

This option can be specified without a value to enable it.

Default: false


--replication.auto-start

Type: boolean

Switch to enable or disable the automatic start of replication appliers

This option can be specified without a value to enable it.

Default: true


--replication.automatic-failover

Type: boolean

Please use --replication.active-failover instead

This option can be specified without a value to enable it.

Default: false


--replication.connect-timeout

Introduced in: v3.4.9, v3.5.4

Type: double

Default timeout value for replication connection attempts (in seconds)

Default: 10


--replication.max-parallel-tailing-invocations

Introduced in: v3.5.0

Type: uint64

Maximum number of concurrently allowed WAL tailing invocations (0 = unlimited)

Default: 0


--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 second run

Default: 1000000


--replication.request-timeout

Introduced in: v3.4.9, v3.5.4

Type: double

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 is a highly configurable key-value store used to power ArangoDB’s RocksDB storage engine. Most of the options on this page are pass-through options to the underlying RocksDB instance, and only a few of its default settings are changed.

--rocksdb.allow-fallocate

Introduced in: v3.4.5

Type: boolean

If true, allow RocksDB to use fallocate calls. if false, fallocate calls are bypassed

This option can be specified without a value to enable it.

Default: true


--rocksdb.block-align-data-blocks

Type: boolean

If true, aligns data blocks on lesser of page size and block size

This option can be specified without a value to enable it.

Default: false


--rocksdb.block-cache-shard-bits

Type: int64

Number of shard bits to use for block cache (use -1 for default value)

Default: -1


--rocksdb.block-cache-size

Type: uint64

Size of block cache in bytes

Default: dynamic (e.g. 21605801164)


--rocksdb.cache-index-and-filter-blocks

Introduced in: v3.7.1

Type: boolean

If turned on, the RocksDB block cache quota will also include RocksDB memtable sizes

This option can be specified without a value to enable it.

Default: false


--rocksdb.cache-index-and-filter-blocks-with-high-priority

Introduced in: v3.7.1

Type: boolean

If true and --rocksdb.cache-index-and-filter-blocks is also true, 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


--rocksdb.compaction-read-ahead-size

Type: uint64

If non-zero, we perform bigger reads when doing compaction. If you're running RocksDB on spinning disks, you should set this to at least 2MB. that way RocksDB's compaction is doing sequential instead of random reads.

Default: 2097152


--rocksdb.create-sha-files

Enterprise Edition only

Type: boolean

Enable 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

True to enable rocksdb debug logging

This option can be specified without a value to enable it.

Default: false

Effective on DB-Servers and Single Servers only.


--rocksdb.delayed-write-rate

Type: uint64

Limited write rate to DB (in bytes per second) if we are writing to the last mem-table allowed and we allow more than 3 mem-tables, or if we have surpassed a certain number of level-0 files and need to slowdown writes

Default: 0


--rocksdb.dynamic-level-bytes

Type: boolean

If true, 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


--rocksdb.edge-cache

Introduced in: v3.6.4

Type: boolean

Use 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-pipelined-write

Type: boolean

If true, 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


--rocksdb.enable-statistics

Type: boolean

Whether or not RocksDB statistics should be turned on

This option can be specified without a value to enable it.

Default: false


--rocksdb.encryption-gen-internal-key

Introduced in: v3.7.1

Enterprise Edition only

Type: boolean

Generate internal encryption-at-rest key.

This option can be specified without a value to enable it.

Default: false


--rocksdb.encryption-hardware-acceleration

Introduced in: v3.8.0

Enterprise Edition only

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-accelarated encryption too.

This option can be specified without a value to enable it.

Default: false


--rocksdb.encryption-key-generator

Enterprise Edition only

Type: string

Program providing the encryption key on stdout. If set, encryption will be enabled.

Default: ""


--rocksdb.encryption-key-rotation

Introduced in: v3.7.1

Enterprise Edition only

Type: boolean

Allow encryption key rotation

This option can be specified without a value to enable it.

Default: false


--rocksdb.encryption-keyfile

Enterprise Edition only

Type: string

File containing encryption key. If set, encryption will be enabled.

Default: ""


--rocksdb.encryption-keyfolder

Introduced in: v3.7.0

Enterprise Edition only

Type: string

Folder containing all possible user encryption keys. All keys will be used to decrypt the internal keystore.

Default: ""


--rocksdb.enforce-block-cache-size-limit

Type: boolean

If true, strictly enforces the block cache size limit

This option can be specified without a value to enable it.

Default: false


--rocksdb.exclusive-writes

Introduced in: v3.5.4

Deprecated in: v3.8.0

Type: boolean

If true, writes are exclusive. This allows the RocksDB engine to mimic the collection locking behavior of the now-removed MMFiles storage engine, but will inhibit concurrent write operations

This option can be specified without a value to enable it.

Default: false


--rocksdb.intermediate-commit-count

Type: uint64

An intermediate commit will be performed automatically when this number of operations is reached in a transaction

Default: 1000000


--rocksdb.intermediate-commit-size

Type: uint64

An intermediate commit will be performed automatically when a transaction has accumulated operations of this size (in bytes)

Default: 536870912


--rocksdb.level0-compaction-trigger

Type: int64

Number of level-0 files that triggers a compaction

Default: 2


--rocksdb.level0-slowdown-trigger

Type: int64

Number of level-0 files that triggers a write slowdown

Default: 16


--rocksdb.level0-stop-trigger

Type: int64

Number of level-0 files that triggers a full write stop

Default: 256


--rocksdb.limit-open-files-at-startup

Introduced in: v3.4.5

Type: boolean

Limit the amount of .sst files RocksDB will inspect at startup, in order to startup reduce IO

This option can be specified without a value to enable it.

Default: false


--rocksdb.max-background-jobs

Type: int32

Maximum number of concurrent background jobs (compactions and flushes)

Default: dynamic (e.g. 36)


--rocksdb.max-bytes-for-level-base

Type: uint64

If not using dynamic level sizes, this controls the maximum total data size for level-1

Default: 268435456


--rocksdb.max-bytes-for-level-multiplier

Type: double

If not using dynamic level sizes, the maximum number of bytes for level L can be calculated as max-bytes-for-level-base * (max-bytes-for-level-multiplier ^ (L-1))

Default: 10


--rocksdb.max-parallel-compactions

Introduced in: v3.7.11

Type: uint64

Maximum number of parallel compactions jobs

Default: 2


--rocksdb.max-subcompactions

Type: uint64

Maximum number of concurrent subjobs for a background compaction

Default: 2


--rocksdb.max-total-wal-size

Type: uint64

Maximum total size of WAL files that will force flush stale column families

Default: 83886080


--rocksdb.max-transaction-size

Type: uint64

Transaction size limit (in bytes)

Default: 18446744073709551615


--rocksdb.max-write-buffer-number

Type: uint64

Maximum number of write buffers that build up in memory (default: number of column families + 2 = 9 write buffers). You can increase the amount only

Default: 9


--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

Default: 0


--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

Default: 0


--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

Default: 0


--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

Default: 0


--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

Default: 0


--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

Default: 0


--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

Default: 0


--rocksdb.max-write-buffer-size-to-maintain

Introduced in: v3.7.3

Type: int64

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))

Default: 0


--rocksdb.min-write-buffer-number-to-merge

Type: uint64

Minimum number of write buffers that will be merged together before writing to storage

Default: dynamic (e.g. 1)


--rocksdb.minimum-disk-free-bytes

Introduced in: v3.8.0

Type: uint64

Minimum number of free disk bytes for considering the server healthy in health checks (set to 0 to 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

Minimum percentage of free disk space for considering the server healthy in health checks (set to 0 to disable the check)

Default: 0.01

Effective on DB-Servers and Single Servers only.


--rocksdb.num-levels

Type: uint64

Number of levels for the database

Default: 7


--rocksdb.num-threads-priority-high

Type: uint32

Number of threads for high priority operations (e.g. flush)

Default: 0


--rocksdb.num-threads-priority-low

Type: uint32

Number of threads for low priority operations (e.g. compaction)

Default: 0


--rocksdb.num-uncompressed-levels

Type: uint64

Number of uncompressed levels for the database

Default: 2


--rocksdb.optimize-filters-for-hits

Type: boolean

This flag specifies that the implementation should optimize the filters mainly for cases where keys are found rather than also optimize for keys missed. This would be used in cases where the application knows that there are very few misses or the performance in the case of misses is not important

This option can be specified without a value to enable it.

Default: false


--rocksdb.pending-compactions-slowdown-trigger

Introduced in: v3.8.5

Type: uint64

Number of pending compaction bytes that triggers a write slowdown

Default: 131072

Effective on DB-Servers and Single Servers only.


--rocksdb.pending-compactions-stop-trigger

Introduced in: v3.8.5

Type: uint64

Number of pending compaction bytes that triggers a full write stop

Default: 17179869184

Effective on DB-Servers and Single Servers only.


--rocksdb.pin-l0-filter-and-index-blocks-in-cache

Introduced in: v3.7.1

Type: boolean

If true and --rocksdb.cache-index-and-filter-blocks is also true, 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: false


--rocksdb.pin-top-level-index-and-filter

Introduced in: v3.7.1

Type: boolean

If true and --rocksdb.cache-index-and-filter-blocks is also true, 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


--rocksdb.recycle-log-file-num

Type: boolean

If true, keep a pool of log files around for recycling

This option can be specified without a value to enable it.

Default: false


--rocksdb.sync-delay-threshold

Introduced in: v3.6.8, v3.7.5

Type: uint64

Threshold value for self-observation of WAL disk syncs. any WAL disk sync longer ago than this threshold will trigger a warning (in milliseconds, use 0 for no warnings)

Default: 5000

Effective on DB-Servers and Single Servers only.


--rocksdb.sync-interval

Type: uint64

Interval for automatic, non-requested disk syncs (in milliseconds, use 0 to turn automatic syncing off)

Default: 100

Effective on DB-Servers and Single Servers only.


--rocksdb.table-block-size

Type: uint64

Approximate size (in bytes) of user data packed per block

Default: 16384


--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


--rocksdb.target-file-size-multiplier

Introduced in: v3.7.1

Type: uint64

Multiplier for --rocksdb.target-file-size, a value of 1 means that files in different levels will have the same size

Default: 1


--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

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

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

Maximum write rate enforced by throttle (in bytes per second, 0 = unlimited)

Default: 0

Effective on DB-Servers and Single Servers only.


--rocksdb.throttle-scaling-factor

Introduced in: v3.8.5

Type: uint64

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

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

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

Maximum total size of in-memory write buffers (0 = unbounded)

Default: dynamic (e.g. 28807734886)


--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


--rocksdb.use-direct-io-for-flush-and-compaction

Type: boolean

Use O_DIRECT for flush and compaction

This option can be specified without a value to enable it.

Default: false


--rocksdb.use-direct-reads

Type: boolean

Use O_DIRECT for reading files

This option can be specified without a value to enable it.

Default: false


--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.

Default: false


--rocksdb.use-fsync

Type: boolean

Issue an fsync when writing to disk (set to true for issuing fdatasync only)

This option can be specified without a value to enable it.

Default: false


--rocksdb.wal-archive-size-limit

Type: uint64

Maximum total size (in bytes) of archived WAL files (0 = unlimited)

Default: 0

Effective on DB-Servers and Single Servers only.


--rocksdb.wal-directory

Type: string

Optional path to the RocksDB WAL directory. If not set, the WAL directory will be located inside the regular data directory

Default: ""


--rocksdb.wal-file-timeout

Type: double

Timeout after which unused WAL files are deleted

Default: 10

Effective on DB-Servers and Single Servers only.


--rocksdb.wal-file-timeout-initial

Type: double

Initial timeout after which unused WAL files deletion kicks in after server start

Default: 180

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.

Default: false


--rocksdb.write-buffer-size

Type: uint64

Amount of data to build up in memory before converting to a sorted on-disk file (0 = disabled)

Default: 67108864

Server

--server.allow-use-database

Type: boolean

Allow change of database in REST actions, only needed for unittests

This option can be specified without a value to enable it.

Default: false


--server.authentication

Type: boolean

Enable 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

This option can be specified without a value to enable it.

Default: true


--server.authentication-timeout

Type: double

Timeout for the authentication cache in seconds (0 = indefinitely)

Default: 0


--server.authentication-unix-sockets

Type: boolean

Authentication for requests via UNIX domain sockets

This option can be specified without a value to enable it.

Default: true


--server.descriptors-minimum

Type: uint64

Minimum number of file descriptors needed to start (0 = no minimum)

Default: 8192


--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.export-metrics-api

Introduced in: v3.6.0

Type: boolean

Turn metrics API on or off

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

Turn metrics for document read/write metrics on or off

This option can be specified without a value to enable it.

Default: false


--server.flush-interval

Type: uint64

Interval (in microseconds) for flushing data

Default: 1000000


--server.gid

Type: string

Switch to group-id after reading config files

Default: ""


--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.

Default: false


--server.io-threads

Type: uint64

Number of threads used to handle IO

Default: dynamic (e.g. 9)


--server.jwt-secret

Deprecated in: v3.3.22, v3.4.2

Type: string

Secret to use when doing jwt authentication

Default: ""


--server.jwt-secret-folder

Introduced in: v3.7.0

Enterprise Edition only

Type: string

Folder containing one or more jwt secret files to use for jwt authentication. Files are sorted alphabetically: First secret is used for signing + verifying JWT tokens. The latter secrets are only used for verifying.

Default: ""


--server.jwt-secret-keyfile

Type: string

File containing jwt secret to use when doing jwt authentication.

Default: ""


--server.local-authentication

Type: boolean

Enable authentication using the local user database

This option can be specified without a value to enable it.

Default: true


--server.maintenance-actions-block

Type: int32

Minimum number of seconds finished Actions block duplicates

Default: 2

Effective on DB-Servers only.


--server.maintenance-actions-linger

Type: int32

Minimum number of seconds finished Actions remain in deque

Default: 3600

Effective on DB-Servers only.


--server.maintenance-slow-threads

Introduced in: v3.8.3

Type: uint32

Maximum number of threads available for slow maintenance actions (long SynchronizeShard and long EnsureIndex)

Default: dynamic (e.g. 5)

Effective on DB-Servers only.


--server.maintenance-threads

Type: uint32

Maximum number of threads available for maintenance actions

Default: dynamic (e.g. 10)

Effective on DB-Servers only.


--server.maximal-queue-size

Type: uint64

Size of the priority 3 fifo

Default: 4096


--server.maximal-threads

Type: uint64

Maximum number of request handling threads to run (0 = use system-specific default of 72)

Default: dynamic (e.g. 0)


--server.minimal-threads

Type: uint64

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 prio 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

Size of the priority 1 fifo

Default: 4096


--server.prio2-size

Introduced in: v3.8.0

Type: uint64

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

Number of simultaneously queued requests inside the scheduler

Default: 4096


--server.statistics

Type: boolean

Turn statistics gathering on or off

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 web interface in 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

Turn storing statistics in database on or off

This option can be specified without a value to enable it.

Default: true


--server.storage-engine

Type: string

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.uid

Type: string

Switch to user-id after reading config files

Default: ""


--server.unavailability-queue-fill-grade

Introduced in: v3.6.10, v3.7.6

Type: double

Queue fill grade from which onwards the server is considered unavailable because of overload (ratio, use a value of 0 to disable it)

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

Ca file used for secure connections

Default: ""


--ssl.cipher-list

Type: string

Ssl ciphers to use, see OpenSSL documentation

Default: "HIGH:!EXPORT:!aNULL@STRENGTH"


--ssl.ecdh-curve

Type: string

SSL ECDH Curve, see the output of "openssl ecparam -list_curves"

Default: "prime256v1"


--ssl.keyfile

Type: string

Key-file used for secure connections

Default: ""


--ssl.options

Type: uint64

Ssl connection options, see OpenSSL documentation

Default: 2147485780


--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.

Default: false


--ssl.protocol

Type: uint64

Ssl protocol (1 = SSLv2 (unsupported), 2 = SSLv2 or SSLv3 (negotiated), 3 = SSLv3, 4 = TLSv1, 5 = TLSv1.2, 6 = TLSv1.3, 9 = generic TLS)

Default: 9

Possible values: 1, 2, 3, 4, 5, 6, 9


--ssl.require-peer-certificate

Enterprise Edition only

Type: boolean

Require a peer certificate when connecting

This option can be specified without a value to enable it.

Default: false


--ssl.server-name-indication

Enterprise Edition only

Type: string…

Add a case SERVERNAME=KEYFILENAME for a different server keyfile for a specific server name, can be given multiple times

Default: []


--ssl.session-cache

Type: boolean

Enable the session cache for connections

This option can be specified without a value to enable it.

Default: false

TCP

--tcp.backlog-size

Type: uint64

Listen backlog size

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.path

Type: string

Path for temporary files

Default: ""

Transaction

--transaction.streaming-idle-timeout

Introduced in: v3.8.0

Type: double

Idle timeout for streaming transactions in seconds

Default: 60

Effective on Coordinators and Single Servers only.


--transaction.streaming-lock-timeout

Introduced in: v3.6.5, v3.7.1

Type: double

Lock timeout in seconds in case of parallel access to the same streaming transaction

Default: 8

TTL

--ttl.frequency

Type: uint64

Frequency (in milliseconds) for the TTL background thread invocation. a value of 0 turns the TTL background thread off entirely

Default: 30000


--ttl.max-collection-removes

Type: uint64

Maximum number of documents to remove per collection

Default: 1000000


--ttl.max-total-removes

Type: uint64

Maximum number of documents to remove per invocation of the TTL thread

Default: 1000000