libfoedus-core
FOEDUS Core Library
|
Metadata of one storage. More...
Metadata of one storage.
Metadata of a storage is a concise set of information about its structure, not about its data. For example, ID, name, and other stuffs specific to the storage type.
Definition at line 58 of file metadata.hpp.
#include <metadata.hpp>
Classes | |
struct | SnapshotThresholds |
Tuning parameters related to snapshotting. More... | |
Public Member Functions | |
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 |
Static Public Member Functions | |
static std::string | describe (const Metadata &metadata) |
to_string operator of all Metadata objects. More... | |
Public Attributes | |
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_ |
|
inline |
Definition at line 79 of file metadata.hpp.
|
inline |
Definition at line 82 of file metadata.hpp.
|
inline |
Definition at line 84 of file metadata.hpp.
|
static |
to_string operator of all Metadata objects.
Definition at line 35 of file metadata.cpp.
References foedus::storage::kArrayStorage, foedus::storage::kHashStorage, foedus::storage::kMasstreeStorage, foedus::storage::kSequentialStorage, and type_.
|
inline |
Definition at line 98 of file metadata.hpp.
References foedus::storage::Metadata::SnapshotThresholds::snapshot_keep_threshold_, and snapshot_thresholds_.
Referenced by foedus::storage::array::ArrayComposer::drop_root_volatile(), foedus::storage::hash::HashComposer::drop_root_volatile(), foedus::storage::masstree::MasstreeComposer::drop_root_volatile(), foedus::storage::array::ArrayComposer::drop_volatiles(), foedus::storage::hash::HashComposer::drop_volatiles(), and foedus::storage::masstree::MasstreeComposer::drop_volatiles().
StorageId foedus::storage::Metadata::id_ |
the unique ID of this storage.
Definition at line 103 of file metadata.hpp.
Referenced by foedus::storage::CreateLogType::apply_storage(), foedus::storage::CreateLogType::assert_valid(), foedus::storage::array::ArrayStoragePimpl::create(), foedus::storage::StorageManager::create_array(), foedus::storage::StorageManager::create_hash(), foedus::storage::StorageManager::create_masstree(), foedus::storage::StorageManager::create_sequential(), foedus::storage::StorageManagerPimpl::create_storage(), foedus::storage::StorageManagerPimpl::create_storage_and_log(), foedus::storage::StorageManagerPimpl::create_storage_apply(), foedus::storage::array::ArrayStoragePimpl::get_id(), foedus::storage::Storage< MasstreeStorageControlBlock >::get_id(), foedus::storage::StorageManagerPimpl::initialize_read_latest_snapshot(), foedus::storage::MetadataSerializer::load_base(), foedus::storage::sequential::SequentialStorageControlBlock::optimistic_read_truncate_epoch(), and foedus::storage::MetadataSerializer::save_base().
StorageName foedus::storage::Metadata::name_ |
the unique name of this storage.
Definition at line 107 of file metadata.hpp.
Referenced by foedus::storage::StorageManagerPimpl::create_storage(), foedus::storage::StorageManagerPimpl::create_storage_and_log(), foedus::storage::StorageManagerPimpl::create_storage_apply(), foedus::storage::StorageManagerPimpl::drop_storage(), foedus::snapshot::SnapshotManagerPimpl::drop_volatile_pages_parallel(), foedus::storage::StorageManager::get_name(), foedus::storage::Storage< MasstreeStorageControlBlock >::get_name(), foedus::storage::StorageManagerPimpl::initialize_read_latest_snapshot(), foedus::storage::MetadataSerializer::load_base(), foedus::storage::array::ArrayStoragePimpl::prefetch_pages(), and foedus::storage::MetadataSerializer::save_base().
SnapshotPagePointer foedus::storage::Metadata::root_snapshot_page_id_ |
Pointer to a snapshotted page this storage is rooted at.
This is 0 until this storage has the first snapshot.
Definition at line 112 of file metadata.hpp.
Referenced by foedus::storage::array::ArrayComposer::construct_root(), foedus::storage::hash::HashComposer::construct_root(), foedus::storage::sequential::SequentialComposer::construct_root(), foedus::snapshot::SnapshotManagerPimpl::drop_volatile_pages_parallel(), foedus::storage::StorageManagerPimpl::initialize_read_latest_snapshot(), foedus::storage::array::ArrayStoragePimpl::load(), foedus::storage::masstree::MasstreeStoragePimpl::load(), foedus::storage::hash::HashStoragePimpl::load(), foedus::storage::MetadataSerializer::load_base(), foedus::storage::array::ArrayStoragePimpl::load_empty(), and foedus::storage::MetadataSerializer::save_base().
SnapshotThresholds foedus::storage::Metadata::snapshot_thresholds_ |
Definition at line 114 of file metadata.hpp.
Referenced by keeps_all_volatile_pages(), foedus::storage::MetadataSerializer::load_base(), and foedus::storage::MetadataSerializer::save_base().
StorageType foedus::storage::Metadata::type_ |
type of the storage.
Definition at line 105 of file metadata.hpp.
Referenced by foedus::storage::StorageManagerPimpl::create_storage(), foedus::storage::StorageManagerPimpl::create_storage_and_log(), foedus::storage::StorageManagerPimpl::create_storage_apply(), describe(), foedus::storage::StorageManagerPimpl::drop_storage(), foedus::storage::StorageManagerPimpl::drop_storage_apply(), foedus::storage::Storage< MasstreeStorageControlBlock >::get_type(), foedus::storage::StorageManagerPimpl::hcc_reset_all_temperature_stat(), foedus::storage::StorageManagerPimpl::initialize_read_latest_snapshot(), foedus::storage::MetadataSerializer::load_base(), foedus::storage::operator<<(), foedus::storage::Partitioner::Partitioner(), foedus::storage::MetadataSerializer::save_all_storages_to_xml(), foedus::storage::MetadataSerializer::save_base(), and foedus::storage::StorageManagerPimpl::track_moved_record().