changefeedccl: Fix error handling in mixed version state #93155
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Prior PR #90810 changed error handling approach used by CDC to be "retry by default".
The above PR failed to account for some of the
situations that may arrise in mixed version state. In particular, when upgrading, if the aggregator node gets restarted with the new version, while the coordinator still runs old binary, and the new aggregator encounters a retryable error, that error would not be explicitly marked as retryable, causing the old coordinator binary to treat the error as a terminal error.
Other combination (new coordinator, old aggregator) is not succeptible to this situation.
This PR partially reverts changes in the #90810 so previously retryable errors continue to be explicitly marked as retryable.
There is no need to introduce version gates since the error handling should be backward compatible, and with this PR, operate correctly in the mixed version state.
Epic: None
Release note: none