libfoedus-core
FOEDUS Core Library
|
Metadata of a sequential storage. More...
Metadata of a sequential storage.
When this pointer is zero, there is no stable head page.
This page pointer is not dual page pointer because we never have volatile (modify-able) root pages. All the volatile part are stored as the in-memory append-only list, which is totally orthogonal to snapshot pages.
Definition at line 53 of file sequential_metadata.hpp.
#include <sequential_metadata.hpp>
Public Member Functions | |
SequentialMetadata () | |
SequentialMetadata (StorageId id, const StorageName &name) | |
SequentialMetadata (const StorageName &name) | |
This one is for newly creating a storage. More... | |
std::string | describe () const |
uint32_t | unused_dummy_func_padding () const |
![]() | |
Metadata () | |
Metadata (StorageId id, StorageType type, const StorageName &name) | |
Metadata (StorageId id, StorageType type, const StorageName &name, SnapshotPagePointer root_snapshot_page_id) | |
bool | keeps_all_volatile_pages () const |
Public Attributes | |
Epoch::EpochInteger | truncate_epoch_ |
The min epoch value (truncate-epoch) for all valid records in this storage. More... | |
uint32_t | padding_ |
![]() | |
StorageId | id_ |
the unique ID of this storage. More... | |
StorageType | type_ |
type of the storage. More... | |
StorageName | name_ |
the unique name of this storage. More... | |
SnapshotPagePointer | root_snapshot_page_id_ |
Pointer to a snapshotted page this storage is rooted at. More... | |
SnapshotThresholds | snapshot_thresholds_ |
Friends | |
std::ostream & | operator<< (std::ostream &o, const SequentialMetadata &v) |
Additional Inherited Members | |
![]() | |
static std::string | describe (const Metadata &metadata) |
to_string operator of all Metadata objects. More... | |
|
inline |
Definition at line 54 of file sequential_metadata.hpp.
|
inline |
Definition at line 56 of file sequential_metadata.hpp.
|
inlineexplicit |
This one is for newly creating a storage.
Definition at line 60 of file sequential_metadata.hpp.
std::string foedus::storage::sequential::SequentialMetadata::describe | ( | ) | const |
Definition at line 29 of file sequential_metadata.cpp.
|
inline |
Definition at line 67 of file sequential_metadata.hpp.
References padding_.
|
friend |
Definition at line 34 of file sequential_metadata.cpp.
uint32_t foedus::storage::sequential::SequentialMetadata::padding_ |
Definition at line 77 of file sequential_metadata.hpp.
Referenced by unused_dummy_func_padding().
Epoch::EpochInteger foedus::storage::sequential::SequentialMetadata::truncate_epoch_ |
The min epoch value (truncate-epoch) for all valid records in this storage.
When a physical record or a page has an epoch value less than a truncate-epoch, they are logically non-existent. Truncate-epoch is always valid, starting from the system's lowest epoch.
Definition at line 75 of file sequential_metadata.hpp.
Referenced by foedus::storage::sequential::SequentialMetadataSerializer::load(), and foedus::storage::sequential::SequentialMetadataSerializer::save().