libfoedus-core
FOEDUS Core Library
|
Represents a record of write-access during a transaction. More...
Represents a record of write-access during a transaction.
Definition at line 168 of file xct_access.hpp.
#include <xct_access.hpp>
Static Public Member Functions | |
static bool | compare (const WriteXctAccess &left, const WriteXctAccess &right) __attribute__((always_inline)) |
![]() | |
static bool | compare (const RecordXctAccess &left, const RecordXctAccess &right) __attribute__((always_inline)) |
sort the write set in a unique order. More... | |
Public Attributes | |
char * | payload_address_ |
Pointer to the payload of the record. More... | |
log::RecordLogType * | log_entry_ |
Pointer to the log entry in private log buffer for this write opereation. More... | |
ReadXctAccess * | related_read_ |
![]() | |
storage::StorageId | storage_id_ |
The storage we accessed. More... | |
uint32_t | ordinal_ |
Indicates the ordinal among ReadXctAccess/WriteXctAccess of this transaction. More... | |
RwLockableXctId * | owner_id_address_ |
Pointer to the accessed record. More... | |
UniversalLockId | owner_lock_id_ |
Universal Lock ID of the lock in the record. More... | |
Friends | |
std::ostream & | operator<< (std::ostream &o, const WriteXctAccess &v) |
Additional Inherited Members | |
![]() | |
void | set_owner_id_and_lock_id (RwLockableXctId *owner_id_address, UniversalLockId owner_lock_id) |
Setter for owner_id_address_/owner_lock_id_. More... | |
void | set_owner_id_resolve_lock_id (const memory::GlobalVolatilePageResolver &resolver, RwLockableXctId *owner_id_address) |
Calculate owner_lock_id using the resolver. More... | |
|
inlinestatic |
Definition at line 181 of file xct_access.hpp.
References foedus::xct::RecordXctAccess::compare().
Referenced by foedus::xct::XctManagerPimpl::precommit_xct_sort_access().
|
friend |
Definition at line 59 of file xct_access.cpp.
log::RecordLogType* foedus::xct::WriteXctAccess::log_entry_ |
Pointer to the log entry in private log buffer for this write opereation.
Definition at line 175 of file xct_access.hpp.
Referenced by foedus::xct::Xct::add_to_write_set(), foedus::xct::operator<<(), foedus::xct::XctManagerPimpl::precommit_xct_apply(), and foedus::storage::hash::HashStoragePimpl::track_moved_record().
char* foedus::xct::WriteXctAccess::payload_address_ |
Pointer to the payload of the record.
Definition at line 172 of file xct_access.hpp.
Referenced by foedus::xct::Xct::add_to_write_set(), foedus::xct::XctManagerPimpl::precommit_xct_apply(), foedus::xct::XctManagerPimpl::precommit_xct_lock_track_write(), and foedus::storage::hash::HashStoragePimpl::track_moved_record().
ReadXctAccess* foedus::xct::WriteXctAccess::related_read_ |
Definition at line 178 of file xct_access.hpp.
Referenced by foedus::xct::Xct::add_related_write_set(), foedus::xct::Xct::add_to_write_set(), foedus::xct::Xct::assert_related_read_write(), foedus::xct::operator<<(), foedus::xct::XctManagerPimpl::precommit_xct_lock(), foedus::xct::XctManagerPimpl::precommit_xct_lock_track_write(), and foedus::xct::XctManagerPimpl::precommit_xct_sort_access().