Repository navigation
Honor requested waits for HTTP VM address lookups - #515
Open
sylvesterkaczmarek wants to merge 2 commits into
Open
sylvesterkaczmarek wants to merge 2 commits into
sylvesterkaczmarek wants to merge 2 commits into
Conversation
Signed-off-by: Sylvester Kaczmarek <16242628+sylvesterkaczmarek@users.noreply.github.com>
This branch has not been deployed
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.
Problem
HTTP VM address lookup requests use the fixed 30-second client timeout even when
VMs().IPrequests a longer server wait. A requested 120-second wait therefore reaches the transport with a 30-second deadline. The WebSocket path already extends its request timeout to the requested wait plus the usual HTTP allowance.Change
Share that existing wait-aware client selection with ordinary HTTP requests, and rename the internal helper to reflect both callers. Preserve longer explicitly configured timeouts, disabled client timeouts, and earlier caller-context deadlines. Requests without a wait keep their existing behavior; the shared client is not mutated.
Validation
git diff --checkpasses.Go 1.27.1 on macOS arm64. No real controller, VM, or prolonged network wait was used. No public API, authentication, query-format, or dependency changes.
Go documents how the client-wide timeout covers the complete request in http.Client.
Reproduced against
f101ade5d8fdcad5e9c346472698649e7107a715.