Skip to content

Conversation

TaiJuWu
Copy link
Collaborator

@TaiJuWu TaiJuWu commented Oct 16, 2025

MetadataQuorumCommand and describeMetadataQuorum support returning
committed voter.

The committed voter can come from KRaftControllerStateMachine so
LeaderState extend to include it. Because all offset and voterSet will
be restored in KRaftControllerStateMachine, we can get committed voters
from KRaftControllerStateMachine.

peterxcli and others added 30 commits October 15, 2024 01:24
- Introduce committedVoters field in QuorumInfo class
- Update KafkaAdminClient to populate committedVoters from partition info
- Add getter method for committedVoters in QuorumInfo
- Rename `voterStates` to `currentVoterStates` for clarity
- Update all references to use the new name
- Add `currentVoterStates()` getter method
- Remove unused `voterStates()` method
…ateMachine

- Introduce new method `lastVoterSetWithOffset()` in KRaftControlRecordStateMachine
- Return a Map.Entry containing the last VoterSet and its corresponding offset
- Synchronize access to voterSetHistory for thread safety
…rum API

- Add committedVoterStates to LeaderState to track committed voters
- Update LeaderState to manage both current and committed voter states
- Modify KafkaRaftClient to use new lastVoterSetWithOffset method
- Extend RaftUtil.buildDescribeQuorumResponse to include committed voters
- Update DescribeQuorum API to support committed voters (version 3)
This reverts commit 91da1a1.
@github-actions github-actions bot added triage PRs from the community tools kraft clients labels Oct 16, 2025
@TaiJuWu TaiJuWu marked this pull request as ready for review October 16, 2025 08:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants