Dispatcher replay can reprocess obsolete events after reset or DDL progress
Open
@asddongmen is already working on this.
Since Jun 16, 2026.
severity/moderate
type/bug
- Dominant language
- Go
- Stars
- 56
- Forks
- 63
- Avg merge
- 2d 20h
- Merged PRs (30d)
- 34
Description
Bug Report
A dispatcher can replay events after reset, path release, or DDL/syncpoint progress. The replay should be safe: completed DDL/syncpoint block events and older DML should be skipped, and event-service scans should advance when a table has already been deleted.
Currently, commit-ts based deduplication can keep old epoch state, completed block events can be reported or processed again, and deleted-table raw KV events can resolve to the previous scan start, causing no progress.
This was found while splitting the runtime fix out of #5417 and is related to #5040.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.