Skip to content

[C++][FS][Azure] Azurite tests can race service startup #50876

Description

@booxter

AzuriteEnv::Make() returns immediately after spawning Azurite, without waiting for the Blob service to become ready. The first test setup request can therefore fail with:

Fail to get a new connection for: http://127.0.0.1:10000. Could not connect to server

Observed with Arrow 23.0.0 on aarch64 macOS:
https://hydra.nixos.org/log/gddq769pa1lyj3x3fnm9c0m13k26qsci-arrow-cpp-23.0.0.drv

The same log then contains "Azurite Blob service is starting..." followed by "Azurite Blob service is successfully listening...", and subsequent Azurite tests pass.

This likely surfaced as a package failure because nixpkgs runs CTest directly and does not use Arrow CI’s --repeat until-pass:3 mitigation:
https://github.com/apache/arrow/blob/apache-arrow-23.0.0/ci/scripts/cpp_test.sh#L115-L120

That retry was added in #40080 for #40121. The existing report concerns truncated HTTP responses rather than Azurite not yet listening, so this appears to be a different failure mode.

Expected behavior: the test environment should wait until Azurite is ready before starting filesystem tests.

This report was prepared with Codex. Every word was read and understood by a human before submission.

Component(s)

C++

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions