Data Fields | |
volatile txnid_t | mrb_txnid |
volatile MDB_PID_T | mrb_pid |
volatile MDB_THR_T | mrb_tid |
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.
volatile txnid_t MDB_rxbody::mrb_txnid |
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.