1
0
mirror of https://github.com/codership/wsrep-lib.git synced 2025-08-05 04:01:12 +03:00

Provide additional provider error status. Fixed IST handling.

This commit is contained in:
Teemu Ollakka
2018-07-05 11:31:47 +03:00
parent b3de50fa05
commit fcefe9f03b
6 changed files with 60 additions and 18 deletions

View File

@@ -342,6 +342,7 @@ std::string wsrep::server_state::prepare_for_sst()
{
wsrep::unique_lock<wsrep::mutex> lock(mutex_);
state(lock, s_joiner);
lock.unlock();
return server_service_.sst_request();
}
@@ -517,6 +518,12 @@ void wsrep::server_state::on_view(const wsrep::view& view)
state(lock, s_joiner);
state(lock, s_initializing);
}
else if (state_ == s_joiner)
{
// Got partiioned from the cluster, got IST and
// started applying actions.
state(lock, s_joined);
}
}
else
{
@@ -739,7 +746,7 @@ void wsrep::server_state::state(
{ 1, 0, 0, 1, 0, 1, 0, 0, 0}, /* ized */
{ 1, 0, 0, 1, 1, 0, 0, 1, 0}, /* cted */
{ 1, 1, 0, 0, 0, 1, 0, 0, 0}, /* jer */
{ 1, 0, 0, 0, 0, 0, 0, 1, 1}, /* jed */
{ 1, 0, 0, 1, 0, 0, 0, 1, 1}, /* jed */
{ 1, 0, 0, 0, 0, 1, 0, 0, 1}, /* dor */
{ 1, 0, 0, 1, 0, 1, 1, 0, 1}, /* sed */
{ 1, 0, 0, 0, 0, 0, 0, 0, 0} /* ding */