libfoedus-core
FOEDUS Core Library
|
Fix-sized slot for each record, which is placed at the end of data region. More...
Fix-sized slot for each record, which is placed at the end of data region.
Definition at line 161 of file hash_page_impl.hpp.
#include <hash_page_impl.hpp>
Public Member Functions | |
uint16_t | get_aligned_key_length () const |
uint16_t | get_max_payload () const |
Public Attributes | |
xct::RwLockableXctId | tid_ |
TID of the record. More... | |
uint16_t | offset_ |
Byte offset in data_ where this record starts. More... | |
uint16_t | physical_record_length_ |
Byte count this record occupies. More... | |
uint16_t | key_length_ |
Byte length of key of the record. More... | |
uint16_t | payload_length_ |
Byte length of the payload. More... | |
HashValue | hash_ |
Full hash of the key of the record. More... | |
|
inline |
Definition at line 196 of file hash_page_impl.hpp.
References foedus::assorted::align8().
Referenced by foedus::storage::hash::HashDataPage::assert_entries_impl(), get_max_payload(), and foedus::storage::hash::operator<<().
|
inline |
Definition at line 197 of file hash_page_impl.hpp.
References get_aligned_key_length().
Referenced by foedus::storage::hash::ReserveRecords::find_or_create_or_expand().
HashValue foedus::storage::hash::HashDataPage::Slot::hash_ |
Full hash of the key of the record.
This is immutable once the record is allocated.
Definition at line 194 of file hash_page_impl.hpp.
Referenced by foedus::storage::hash::HashDataPage::assert_entries_impl(), foedus::storage::hash::HashDataPage::compare_slot_key(), foedus::storage::hash::HashDataPage::create_record_in_snapshot(), foedus::storage::hash::operator<<(), foedus::storage::hash::HashDataPage::reserve_record(), and foedus::storage::hash::HashDataPage::search_key_physical().
uint16_t foedus::storage::hash::HashDataPage::Slot::key_length_ |
Byte length of key of the record.
Padding is not included. This is immutable once the record is allocated.
Definition at line 184 of file hash_page_impl.hpp.
Referenced by foedus::storage::hash::HashDataPage::assert_entries_impl(), foedus::storage::hash::HashDataPage::compare_slot_key(), foedus::storage::hash::HashDataPage::create_record_in_snapshot(), foedus::storage::hash::operator<<(), foedus::storage::hash::RecordLocation::populate_logical(), foedus::storage::hash::RecordLocation::populate_physical(), foedus::storage::hash::HashDataPage::reserve_record(), and foedus::storage::hash::HashDataPage::search_key_physical().
uint16_t foedus::storage::hash::HashDataPage::Slot::offset_ |
Byte offset in data_ where this record starts.
This is immutable once the record is allocated.
Definition at line 171 of file hash_page_impl.hpp.
Referenced by foedus::storage::hash::ReserveRecords::append_record_to_page(), foedus::storage::hash::HashDataPage::assert_entries_impl(), foedus::storage::hash::HashDataPage::compare_slot_key(), foedus::storage::hash::HashDataPage::create_record_in_snapshot(), foedus::storage::hash::HashDataPage::next_offset(), foedus::storage::hash::operator<<(), foedus::storage::hash::RecordLocation::populate_logical(), foedus::storage::hash::RecordLocation::populate_physical(), foedus::storage::hash::HashDataPage::reserve_record(), foedus::storage::hash::HashDataPage::search_key_physical(), and foedus::storage::hash::HashStoragePimpl::track_moved_record_search().
uint16_t foedus::storage::hash::HashDataPage::Slot::payload_length_ |
Byte length of the payload.
Padding is not included. This is mutable. Only changed with update. If the updated payload is too large for physical_record_length_, we move the record, leaving the deleted and moved flags in this old record.
Definition at line 191 of file hash_page_impl.hpp.
Referenced by foedus::storage::hash::HashDataPage::assert_entries_impl(), foedus::storage::hash::HashDataPage::create_record_in_snapshot(), foedus::storage::hash::operator<<(), foedus::storage::hash::RecordLocation::populate_logical(), foedus::storage::hash::RecordLocation::populate_physical(), and foedus::storage::hash::HashDataPage::reserve_record().
uint16_t foedus::storage::hash::HashDataPage::Slot::physical_record_length_ |
Byte count this record occupies.
This is immutable once the record is allocated.
Definition at line 179 of file hash_page_impl.hpp.
Referenced by foedus::storage::hash::HashDataPage::assert_entries_impl(), foedus::storage::hash::HashDataPage::create_record_in_snapshot(), foedus::storage::hash::HashDataPage::next_offset(), foedus::storage::hash::operator<<(), foedus::storage::hash::RecordLocation::populate_logical(), foedus::storage::hash::RecordLocation::populate_physical(), and foedus::storage::hash::HashDataPage::reserve_record().
xct::RwLockableXctId foedus::storage::hash::HashDataPage::Slot::tid_ |
TID of the record.
Definition at line 165 of file hash_page_impl.hpp.
Referenced by foedus::storage::hash::HashDataPage::create_record_in_snapshot(), foedus::storage::hash::ReserveRecords::expand_record(), foedus::storage::hash::operator<<(), foedus::storage::hash::RecordLocation::populate_logical(), foedus::storage::hash::RecordLocation::populate_physical(), foedus::storage::hash::HashDataPage::reserve_record(), foedus::storage::hash::HashDataPage::search_key_physical(), foedus::storage::hash::HashStoragePimpl::track_moved_record_search(), and foedus::storage::hash::HashStoragePimpl::verify_single_thread_data().