GH-51011: [C++][CI] Poll for GCS testbench readiness instead of one 10s attempt - #51012
Open
jonasdedden wants to merge 1 commit into
Open
jonasdedden wants to merge 1 commit into
jonasdedden wants to merge 1 commit into
Conversation
|
|
Contributor
Author
|
CI failure "Invalid: Attempt to initialize S3 after it has been finalized." because of #50930 |
uros-b
approved these changes
Aug 29, 2026
Member
|
Comments seem a bit verbose, but otherwise LGTM! |
… one 10s attempt The 10s startup budget was also passed to LimitedTimeRetryPolicy, so the readiness loop made a single attempt. Use 5s per attempt and 60s overall, and keep the testbench's stderr so startup failures show up in CI logs.
jonasdedden
force-pushed
the
gcs-testbench-readiness
branch
from
September 25, 2026 19:25
e332217 to
39a1980
Compare
Contributor
Author
|
@uros-b thinned it down a bit |
Member
|
Nice, thank you @jonasdedden! Could we get green CI here? Also, please ping expert committers for further review |
Contributor
Author
|
Thanks @uros-b! The two remaining failures are unrelated flakes that also occur on main:
Meanwhile, the GCS "failed to listen" flake this PR addresses hit main again on 2026-09-26 (run 36235750984 (https://github.com/apache/arrow/actions/runs/36235750984)), whilst not appearing anywhere in this PR AFAIS. |
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.
Rationale for this change
arrow-gcsfs-testsometimes fails on CI withCould not start GCS emulator 'storage-testbench' (failed to listen). The testbench does listen, it is just slow to answer: it runs under Werkzeug's reloader, which binds the socket in the parent and serves from a child that re-imports grpcio, protobuf and flask first.GcsTestbenchpasses its 10s startup budget toLimitedTimeRetryPolicyas well, so the readiness loop only makes one attempt. And since stderr is discarded, the CI log can't tell a slow start from a crash.What changes are included in this PR?
In
gcsfs_test.cc:(did not become ready)instead of(failed to listen)util::Process::IgnoreStderris now unused; I can remove it if preferred.Are these changes tested?
By
arrow-gcsfs-testitself. I couldn't reproduce the CI flake on demand, so this widens the margin and makes the next failure diagnosable.Are there any user-facing changes?
No.