fix(connection): allow TargetConnectionManager, RecordingHelper to manage async Uni failures and timeouts #1214
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.
Welcome to Cryostat! 👋
Before contributing, make sure you have:
mainbranch[chore, ci, docs, feat, fix, test]To recreate commits with GPG signature
git fetch upstream && git rebase --force --gpg-sign upstream/mainRelated to #1130
Description of the change:
Refactoring to simplify various
Unihandling since retry/timeout logic is already centrally coordinated by the source (TargetConnectionManager, often transitively viaRecordingHelper), so there is no reason for the caller to add additional timeout handling on top. Awaiting "indefinitely" all the callsite is OK in these instances, since theUniis configured to either resolve to the expected kind of value, to resolve to certain types of error immediately if encountered, or else to retry the operation and eventually produce a timeout error response if no success can be found. This also fixes a bug where the deadline for the Uni was improperly calculated and was set far too long, in which case the old callsite deadlines stacked on top did actually have an effect.