WiredTiger databases are accessed through the wiredtiger_open call, which takes a configuration string argument.
In addition to this, the database configuration can be specified in a file or an environment variable.
If a file named WiredTiger.config
appears in the WiredTiger home directory, it is read as a configuration string. Configuration values specified in the config
argument to wiredtiger_open override configuration values specified in the WIREDTIGER_CONFIG
environment variable, which in turn override values in the WiredTiger.config
file.
The file is minimally parsed in order to build configuration strings for the WiredTiger configuration parser:
A backslash (\
) followed by any character other than a newline character leaves both characters untouched; otherwise, if a backslash is followed by a newline character, both the backslash and the newline character are discarded.
Any text between double-quote pairs ("
) is left untouched, including newline and white-space characters. Backslash characters escape double-quote characters: a backslash escaped double-quote character can neither start or end a quoted string.
Comments are discarded. If the first non-white-space character following an unquoted and unescaped newline character is a hash mark (#
), all characters up to the next newline character are discarded. The ending newline character cannot be escaped or quoted, once a comment line is identified, all characters to the next newline are simply discarded.
If set, the WIREDTIGER_CONFIG
environment variable will read, and the string added to the configuration values for wiredtiger_open. Configuration values specified in the config
argument to wiredtiger_open override configuration values specified in the WIREDTIGER_CONFIG
environment variable, which in turn override values in the WiredTiger.config
file.
If the process is running with special privileges and WIREDTIGER_CONFIG
is set, the wiredtiger_open function must be configured with the use_environment_priv
flag, or the call to wiredtiger_open will fail. See Database Home Directory for more details.