Skip to content

feat(stream): deprecate no-shuffle backfill creation#25963

Draft
wenym1 wants to merge 2 commits into
mainfrom
wenym1/deprecate-no-shuffle-backfill
Draft

feat(stream): deprecate no-shuffle backfill creation#25963
wenym1 wants to merge 2 commits into
mainfrom
wenym1/deprecate-no-shuffle-backfill

Conversation

@wenym1

@wenym1 wenym1 commented Jun 12, 2026

Copy link
Copy Markdown
Contributor

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.

What's changed and what's your intention?

Deprecate creating new no-shuffle backfill jobs while preserving compatibility for existing persisted jobs.

  • Frontend planning now selects SnapshotBackfill when available and otherwise falls back to ArrangementBackfill for MV, index, vector index, and sink creation.
  • streaming_use_arrangement_backfill and the related developer config remain accepted for compatibility, but are marked deprecated and ignored for new streaming jobs.
  • Legacy no-shuffle BackfillExecutor now drains the remaining snapshot immediately after the initial barrier at the committed previous epoch before consuming upstream messages again.
  • Planner and runtime backfill tests were updated to cover MV, index, and sink fallback behavior.

Checklist

  • I have written necessary rustdoc comments.
  • I have added necessary unit tests and integration tests.
  • I have added test labels as necessary.
  • I have added fuzzing tests or opened an issue to track them.
  • My PR contains breaking changes.
  • My PR changes performance-critical code, so I will run (micro) benchmarks and present the results.
  • I have checked the Release Timeline and Currently Supported Versions to determine which release branches I need to cherry-pick this PR into.

Documentation

  • My PR needs documentation updates.
Release note

New streaming jobs no longer use no-shuffle backfill. If snapshot backfill is unavailable, RisingWave uses arrangement backfill instead. The streaming_use_arrangement_backfill session variable is deprecated and ignored for new streaming jobs, while existing no-shuffle backfill jobs remain compatible.

wenym1 commented Jun 12, 2026

Copy link
Copy Markdown
Contributor Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@github-actions github-actions Bot added the type/feature Type: New feature. label Jun 12, 2026
@wenym1 wenym1 added user-facing-changes Contains changes that are visible to users type/deprecate Type: To deprecate a not-used feature. A-streaming Area: Streaming engine. A-optimizer Area: SQL optimizer. A-common Area: `src/common` things, array, data type, row, etc. ci/run-backfill-tests labels Jun 12, 2026
@wenym1 wenym1 force-pushed the wenym1/deprecate-no-shuffle-backfill branch from 416084d to bb71c8c Compare June 12, 2026 13:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-common Area: `src/common` things, array, data type, row, etc. A-optimizer Area: SQL optimizer. A-streaming Area: Streaming engine. ci/run-backfill-tests type/deprecate Type: To deprecate a not-used feature. type/feature Type: New feature. user-facing-changes Contains changes that are visible to users

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant