head 1.2; access; symbols RPM_4_2_1:1.1.1.5 RPM_4_2:1.1.1.5 RPM_4_1_1:1.1.1.5 RPM_4_1:1.1.1.4 RPM_4_0_5:1.1.1.3 RPM_4_0_4:1.1.1.2 RPM_4_0_3:1.1.1.1 RPM:1.1.1; locks; strict; comment @# @; 1.2 date 2008.01.02.09.52.52; author rse; state dead; branches; next 1.1; commitid z4cpSiAhOCXk5PLs; 1.1 date 2001.07.23.20.45.36; author rse; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2001.07.23.20.45.36; author rse; state Exp; branches; next 1.1.1.2; 1.1.1.2 date 2002.01.08.00.30.08; author rse; state Exp; branches; next 1.1.1.3; 1.1.1.3 date 2003.01.18.13.48.55; author rse; state Exp; branches; next 1.1.1.4; 1.1.1.4 date 2001.12.06.00.07.58; author rse; state Exp; branches; next 1.1.1.5; 1.1.1.5 date 2003.01.18.14.04.56; author rse; state Exp; branches; next ; desc @@ 1.2 log @remove the ancient RPM 4.2.1 source tree copy @ text @ Berkeley DB: DB_ENV->close

DB_ENV->close

APIRef

#include <db.h>

int DB_ENV->close(DB_ENV *dbenv, u_int32_t flags);

Description

The DB_ENV->close function closes the Berkeley DB environment, freeing any allocated resources and closing any underlying subsystems.

Calling DB_ENV->close does not imply closing any databases that were opened in the environment, and all databases opened in the environment should be closed before the environment is closed.

The flags parameter is currently unused, and must be set to 0.

Where the environment was initialized with the DB_INIT_LOCK flag, calling DB_ENV->close does not release any locks still held by the closing process, providing functionality for long-lived locks. Processes that want to have all their locks released can do so by issuing the appropriate lock_vec call.

Where the environment was initialized with the DB_INIT_MPOOL flag, calling DB_ENV->close implies calls to memp_fclose for any remaining open files in the memory pool that were returned to this process by calls to memp_fopen. It does not imply a call to memp_fsync for those files.

Where the environment was initialized with the DB_INIT_TXN flag, calling DB_ENV->close aborts any unresolved transactions. Applications should not depend on this behavior for transactions involving Berkeley DB databases; all such transactions should be explicitly resolved. The problem with depending on this semantic is that aborting an unresolved transaction involving database operations requires a database handle. Because the database handles should have been closed before calling DB_ENV->close, it will not be possible to abort the transaction, and recovery will have to be run on the Berkeley DB environment before further operations are done.

In multithreaded applications, only a single thread may call DB_ENV->close.

After DB_ENV->close has been called, regardless of its return, the Berkeley DB environment handle may not be accessed again.

The DB_ENV->close function returns a non-zero error value on failure and 0 on success.

Errors

The DB_ENV->close 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->close 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.

APIRef

Copyright Sleepycat Software @ 1.1 log @Initial revision @ text @d1 1 a1 1 @ 1.1.1.1 log @Import: RPM 4.0.3 @ text @@ 1.1.1.2 log @Import: RPM 4.0.4 @ text @d1 1 a1 1 d38 1 a38 1 released can do so by issuing the appropriate DB_ENV->lock_vec call. d40 1 a40 1 flag, calling DB_ENV->close implies calls to DB_MPOOLFILE->close for d42 2 a43 2 process by calls to DB_MPOOLFILE->open. It does not imply a call to DB_MPOOLFILE->sync for those files. a53 2

Where log cursors were created using the DB_ENV->log_cursor function, calling DB_ENV->close does not imply closing those cursors. d78 2 d81 1 d84 1 d86 1 a86 1 DB_ENV->set_tas_spins, a87 1 DB_ENV->set_timeout, @ 1.1.1.3 log @Import: RPM 4.0.5 @ text @d1 2 a2 2 a3 1 d28 1 a28 1

The DB_ENV->close method closes the Berkeley DB environment, freeing any d54 1 a54 1

Where log cursors were created using the DB_ENV->log_cursor method, calling d60 1 a60 1

The DB_ENV->close method returns a non-zero error value on failure and 0 on success. d62 4 a65 6

The DB_ENV->close method 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->close method may fail and return DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail in the same way.

Class

DB_ENV d67 24 a90 1 Database Environments and Related Methods @ 1.1.1.4 log @Import: RPM 4.1 @ text @d1 2 a2 2 d4 1 d29 1 a29 1

The DB_ENV->close function closes the Berkeley DB environment, freeing any d55 1 a55 1

Where log cursors were created using the DB_ENV->log_cursor function, calling d61 1 a61 1

The DB_ENV->close function returns a non-zero error value on failure and 0 on success. d63 6 a68 4

The DB_ENV->close 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->close function may fail and return DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail in the same way. d70 1 a70 24 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_paniccall, DB_ENV->set_recovery_init, DB_ENV->set_rpc_server, DB_ENV->set_shm_key, DB_ENV->set_tas_spins, DB_ENV->set_tmp_dir, DB_ENV->set_timeout, DB_ENV->set_verbose, db_strerror and db_version. @ 1.1.1.5 log @Import: RPM 4.1.1 @ text @d1 2 a2 2 a3 1 d28 1 a28 1

The DB_ENV->close method closes the Berkeley DB environment, freeing any d54 1 a54 1

Where log cursors were created using the DB_ENV->log_cursor method, calling d60 1 a60 1

The DB_ENV->close method returns a non-zero error value on failure and 0 on success. d62 4 a65 6

The DB_ENV->close method 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->close method may fail and return DB_RUNRECOVERY, in which case all subsequent Berkeley DB calls will fail in the same way.

Class

DB_ENV d67 24 a90 1 Database Environments and Related Methods @