libfoedus-core
FOEDUS Core Library
|
ArrayComposer's compose() implementation separated from the class itself. More...
ArrayComposer's compose() implementation separated from the class itself.
It's a complicated method, so worth being its own class. This defines all the variables maintained during one compose() call.
Definition at line 109 of file array_composer_impl.hpp.
#include <array_composer_impl.hpp>
Public Member Functions | |
ArrayComposeContext (Engine *engine, snapshot::MergeSort *merge_sort, snapshot::SnapshotWriter *snapshot_writer, cache::SnapshotFileSet *previous_snapshot_files, Page *root_info_page) | |
ArrayComposeContext methods. More... | |
ErrorStack | execute () |
foedus::storage::array::ArrayComposeContext::ArrayComposeContext | ( | Engine * | engine, |
snapshot::MergeSort * | merge_sort, | ||
snapshot::SnapshotWriter * | snapshot_writer, | ||
cache::SnapshotFileSet * | previous_snapshot_files, | ||
Page * | root_info_page | ||
) |
ArrayComposeContext methods.
Definition at line 191 of file array_composer_impl.cpp.
References foedus::storage::array::ArrayPartitionerData::array_levels_, foedus::storage::array::ArrayPartitionerData::array_size_, ASSERT_ND, foedus::storage::array::ArrayStorage::get_array_size(), foedus::snapshot::SnapshotWriter::get_intermediate_base(), foedus::snapshot::SnapshotWriter::get_intermediate_size(), foedus::storage::PartitionerMetadata::get_metadata(), foedus::snapshot::SnapshotWriter::get_page_base(), foedus::snapshot::SnapshotWriter::get_page_size(), foedus::storage::array::LookupRouteFinder::get_records_in_leaf(), foedus::storage::array::kInteriorFanout, foedus::storage::PartitionerMetadata::locate_data(), and foedus::storage::PartitionerMetadata::valid_.
ErrorStack foedus::storage::array::ArrayComposeContext::execute | ( | ) |
Definition at line 230 of file array_composer_impl.cpp.
References ASSERT_ND, foedus::storage::array::ArrayRange::begin_, foedus::storage::array::ArrayPartitionerData::bucket_owners_, CHECK_ERROR, foedus::storage::array::ArrayRange::contains(), foedus::storage::array::ArrayRange::end_, foedus::storage::array::ArrayPage::get_array_range(), foedus::snapshot::MergeSort::get_current_count(), foedus::snapshot::MergeSort::SortEntry::get_key(), foedus::snapshot::SnapshotWriter::get_numa_node(), foedus::snapshot::MergeSort::get_sort_entries(), foedus::storage::array::ArrayRootInfoPage::header_, foedus::snapshot::MergeSort::is_ended_all(), foedus::storage::array::kInteriorFanout, foedus::storage::kPageSize, foedus::kRetOk, LIKELY, foedus::snapshot::MergeSort::next_batch(), foedus::storage::array::ArrayCommonUpdateLogType::offset_, foedus::storage::array::ArrayPartitionerData::partitionable_, foedus::storage::array::ArrayRootInfoPage::pointers_, foedus::snapshot::MergeSort::resolve_sort_position(), foedus::storage::PageHeader::storage_id_, UNLIKELY, and WRAP_ERROR_CODE.