1
0
mirror of https://github.com/codership/wsrep-lib.git synced 2025-07-30 07:23:07 +03:00

Refactored most of the server_state interface into server_service

abstract interface.
This commit is contained in:
Teemu Ollakka
2018-06-18 16:52:41 +03:00
parent 4a92841cb2
commit ef5751943d
13 changed files with 61 additions and 98 deletions

View File

@ -56,6 +56,10 @@ namespace db
return 0;
}
bool statement_allowed_for_streaming() const override
{
return true;
}
int prepare_fragment_for_replication(wsrep::mutable_buffer&) override
{
return 0;

View File

@ -28,15 +28,16 @@ bool db::server_state::sst_before_init() const
return false;
}
std::string db::server_state::on_sst_required()
std::string db::server_state::sst_request()
{
return id();
}
void db::server_state::on_sst_request(
int db::server_state::start_sst(
const std::string& request, const wsrep::gtid& gtid, bool bypass)
{
server_.donate_sst(request, gtid, bypass);
return 0;
}
void db::server_state::background_rollback(wsrep::client_state&)
@ -48,3 +49,8 @@ void db::server_state::log_dummy_write_set(
{
wsrep::log_info() << "Dummy write set: " << meta.seqno();
}
void db::server_state::log_view(wsrep::client_state&, const wsrep::view&)
{
wsrep::log_info() << "View";
}

View File

@ -37,11 +37,12 @@ namespace db
wsrep::client_state* streaming_applier_client_state() override;
void release_client_state(wsrep::client_state*) override;
bool sst_before_init() const override;
void on_sst_request(const std::string&, const wsrep::gtid&, bool) override;
std::string on_sst_required() override;
int start_sst(const std::string&, const wsrep::gtid&, bool) override;
std::string sst_request() override;
void background_rollback(wsrep::client_state&) override;
void log_dummy_write_set(wsrep::client_state&, const wsrep::ws_meta&)
override;
void log_view(wsrep::client_state&, const wsrep::view&) override;
private:
wsrep::default_mutex mutex_;
wsrep::default_condition_variable cond_;