Description
When we resume a changefeed, we only pass the checkpoint to the changefeed aggregators, not the changefeed frontier. This means that if the frontier writes a checkpoint before it receives updates covering the previous checkpoint from the aggregators, it could overwrite the checkpoint with less information (i.e. the checkpoint can regress). This is undesirable because we would end up losing saved progress for no good reason. An easy solution would be to just pass the checkpoint to the changefeed frontier too or we can have the frontier read it off the job progress.
Relevant code comment:
cockroach/pkg/ccl/changefeedccl/changefeed_processors.go
Lines 1280 to 1296 in 1caa3e4
Jira issue: CRDB-42593
Epic CRDB-42869
Activity