ITS#7994 Access to current transaction ID.

commit b660491d3f (mdb_txn_id())
plus c36c167cc4 (fix prev commit)
from mdb.master.
This commit is contained in:
David Barbour 2015-01-12 23:00:30 +01:00 committed by Hallvard Furuseth
parent f3d3f60e3d
commit 076b773d6b
2 changed files with 18 additions and 0 deletions

View File

@ -953,6 +953,17 @@ int mdb_txn_begin(MDB_env *env, MDB_txn *parent, unsigned int flags, MDB_txn **
*/
MDB_env *mdb_txn_env(MDB_txn *txn);
/** @brief Return the transaction's ID.
*
* This returns the identifier associated with this transaction. For a
* read-only transaction, this corresponds to the snapshot being read;
* concurrent readers will frequently have the same transaction ID.
*
* @param[in] txn A transaction handle returned by #mdb_txn_begin()
* @return A transaction ID, valid if input is an active transaction.
*/
size_t mdb_txn_id(MDB_txn *txn);
/** @brief Commit all the operations of a transaction into the database.
*
* The transaction handle is freed. It and its cursors must not be used

View File

@ -2766,6 +2766,13 @@ mdb_txn_env(MDB_txn *txn)
return txn->mt_env;
}
size_t
mdb_txn_id(MDB_txn *txn)
{
if(!txn) return 0;
return txn->mt_txnid;
}
/** Export or close DBI handles opened in this txn. */
static void
mdb_dbis_update(MDB_txn *txn, int keep)