return m_global_image_id;
}
- void start(Context *on_finish = nullptr, bool manual = false);
+ void start(Context *on_finish = nullptr, bool manual = false,
+ bool restart = false);
void stop(Context *on_finish = nullptr, bool manual = false,
- int r = 0, const std::string& desc = "");
+ bool restart = false);
void restart(Context *on_finish = nullptr);
void flush();
* @endverbatim
*/
- virtual void on_start_fail(int r, const std::string &desc);
- virtual bool on_start_interrupted();
- virtual bool on_start_interrupted(ceph::mutex& lock);
+ void on_start_fail(int r, const std::string &desc);
+ bool on_start_interrupted();
+ bool on_start_interrupted(ceph::mutex& lock);
- virtual void on_stop_journal_replay(int r = 0, const std::string &desc = "");
+ void on_stop_journal_replay(int r = 0, const std::string &desc = "");
bool on_replay_interrupted();
bool m_finished = false;
bool m_delete_requested = false;
bool m_resync_requested = false;
+ bool m_restart_requested = false;
image_replayer::StateBuilder<ImageCtxT>* m_state_builder = nullptr;
image_replayer::Replayer* m_replayer = nullptr;