The DbTxn.abort method causes an abnormal termination of the
transaction. The log is played backwards and any necessary recovery
operations are initiated through the recover function specified
to DbEnv.open. After the log processing is completed, all locks
held by the transaction are released. As is the case for
DbTxn.commit, applications that require strict two-phase locking
should not explicitly release any locks.
In the case of nested transactions, aborting a parent transaction causes
all children (unresolved or not) of the parent transaction to be aborted.
Once the DbTxn.abort method returns, the DbTxn handle may not
be accessed again.
The DbTxn.abort method throws an exception that encapsulates a non-zero error value on
failure.
Errors
The DbTxn.abort method may fail and throw an exception for errors specified for other Berkeley DB and C library or system methods.
If a catastrophic error has occurred, the DbTxn.abort method may fail and throw
a DbRunRecoveryException, in which case all subsequent Berkeley DB calls
will fail in the same way.