Skip to content

tests: accept either attribution of the socket send warning - #224

Merged
EdmondDantes merged 1 commit into
mainfrom
fix/curl-broken-pipe-warning-attribution
Aug 13, 2026
Merged

tests: accept either attribution of the socket send warning#224
EdmondDantes merged 1 commit into
mainfrom
fix/curl-broken-pipe-warning-attribution

Conversation

@EdmondDantes

Copy link
Copy Markdown
Contributor

ALPINE_X64_DEBUG_ZTS failed in the OpCache step of run 31670068168 on tests/curl/054-multi_write_file_broken_pipe.phpt:

- Warning: Unknown: Send of %d bytes failed with errno=%d %s in Unknown on line 0
+ Warning: curl_multi_exec(): Send of 10000 bytes failed with errno=32 Broken pipe in %s054-multi_write_file_broken_pipe.php on line 26

The write into the closed pipe runs either inside curl_multi_exec() or from the event loop while the coroutine waits in curl_multi_select(). php_error_docref() names the active internal function when there is one and falls back to Unknown and line 0 when there is none, so both forms are correct and which one appears depends on when the transfer delivers its body. Both tests pinned the second form.

The pattern now accepts either. 025-write_file_broken_pipe.phpt carries the same line and the same exposure, so it changes too.

Checked on the local build: both tests pass plain, with opcache.enable_cli=1, and with opcache.jit=tracing. The two other red tests in tests/curl (063, 064) fail only through the ext/async symlink, where ../../../../ext/curl/tests/server.inc does not resolve; they are green in CI.

The write into the closed pipe runs either inside curl_exec() /
curl_multi_exec() or from the event loop while the coroutine waits, and
php_error_docref() prefixes the warning accordingly: the function name
and the call site in the first case, "Unknown" and line 0 in the second.
Both tests pinned the second form, so ALPINE_X64_DEBUG_ZTS failed in the
OpCache step once the transfer finished synchronously.
@codecov

codecov Bot commented Aug 13, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@EdmondDantes
EdmondDantes merged commit ee049c6 into main Aug 13, 2026
9 checks passed
@EdmondDantes
EdmondDantes deleted the fix/curl-broken-pipe-warning-attribution branch August 13, 2026 08:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant