Chapter 1.  Dbstl Global Public Functions

Public Members

Member Description
close_db

Close pdb regardless of reference count.

close_all_dbs

Close all open database handles regardless of reference count.

close_db_env

Close specified database environment handle regardless of reference count.

close_all_db_envs

Close all open database environment handles regardless of reference count.

begin_txn

Begin a new transaction from the specified environment "env".

commit_txn

Commit current transaction opened in the environment "env".

abort_txn

Abort current transaction of environment "env".

current_txn

Get current transaction of environment "env".

set_current_txn_handle

Set environment env's current transaction handle to be newtxn.

register_db

Register a Db handle "pdb1".

register_db_env

Register a DbEnv handle env1, this handle and handles opened in it will be closed by ResourceManager .

open_db

Helper function to open a database and register it into dbstl for the calling thread.

open_env

Helper function to open an environment and register it into dbstl for the calling thread.

alloc_mutex

Allocate a Berkeley DB mutex.

lock_mutex

Lock a mutex, wait if it is held by another thread.

unlock_mutex

Unlock a mutex, and return immediately.

free_mutex

Free a mutex, and return immediately.

dbstl_startup

If there are multiple threads within a process that make use of dbstl, then this function should be called in a single thread mutual exclusively before any use of dbstl in a process; Otherwise, you don't need to call it, but are allowed to call it anyway.

dbstl_exit

This function releases any memory allocated in the heap by code of dbstl.

dbstl_thread_exit

This function closes all Berkeley DB handles in the right order, if other threads do not use them.

operator==

Operators to compare two Dbt objects.

set_global_dbfile_suffix_number

If exisiting random temporary database name generation mechanism is still causing name clashes, users can set this global suffix number which will be append to each temporary database file name and incremented after each append, and by default it is 0.

close_db_cursors

Close cursors opened in dbp1.

Group

None

close_db

Function Details

 void close_db(Db *pdb)
 

Close pdb regardless of reference count.

You must make sure pdb is not used by others before calling this method. You can close the underlying database of a container and assign another database with right configurations to it, if the configuration is not suitable for the container, there will be an InvalidArgumentException type of exception thrown. You can't use the container after you called close_db and before setting another valid database handle to the container via db_container::set_db_handle() function.

Parameters

pdb

The database handle to close.

Group: Functions to close database/environments.

Normally you don't have to close any database or environment handles, they will be closed automatically.

Though you still have the following API to close them.