MDB_rxbody Struct Reference
[Reader Lock Table]

Data Fields

volatile txnid_t mrb_txnid
volatile MDB_PID_T mrb_pid
volatile MDB_THR_T mrb_tid

Detailed Description

The information we store in a single slot of the reader table. In addition to a transaction ID, we also record the process and thread ID that owns a slot, so that we can detect stale information, e.g. threads or processes that went away without cleaning up.

Note:
We currently don't check for stale records. We simply re-init the table when we know that we're the only process opening the lock file.

Field Documentation

Current Transaction ID when this transaction began, or (txnid_t)-1. Multiple readers that start at the same time will probably have the same ID here. Again, it's not important to exclude them from anything; all we need to know is which version of the DB they started from so we can avoid overwriting any data used in that particular version.

volatile MDB_PID_T MDB_rxbody::mrb_pid

The process ID of the process owning this reader txn.

volatile MDB_THR_T MDB_rxbody::mrb_tid

The thread ID of the thread owning this txn.


The documentation for this struct was generated from the following file:
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Generated on 15 Feb 2016 for LMDB by  doxygen 1.6.1