[release-2.11] fix(pure): Make Pure FlashArray HTTP client timeout configurable#5615
Merged
rgolangh merged 2 commits intorelease-2.11from Mar 25, 2026
Merged
Conversation
…GE_HTTP_TIMEOUT_SECONDS Resolves: None Signed-off-by: Michael Jons <Michael.Jons@tre.se>
Resolves: None Signed-off-by: Michael Jons <Michael.Jons@tre.se>
|
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.




Backport: #5551
Make Pure FlashArray HTTP client timeout configurable
Problem:
During migrations of VMs with many disks, simultaneous
CopyVolumerequests to Pure FlashArray were timing out, leaving PVCs stuck inPending. In one observed case, 15 disks were migrated but only 7 reachedBoundstatus — the remaining 8 populator pods failed with:The root cause is that the HTTP client timeout was hardcoded to 30 seconds with no way to extend it, making it impossible to accommodate slower or heavily-loaded arrays.
Changes:
NewRestClientnow accepts anhttpTimeoutSeconds intparameter instead of a hardcoded value. A value of<= 0falls back to the 30s default.NewFlashArrayClonnerthreads the parameter through toNewRestClient.--storage-api-timeout-secondsCLI flag (default:30) is added to thevsphere-xcopy-volume-populatorbinary.How to configure:
Pass
--storage-api-timeout-seconds=<value>to the populator binary. Full operator-side wiring (CRD field →VSphereXcopyPluginConfig→VSphereXcopyVolumePopulatorSpec→ populator-controller pod args) is a follow-up.Default behaviour is unchanged — the timeout remains 30 seconds unless explicitly overridden.