Viewing file: env_set_lk_conflicts.html (4.75 KB) -rw-r--r-- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
Berkeley DB: DbEnv::set_lk_conflicts
DbEnv::set_lk_conflicts
|
 |
#include <db_cxx.h>
int
DbEnv::set_lk_conflicts(u_int8_t *conflicts, int nmodes);
int
DbEnv::get_lk_conflicts(const u_int8_t **lk_conflictsp, int *lk_modesp);
Description: DbEnv::set_lk_conflicts
Set the locking conflicts matrix.
If DbEnv::set_lk_conflicts is never called, a standard conflicts
array is used; see Standard Lock
Modes for more information.
The DbEnv::set_lk_conflicts method configures a database environment, not only operations
performed using the specified DbEnv handle.
The DbEnv::set_lk_conflicts method may not be called after the DbEnv::open method is
called.
If the database environment already exists when
DbEnv::open is called, the information specified to DbEnv::set_lk_conflicts
will be ignored.
The DbEnv::set_lk_conflicts method
either returns a non-zero error value
or throws an exception that encapsulates a non-zero error value on
failure, and returns 0 on success.
Parameters
- conflicts
- The conflicts parameter is the new locking conflicts matrix.
The conflicts parameter is an nmodes by nmodes
array. A non-0 value for the array element indicates that
requested_mode and held_mode conflict:
conflicts[requested_mode][held_mode]
The not-granted mode must be represented by 0.
- nmodes
- The nmodes parameter is the size of the lock conflicts matrix.
Errors
The DbEnv::set_lk_conflicts method
may fail and throw
DbException,
encapsulating one of the following non-zero errors, or return one of
the following non-zero errors:
- EINVAL
- If the method was called after DbEnv::open was called; or if an
invalid flag value or parameter was specified.
If the conflicts array could not be copied, the DbEnv::set_lk_conflicts method will fail and
either return ENOMEM or
throw a DbMemoryException.
Description: dbenv_get_lk_conflicts
The DbEnv::get_lk_conflicts method returns the current conflicts array.
The DbEnv::get_lk_conflicts method may be called at any time during the life of the
application.
The DbEnv::get_lk_conflicts method
either returns a non-zero error value
or throws an exception that encapsulates a non-zero error value on
failure, and returns 0 on success.
Parameters
- lk_conflictsp
- The lk_conflictsp parameter references memory into which
a pointer to the current conflicts array is copied.
- lk_modesp
- The lk_modesp parameter references memory into which
the size of the current conflicts array is copied.
Class
DbEnv, DbLock
See Also
Locking Subsystem and Related Methods
Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved.
|