#include <gcs_group_management_interface.h>
◆ ~Gcs_group_management_interface()
virtual Gcs_group_management_interface::~Gcs_group_management_interface |
( |
| ) |
|
|
virtualdefault |
◆ get_leaders()
Inspect the group's "consensus leader" configuration.
- Parameters
-
[out] | preferred_leaders | The members specified as preferred leaders. |
[out] | actual_leaders | The members actually carrying out the leader role at this moment. |
- Return values
-
GCS_OK | if successful, preferred_leaders and actual_leaders contain the result |
GCS_NOK | if unsuccessful |
Implemented in Gcs_xcom_group_management.
◆ get_maximum_write_concurrency()
virtual uint32_t Gcs_group_management_interface::get_maximum_write_concurrency |
( |
| ) |
const |
|
pure virtual |
◆ get_minimum_write_concurrency()
virtual uint32_t Gcs_group_management_interface::get_minimum_write_concurrency |
( |
| ) |
const |
|
pure virtual |
◆ get_write_concurrency()
virtual enum_gcs_error Gcs_group_management_interface::get_write_concurrency |
( |
uint32_t & |
write_concurrency | ) |
const |
|
pure virtual |
Retrieves the group's "write concurrency" value.
- Parameters
-
[out] | write_concurrency | A reference to where the group's "write concurrency" value will be written to |
- Return values
-
GCS_OK | if successful and write_concurrency has been written to |
GCS_NOK | if GCS was unable to request the current "write concurrency" value from the underlying implementation |
Implemented in Gcs_xcom_group_management.
◆ modify_configuration()
Method that allows sending of a new group configuration.
This is to be used when the group is blocked due to a loss of majority and only on one node from the new group.
Implementations in each binding might have there specificities but some rules must be followed:
- This should be a non-blocking call;
- Typically, it shall cause a View Change, since we are forcing a new configuration.
- Parameters
-
[in] | reconfigured_group | a list containing the new nodes |
Implemented in Gcs_xcom_group_management.
◆ set_everyone_leader()
virtual enum_gcs_error Gcs_group_management_interface::set_everyone_leader |
( |
| ) |
|
|
pure virtual |
Reconfigures the group's "consensus leaders.".
Instructs the underlying GCS to use every member as a consensus leader.
- Return values
-
GCS_OK | if successful |
GCS_NOK | if unsuccessful |
Implemented in Gcs_xcom_group_management.
◆ set_single_leader()
Reconfigures the group's "consensus leaders.".
Instructs the underlying GCS to use leader
as the single preferred consensus leader.
- Parameters
-
leader | The member you desire to act as a consensus leader. |
- Return values
-
GCS_OK | if successful |
GCS_NOK | if unsuccessful |
Implemented in Gcs_xcom_group_management.
◆ set_write_concurrency()
virtual enum_gcs_error Gcs_group_management_interface::set_write_concurrency |
( |
uint32_t |
write_concurrency | ) |
|
|
pure virtual |
Reconfigures the group's "write concurrency" value.
The caller should ensure that the supplied value is between minimum_write_concurrency
and maximum_write_concurrency
.
The method is non-blocking, meaning that it shall only send the request to an underlying GCS. The final result can be polled via get_write_concurrency
.
- Parameters
-
write_concurrency | The desired "write concurrency" value. |
- Return values
-
GCS_OK | if successful |
GCS_NOK | if unsuccessful |
Implemented in Gcs_xcom_group_management.
The documentation for this class was generated from the following file: