Viewing file: env_set_region_init.html (5.18 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
Berkeley DB: db_env_set_region_init
db_env_set_region_init
|

|
#include <db.h>
int
db_env_set_region_init(int region_init);
Description
Page-fault shared regions into memory when initially creating or joining
a Berkeley DB environment. In some applications, the expense of page-faulting
the shared memory regions can affect performance. For example, if the
page-fault occurs while holding a lock, other lock requests can convoy,
and overall throughput may decrease. Setting region_init to a
non-zero value specifies that shared regions be read or written, as
appropriate, when the region is joined by the application. This forces
the underlying virtual memory and filesystems to instantiate both the
necessary memory and the necessary disk space. This can also avoid
out-of-disk space failures later on.
The db_env_set_region_init interface affects the entire application, not a single
database or database environment.
Although the db_env_set_region_init interface may be used to configure Berkeley DB at any time
during the life of the application, it should normally be called before
making any calls to the db_env_create or db_create functions.
The db_env_set_region_init function returns a non-zero error value on failure and 0 on success.
The database environment's initial behavior with respect to shared memory regions 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_region_init", one or more whitespace characters,
and the string "1". Because the DB_CONFIG file is read when the database
environment is opened, it will silently overrule configuration done
before that time.
Errors
The db_env_set_region_init function may fail and return a non-zero error for the following conditions:
- EINVAL
- An invalid flag value or parameter was specified.
The db_env_set_region_init function may fail and return a non-zero error for errors specified for other Berkeley DB and C library or system functions.
If a catastrophic error has occurred, the db_env_set_region_init function may fail and return
DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail
in the same way.
See Also
db_env_create,
DB_ENV->close,
DB_ENV->err, DB_ENV->errx
DB_ENV->open,
DB_ENV->remove,
DB_ENV->set_alloc,
DB_ENV->set_cachesize,
DB_ENV->set_data_dir,
DB_ENV->set_errcall,
DB_ENV->set_errfile,
DB_ENV->set_errpfx,
DB_ENV->set_feedback,
DB_ENV->set_flags,
DB_ENV->set_mutexlocks,
db_env_set_pageyield,
DB_ENV->set_paniccall,
db_env_set_panicstate,
DB_ENV->set_recovery_init,
DB_ENV->set_rpc_server,
db_env_set_region_init,
DB_ENV->set_shm_key,
db_env_set_tas_spins,
DB_ENV->set_tmp_dir,
DB_ENV->set_verbose,
db_strerror
and
db_version.
Copyright Sleepycat Software
|