#include "config.h"
#include <sys/types.h>
#include <errno.h>
#include <string.h>
#include "db_int.h"
#include "db_page.h"
#include "db_shash.h"
#include "lock.h"
#include "log.h"
#include "db_am.h"
#include "txn.h"
Go to the source code of this file.
Functions | |
static int | __lock_checklocker (DB_LOCKTAB *lt, struct __db_lock *lockp, u_int32_t locker, u_int32_t flags, int *freed) |
static int | __lock_get_internal (DB_LOCKTAB *lt, u_int32_t locker, u_int32_t flags, const DBT *obj, db_lockmode_t lock_mode, DB_LOCK *lock) |
static int | __lock_is_parent (DB_LOCKTAB *lt, u_int32_t locker, DB_LOCKER *sh_locker) |
static int | __lock_put_internal (DB_LOCKTAB *lt, struct __db_lock *lockp, u_int32_t obj_ndx, u_int32_t flags) |
static int | __lock_put_nolock (DB_ENV *dbenv, DB_LOCK *lock, int *runp) |
static void | __lock_remove_waiter (DB_LOCKOBJ *sh_obj, struct __db_lock *lockp, db_status_t status) |
static void __lock_remove_waiter | __P ((DB_LOCKOBJ *, struct __db_lock *, db_status_t)) |
static int __lock_put_nolock | __P ((DB_ENV *, DB_LOCK *, int *)) |
static int __lock_put_internal | __P ((DB_LOCKTAB *, struct __db_lock *, u_int32_t, u_int32_t)) |
static int __lock_is_parent | __P ((DB_LOCKTAB *, u_int32_t, DB_LOCKER *)) |
static int __lock_get_internal | __P ((DB_LOCKTAB *, u_int32_t, u_int32_t, const DBT *, db_lockmode_t, DB_LOCK *)) |
static int __lock_checklocker | __P ((DB_LOCKTAB *, struct __db_lock *, u_int32_t, u_int32_t, int *)) |
int | CDB___lock_addfamilylocker (DB_ENV *dbenv, u_int32_t pid, u_int32_t id) |
int | CDB___lock_downgrade (DB_ENV *dbenv, DB_LOCK *lock, db_lockmode_t new_mode, u_int32_t flags) |
int | CDB___lock_freefamilylocker (DB_LOCKTAB *lt, u_int32_t locker) |
void | CDB___lock_freelocker (DB_LOCKTAB *lt, DB_LOCKREGION *region, DB_LOCKER *sh_locker, u_int32_t indx) |
int | CDB___lock_getlocker (DB_LOCKTAB *lt, u_int32_t locker, u_int32_t indx, int create, DB_LOCKER **retp) |
int | CDB___lock_getobj (DB_LOCKTAB *lt, const DBT *obj, u_int32_t ndx, int create, DB_LOCKOBJ **retp) |
void | CDB___lock_printlock (DB_LOCKTAB *lt, struct __db_lock *lp, int ispgno) |
int | CDB___lock_promote (DB_LOCKTAB *lt, DB_LOCKOBJ *obj) |
int | CDB_lock_get (DB_ENV *dbenv, u_int32_t locker, u_int32_t flags, const DBT *obj, db_lockmode_t lock_mode, DB_LOCK *lock) |
int | CDB_lock_id (DB_ENV *dbenv, u_int32_t *idp) |
int | CDB_lock_put (DB_ENV *dbenv, DB_LOCK *lock) |
int | CDB_lock_vec (DB_ENV *dbenv, u_int32_t locker, u_int32_t flags, DB_LOCKREQ *list, int nlist, DB_LOCKREQ **elistp) |
Variables | |
static const char | __db_lock_err [] = "Lock table is out of available %s" |
static const char | __db_lock_invalid [] = "%s: Lock is no longer valid" |
static const char | __db_locker_invalid [] = "Locker is not valid" |
static const char | revid [] = "$Id: lock_8c.html,v 1.1 2008/06/08 10:19:51 sebdiaz Exp $" |