Skip to content

feat(shard): add v2 consumer-offset commands with AckLevel#3151

Merged
numinnex merged 5 commits into
apache:masterfrom
krishvishal:extend-cons-offset
May 6, 2026
Merged

feat(shard): add v2 consumer-offset commands with AckLevel#3151
numinnex merged 5 commits into
apache:masterfrom
krishvishal:extend-cons-offset

Conversation

@krishvishal
Copy link
Copy Markdown
Contributor

Summary

  • Introduce AckLevel { NoAck, Quorum } and v2 wire commands StoreConsumerOffset2 / DeleteConsumerOffset2 that carry an explicit ack byte; v1 commands and wire format are untouched.
  • Unify the server's two offset-write paths so PollMessages auto-commit and explicit stores share a single shard entry point, with AckLevel selecting the policy.

@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 21, 2026

Codecov Report

❌ Patch coverage is 67.15867% with 178 lines in your changes missing coverage. Please review.
✅ Project coverage is 74.41%. Comparing base (fbf3885) to head (31cbb35).

Files with missing lines Patch % Lines
core/partitions/src/iggy_partition.rs 9.40% 106 Missing ⚠️
core/consensus/src/plane_helpers.rs 0.00% 41 Missing ⚠️
core/simulator/src/client.rs 0.00% 28 Missing ⚠️
core/consensus/src/observability.rs 0.00% 2 Missing ⚠️
core/binary_protocol/src/primitives/ack_level.rs 97.61% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##             master    #3151      +/-   ##
============================================
- Coverage     74.46%   74.41%   -0.05%     
  Complexity      943      943              
============================================
  Files          1183     1186       +3     
  Lines        105866   106343     +477     
  Branches      82899    83393     +494     
============================================
+ Hits          78835    79138     +303     
- Misses        24289    24433     +144     
- Partials       2742     2772      +30     
Components Coverage Δ
Rust Core 75.69% <67.15%> (-0.06%) ⬇️
Java SDK 60.14% <ø> (ø)
C# SDK 69.07% <ø> (-0.31%) ⬇️
Python SDK 81.43% <ø> (ø)
Node SDK 91.53% <ø> (ø)
Go SDK 39.60% <ø> (ø)
Files with missing lines Coverage Δ
core/binary_protocol/src/codes.rs 100.00% <ø> (ø)
core/binary_protocol/src/consensus/operation.rs 96.11% <100.00%> (+0.15%) ⬆️
core/binary_protocol/src/dispatch.rs 91.45% <100.00%> (+0.30%) ⬆️
...uests/consumer_offsets/delete_consumer_offset_2.rs 100.00% <100.00%> (ø)
...quests/consumer_offsets/store_consumer_offset_2.rs 100.00% <100.00%> (ø)
core/consensus/src/client_table.rs 93.72% <100.00%> (ø)
core/binary_protocol/src/primitives/ack_level.rs 97.61% <97.61%> (ø)
core/consensus/src/observability.rs 37.26% <0.00%> (-0.18%) ⬇️
core/simulator/src/client.rs 45.27% <0.00%> (-7.33%) ⬇️
core/consensus/src/plane_helpers.rs 82.01% <0.00%> (-7.07%) ⬇️
... and 1 more

... and 24 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Comment thread core/common/src/traits/consumer_offset_client.rs Outdated
@numinnex
Copy link
Copy Markdown
Contributor

This command suppose to be implemented only in the components that are used by the cluster which is in development, not by our core server.

Comment thread core/partitions/src/iggy_partition.rs
Comment thread core/simulator/src/client.rs
Comment thread core/integration/tests/server/scenarios/authentication_scenario.rs
@krishvishal krishvishal force-pushed the extend-cons-offset branch from 80165a5 to 7f2f668 Compare May 4, 2026 19:08
@numinnex numinnex merged commit 78f447e into apache:master May 6, 2026
80 checks passed
Standing-Man pushed a commit to Standing-Man/iggy that referenced this pull request May 6, 2026
- Introduce `AckLevel { NoAck, Quorum }` and v2 wire commands
`StoreConsumerOffset2` / `DeleteConsumerOffset2` that carry an explicit
ack byte; v1 commands and wire format are untouched.
- Unify the server's two offset-write paths so `PollMessages`
auto-commit and explicit stores share a single shard entry point, with
`AckLevel` selecting the policy.
Standing-Man pushed a commit to Standing-Man/iggy that referenced this pull request May 6, 2026
- Introduce `AckLevel { NoAck, Quorum }` and v2 wire commands
`StoreConsumerOffset2` / `DeleteConsumerOffset2` that carry an explicit
ack byte; v1 commands and wire format are untouched.
- Unify the server's two offset-write paths so `PollMessages`
auto-commit and explicit stores share a single shard entry point, with
`AckLevel` selecting the policy.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants