Configures a database environment.
The syntax of the entry in the DB_CONFIG file is a single
line with the string set_flags
, one or
more whitespace characters, the method flag parameter as a
string, optionally one or more whitespace characters, and
the string on
or off
.
If the optional string is omitted, the default is
on
; for example,
set_flags DB_TXN_NOSYNC
or
set_flags DB_TXN_NOSYNC on
. Because the
DB_CONFIG file is read when the database environment is
opened, it will silently overrule configuration done before
that time.
The method flag parameters are as follows:
Enables/disables to automatically enclose those DB handle operations for which no explicit transaction handle was specified, and which modify databases in the database environment, within a transaction.
Enables/disables Berkeley DB Concurrent Data Store applications to perform locking on an environment-wide basis rather than on a per-database basis.
Enables/disables turning off system buffering of Berkeley DB database files to avoid double caching.
Enables/disables configuring Berkeley DB to flush database writes to the backing disk before returning from the write system call, rather than flushing database writes explicitly in a separate system call, as necessary.
Enables/disables all databases in the environment from being opened as if DB_MULTIVERSION is passed to the DB->open method. This flag will be ignored for queue databases for which DB_MULTIVERSION is not supported.
Enables/disables Berkeley DB from copying read-only database files into the local cache instead of potentially mapping them into process memory.
Enables/disables Berkeley DB to page-fault shared regions into memory when initially creating or joining a Berkeley DB environment. In addition, Berkeley DB will write the shared regions when creating an environment, forcing the underlying virtual memory and filesystems to instantiate both the necessary memory and the necessary disk space.
Enables/disables those database calls timing out based on lock or transaction timeout values to return DB_LOCK_NOTGRANTED instead of DB_LOCK_DEADLOCK. This allows applications to distinguish between operations which have deadlocked and operations which have exceeded their time limits.
Enables/disables Berkeley DB to not write or synchronously flush the log on transaction commit.
Enables/disables the operation to return DB_LOCK_DEADLOCK if a lock is unavailable for any Berkeley DB operation performed in the context of a transaction.
Enables/disables all transactions in the environment to be started as if DB_TXN_SNAPSHOT were passed to the DB_ENV->txn_begin method, and all non-transactional cursors to be opened as if DB_TXN_SNAPSHOT were passed to the DB->cursor method.
Enables/disables Berkeley DB to write, but not synchronously flush, the log on transaction commit.
Enables/disables Berkeley DB to yield the processor immediately after each page or mutex acquisition.
For more information, see DbEnv::set_flags() .