chore: updates datasources to report recoverability in errors#208
Merged
tanderson-ld merged 4 commits intomainfrom Dec 19, 2025
Merged
chore: updates datasources to report recoverability in errors#208tanderson-ld merged 4 commits intomainfrom
tanderson-ld merged 4 commits intomainfrom
Conversation
tanderson-ld
commented
Dec 18, 2025
| { | ||
| // if client is initializing, make it stop waiting | ||
| _initTask.SetResult(true); | ||
| _initTask.SetResult(false); |
Contributor
Author
There was a problem hiding this comment.
'Twas the night before bugmas
tanderson-ld
commented
Dec 18, 2025
| if (newError != null && !newError.Value.Recoverable) | ||
| { | ||
| _actionable.BlacklistCurrent(); | ||
| } |
Contributor
Author
There was a problem hiding this comment.
Now if a datasource decides to shutdown for a recoverable reason (who knows what that will be in the future), we don't blacklist too agressively.
kinyoklion
reviewed
Dec 18, 2025
kinyoklion
approved these changes
Dec 18, 2025
Member
kinyoklion
left a comment
There was a problem hiding this comment.
I would prefer no data source updates triggered by dispose. But everything else looks good.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Requirements
Didn't do yet, going to do as part of overall benchtesting before release.
Adds tracking of Recover-ability on data source ErrorInfo so that can be communicated outward by datasources. Then the FDv2 datasource can blacklist conditionally on the recover-ability of the error. This now allows data sources to report Off (intentional shutdown) without getting blacklisted.
Note
Add
RecoverabletoDataSourceStatus.ErrorInfoand propagate it across all data sources to driveInterruptedvsOff, conditional FDv2 blacklisting/fallback, and improved shutdown handling; update tests accordingly.bool RecoverabletoDataSourceStatus.ErrorInfoand include it inFromException/FromHttpError.HttpErrors.IsRecoverableand populateErrorInfo(setRecoverable=trueforInvalidData/StoreError).Interruptedfor recoverable,Offfor unrecoverable; passErrorInfoto status updates.Shutdown(ErrorInfo?)with atomic guard; updateDisposeto call shutdown and avoid duplicate work; ensureOffstatus on shutdown.false.FDv1Fallbackheader; blacklist current synchronizer only when error is unrecoverable.Recoverablesemantics,FDv1Fallback, status transitions (InterruptedvsOff), init task results, and shutdown behavior; add waits for async status updates.Written by Cursor Bugbot for commit c56e407. This will update automatically on new commits. Configure here.