Skip to content

revert(streaming): revert drained-subscription checkpoint advancement - #11330

Merged
ReubenBond merged 1 commit into
dotnet:mainfrom
ReubenBond:rb-revert-checkpoint-advancement
Sep 18, 2026
Merged

ReubenBond merged 1 commit into
dotnet:mainfrom
ReubenBond:rb-revert-checkpoint-advancement

Conversation

@ReubenBond

@ReubenBond ReubenBond commented Sep 18, 2026

Copy link
Copy Markdown
Member

Reverts #11249 because recoverable failures could disable checkpoint advancement for the queue's lifetime, allowing idle subscriptions to pin the checkpoint until the pulling agent restarts. This restores pre-#11249 subscription-based checkpoint progress while preserving #11268's shutdown-draining and handshake-ownership guarantees. We will re-attempt applying the advancement changes with recovery fixes in #11269.

Microsoft Reviewers: Open in CodeFlow

This reverts commit f64f1f1 while preserving the later shutdown-draining and handshake-ownership guarantees from dotnet#11268.

Restore subscription-based checkpoint progress after recoverable failures exposed a queue-wide lifetime opt-out in dotnet#11249. Re-attempt advancement and recovery in dotnet#11269.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🔵 Needs a closer look

The checkpointing and streaming lifecycle changes warrant final human review.

Review effort: Lite
Findings: None

What changed in this PR

This PR reverts drained-subscription checkpoint advancement while retaining shutdown-draining and handshake ownership behavior.

Changes:

  • Restores subscription-based checkpoint progress.
  • Removes read-boundary and caught-up tracking.
  • Removes tests and helpers for the reverted behavior.
File Description
test/​Orleans.Streaming.Tests/​StreamingTests/​PersistentStreamPullingAgentTests.cs Removes reverted behavior tests and helpers.
src/​Orleans.Streaming/​QueueAdapters/​IQueueCache.cs Updates checkpoint documentation.
src/​Orleans.Streaming/​PersistentStreams/​StreamConsumerCollection.cs Removes read-boundary tracking.
src/​Orleans.Streaming/​PersistentStreams/​QueueStreamDataStructures.cs Removes caught-up tracking.
src/​Orleans.Streaming/​PersistentStreams/​PersistentStreamPullingAgent.cs Restores subscription-based checkpoint progress.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@github-actions

Copy link
Copy Markdown
Contributor

Code coverage

Metric Pull request Current main Variance
Lines 82.71% (114,664 / 138,639) 82.70% (114,779 / 138,788) +0.0059 pp
Branches 72.02% (33,250 / 46,170) 72.05% (33,340 / 46,274) -0.0326 pp

Report-only conclusion: mixed.

The current-main baseline is commit f278e80c6a and uses the same reviewed coverage matrix.

Coverage combines every CI test matrix job, including providers, CodeGen, .NET 8/10, Linux, Windows, and macOS, using canonical physical source and branch identities.

The comparison remains report-only while normal line and branch variance is calibrated.

Coverage details

@ReubenBond
ReubenBond merged commit 39ea499 into dotnet:main Sep 18, 2026
73 checks passed
@ReubenBond
ReubenBond deleted the rb-revert-checkpoint-advancement branch September 18, 2026 23:42
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.

2 participants