Previous: Cursors, Up: Reference


3.6 Sleepycat

— Macro: elephant:with-lock env &body body

Execute the body with a lock held, releasing unconditionally.

— Function: elephant:db-env-get-flags env

Get flags of an environment.

— Function: elephant:db-env-get-lock-detect env

Get whether the deadlock detector is run on every conflict.

— Function: elephant:db-env-get-timeout env &key set-lock-timeout set-transaction-timeout

Gets the timout.

— Function: elephant:db-env-lock-get env locker object object-size lock-mode lock &key lock-nowait

Acquire a lock.

— Function: elephant:db-env-lock-id-free env id

Release a lock id.

— Function: elephant:db-env-lock-id env

Acquire a new lock id.

— Function: elephant:db-env-lock-put env lock

Release a lock.

— Function: elephant:db-env-set-flags env onoff &key auto-commit nommap txn-nosync

Set flags on an environment.

— Function: elephant:db-env-set-lock-detect env detect

Set whether (or not) to run the deadlock detector on every time there is a conflict.

— Function: elephant:db-env-set-timeout env timeout &key set-lock-timeout set-transaction-timeout

Set a timeouts on locks and transactions. If you set this, be prepared to handle deadlock / lock no granted errors.

— Function: elephant:db-transaction-abort &key transaction

Abort a transaction.

— Function: elephant:db-transaction-begin env &key parent degree-2 dirty-read txn-nosync txn-nowait txn-sync

Start a transaction. Transactions may be nested.

— Function: elephant:db-transaction-commit &key txn-nosync txn-sync transaction

Commit a transaction.

— Function: elephant:db-transaction-id &optional transaction

Returns the id of the transaction (for locking purposes.)