Berkeley DB: Dbc.close

ee,hash,hashing,transaction,transactions,locking,logging,access method,access me thods,java,C,C++">


import com.sleepycat.db.*;

public void close() throws DbException;


The Dbc.close method discards the cursor.

It is possible for the Dbc.close method to return EAGAIN, signaling that any enclosing transaction should be aborted. If the application is already intending to abort the transaction, this error should be ignored, and the application should proceed.

Once Dbc.close has been called, regardless of its return, the cursor handle may not be used again.

The Dbc.close method throws an exception that encapsulates an errno on failure.


If a fatal error occurs in Berkeley DB, the Dbc.close method may fail and throw a DbRunRecoveryException, at which point all subsequent database calls will also fail in the same way.

The Dbc.close method may fail and throw an exception for any of the errors specified for the following Berkeley DB and C library functions: __account_page(3), dbc->c_am_close(3), dbenv->db_paniccall(3), fflush(3), fprintf(3), free(3), func(3), DbLockTab.get, DbLock.put, DbLockTab.vec, DbLog.put, malloc(3), memcpy(3), memmove(3), DbMpoolFile.get, DbMpoolFile.put, DbMpoolFile.set, memset(3), realloc(3), strerror(3), vfprintf(3), and vsnprintf(3).

In addition, the Dbc.close method may fail and throw an exception encapsulating errno for the following conditions:

A lock was unavailable.



See Also

Dbc.close, Dbc.del, Dbc.get and Dbc.put.