18 #ifndef FOEDUS_SAVEPOINT_SAVEPOINT_MANAGER_HPP_
19 #define FOEDUS_SAVEPOINT_SAVEPOINT_MANAGER_HPP_
90 Epoch new_snapshot_epoch);
97 #endif // FOEDUS_SAVEPOINT_SAVEPOINT_MANAGER_HPP_
SavepointManager & operator=(const SavepointManager &)=delete
ErrorStack take_savepoint_after_snapshot(snapshot::SnapshotId new_snapshot_id, Epoch new_snapshot_epoch)
Takes a savepoint just to remember the newly taken snapshot.
snapshot::SnapshotId get_latest_snapshot_id() const
The pure-virtual interface to initialize/uninitialize non-trivial resources.
Typedefs of ID types used in snapshot package.
Root package of FOEDUS (Fast Optimistic Engine for Data Unification Services).
Epoch get_initial_current_epoch() const
ErrorStack initialize() override
Acquires resources in this object, usually called right after constructor.
Forward declarations of classes in root package.
Brings error stacktrace information as return value of functions.
ErrorStack take_savepoint(Epoch new_global_durable_epoch)
Atomically and durably takes a savepoint for the given epoch advancement.
Epoch get_latest_snapshot_epoch() const
Typedefs of ID types used in log package.
void change_meta_logger_durable_offset(uint64_t durable_offset)
Rewrites meta logger's durable_offset.
ErrorStack uninitialize() override
An idempotent method to release all resources of this object, if any.
#define CXX11_FINAL
Used in public headers in place of "final" of C++11.
Database engine object that holds all resources and provides APIs.
uint16_t SnapshotId
Unique ID of Snapshot.
Pimpl object of SavepointManager.
#define CXX11_OVERRIDE
Used in public headers in place of "override" of C++11.
#define CXX11_FUNC_DELETE
Used in public headers in place of " = delete" of C++11.
Forward declarations of classes in savepoint manager package.
Epoch get_earliest_epoch() const
Epoch get_initial_durable_epoch() const
void get_meta_logger_offsets(uint64_t *oldest_offset, uint64_t *durable_offset) const
Returns the saved information of metadata logger in lateset savepoint.
Epoch get_saved_durable_epoch() const
SavepointManager()=delete
Information in savepoint for one logger.
uint16_t LoggerId
Typedef for an ID of Logger.
bool is_initialized() const override
Returns whether the object has been already initialized or not.
LoggerSavepointInfo get_logger_savepoint(log::LoggerId logger_id)
Returns the saved information of the given logger in latest savepoint.
Savepoint manager that atomically and durably writes out a savepoint file.