DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
...
- Committed voter present in voters or observers
- If committed voter also exists in the voters or observer set, its ReplicaState is identical to the corresponding entry in that set.
- All field within the ReplicaState are fully available.
- Committed voter absent from voters or observers
- If a committed voter does
- is not exist
- present in either the voters or observers set, the following fields in its
ReplicaStateare assigned sentinel values:endLogOffset = -1lastFetchTimestamp = -1lastCaughtUpTimestamp = -1
- These fields above are help users to know
- provide information about the current voter set information and its not help user to understand committed voter status so we can allow them to be sentinel value
- , but they do not reflect the committed voter status. Therefore, it is acceptable for them to take sentinel values.
Benefit
This mechanism strengthens the Raft membership model by:
Making committed membership explicit.
Providing a consistent interface for tooling and client introspection.
Improving the overall transparency and debuggability of the cluster state.
Reducing performance overhead by avoiding disk operations, since all required voter state and high watermark data are memory-resident.
Compatibility, Deprecation, and Migration Plan
...
Unit test and integration test will be added.
Rejected Alternatives
- A new field,
state, can be introduced within theReplicaStatestructure to explicitly track the committed status of the voter.