DBENV->set_flags
|
|
#include <db.h>
int
DBENV->set_flags(DB_ENV *dbenv, u_int32_t flags, int onoff);
Description
The flags value must be set to 0 or by bitwise inclusively OR'ing together one or more
of the following values.
If onoff is zero, the specified flags are cleared, otherwise they
are set.
- DB_CDB_ALLDB
- For Berkeley DB Concurrent Data Store applications, perform locking on an environment-wide basis
rather than per-database. This flag may only be used to configure Berkeley DB
before the DBENV->open interface is called.
- DB_NOMMAP
- Copy read-only database files in this environment into the local cache
instead of potentially mapping them into process memory (see the
description of the DBENV->set_mp_mmapsize function for further information).
- DB_TXN_NOSYNC
- Do not synchronously flush the log on transaction commit or prepare.
This means that transactions exhibit the ACI (atomicity, consistency and
isolation) properties, but not D (durability), i.e., database integrity
will be maintained but it is possible that some number of the most
recently committed transactions may be undone during recovery instead of
being redone.
The number of transactions that are potentially at risk is governed by
how often the log is checkpointed (see db_checkpoint for more
information) and how many log updates can fit on a single log page.
The DBENV->set_flags function returns a non-zero error value on failure and 0 on success.
The database environment's flag values may also be set using the environment's
DB_CONFIG file. The syntax of the entry in that file is a
single line with the string "set_flags", one or more whitespace characters,
and the interface flag argument as a string, for example, "set_flags
DB_TXN_NOSYNC". Because the DB_CONFIG file is read when the database
environment is opened, it will silently overrule configuration done
before that time.
Errors
- EINVAL
- An invalid flag value or parameter was specified.
See Also
DBENV->close,
db_env_create,
DBENV->open,
DBENV->remove,
DBENV->err,
db_strerror,
db_version,
DBENV->set_cachesize,
DBENV->set_errcall,
DBENV->set_errfile,
DBENV->set_errpfx,
DBENV->set_flags,
DBENV->set_mutexlocks,
DBENV->set_paniccall,
and
DBENV->set_verbose.
Copyright Sleepycat Software