mirror of
https://github.com/codership/wsrep-lib.git
synced 2025-07-28 20:02:00 +03:00
Refactored server_service out of server_state.
This commit is contained in:
@ -173,7 +173,7 @@ int wsrep::server_state::on_apply(
|
||||
assert(not_replaying);
|
||||
assert(find_streaming_applier(
|
||||
ws_meta.server_id(), ws_meta.transaction_id()) == 0);
|
||||
wsrep::client_state* sac(streaming_applier_client_state());
|
||||
wsrep::client_state* sac(server_service_.streaming_applier_client_state());
|
||||
start_streaming_applier(
|
||||
ws_meta.server_id(), ws_meta.transaction_id(), sac);
|
||||
sac->start_transaction(ws_handle, ws_meta);
|
||||
@ -191,7 +191,7 @@ int wsrep::server_state::on_apply(
|
||||
sac->after_command_before_result();
|
||||
sac->after_command_after_result();
|
||||
}
|
||||
log_dummy_write_set(client_state, ws_meta);
|
||||
server_service_.log_dummy_write_set(client_state, ws_meta);
|
||||
}
|
||||
else if (ws_meta.flags() == 0)
|
||||
{
|
||||
@ -219,7 +219,7 @@ int wsrep::server_state::on_apply(
|
||||
sac->after_command_before_result();
|
||||
sac->after_command_after_result();
|
||||
}
|
||||
log_dummy_write_set(client_state, ws_meta);
|
||||
server_service_.log_dummy_write_set(client_state, ws_meta);
|
||||
}
|
||||
else if (commits_transaction(ws_meta.flags()))
|
||||
{
|
||||
@ -251,7 +251,7 @@ int wsrep::server_state::on_apply(
|
||||
sac->after_command_after_result();
|
||||
stop_streaming_applier(
|
||||
ws_meta.server_id(), ws_meta.transaction_id());
|
||||
release_client_state(sac);
|
||||
server_service_.release_client_state(sac);
|
||||
}
|
||||
}
|
||||
else
|
||||
@ -273,16 +273,6 @@ int wsrep::server_state::on_apply(
|
||||
return ret;
|
||||
}
|
||||
|
||||
#if 0
|
||||
bool wsrep::server_state::statement_allowed_for_streaming(
|
||||
const wsrep::client_state&,
|
||||
const wsrep::transaction&) const
|
||||
{
|
||||
/* Streaming not implemented yet. */
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
void wsrep::server_state::start_streaming_applier(
|
||||
const wsrep::id& server_id,
|
||||
const wsrep::transaction_id& transaction_id,
|
||||
|
@ -24,6 +24,7 @@
|
||||
wsrep::transaction::transaction(
|
||||
wsrep::client_state& client_state)
|
||||
: provider_(client_state.provider())
|
||||
, server_service_(client_state.server_state().server_service())
|
||||
, client_state_(client_state)
|
||||
, id_(transaction_id::invalid())
|
||||
, state_(s_executing)
|
||||
@ -635,7 +636,7 @@ bool wsrep::transaction::bf_abort(
|
||||
// rollbacker gets control.
|
||||
state(lock, wsrep::transaction::s_aborting);
|
||||
lock.unlock();
|
||||
client_state_.server_state().background_rollback(client_state_);
|
||||
server_service_.background_rollback(client_state_);
|
||||
}
|
||||
}
|
||||
return ret;
|
||||
@ -721,8 +722,8 @@ int wsrep::transaction::certify_fragment(
|
||||
// std::auto_ptr<wsrep::client_state> sr_client_state(
|
||||
// client_state_.server_state().local_client_state());
|
||||
wsrep::scoped_client_state<wsrep::client_deleter> sr_client_state_scope(
|
||||
client_state_.server_state().local_client_state(),
|
||||
wsrep::client_deleter(client_state_.server_state()));
|
||||
server_service_.local_client_state(),
|
||||
wsrep::client_deleter(server_service_));
|
||||
wsrep::client_state& sr_client_state(
|
||||
sr_client_state_scope.client_state());
|
||||
wsrep::client_state_switch client_state_switch(
|
||||
@ -928,7 +929,7 @@ void wsrep::transaction::streaming_rollback()
|
||||
{
|
||||
assert(streaming_context_.rolled_back() == false);
|
||||
wsrep::client_state* sac(
|
||||
client_state_.server_state().streaming_applier_client_state());
|
||||
server_service_.streaming_applier_client_state());
|
||||
client_state_.server_state().start_streaming_applier(
|
||||
client_state_.server_state().id(), id(), sac);
|
||||
sac->adopt_transaction(*this);
|
||||
|
@ -289,7 +289,7 @@ namespace
|
||||
|
||||
try
|
||||
{
|
||||
std::string req(server_state.sst_request());
|
||||
std::string req(server_state.server_service().sst_request());
|
||||
*sst_req = ::strdup(req.c_str());
|
||||
*sst_req_len = strlen(req.c_str());
|
||||
return WSREP_CB_SUCCESS;
|
||||
@ -369,7 +369,7 @@ namespace
|
||||
wsrep::gtid gtid(wsrep::id(req_gtid->uuid.data,
|
||||
sizeof(req_gtid->uuid.data)),
|
||||
wsrep::seqno(req_gtid->seqno));
|
||||
if (server_state.start_sst(req, gtid, bypass))
|
||||
if (server_state.server_service().start_sst(req, gtid, bypass))
|
||||
{
|
||||
return WSREP_CB_FAILURE;
|
||||
}
|
||||
|
Reference in New Issue
Block a user