sapi/fpm/tests/tester.inc can send SIGUSR2 to pid 0, killing run-tests.php
Maintainer antworten meist innerhalb von 1 Tag
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 78/100
Rechercherichtung
Beginne mit sapi/fpm/tests/tester.inc und dem Test sapi/fpm/tests/bug80024-socket-reduced-inherit.phpt, der dem Bericht zufolge kill -USR2 0 aufruft. Lies den angehängten no-kill-zero.patch zur vorgeschlagenen Schutzmaßnahme und führe anschließend den ausgewählten Test unter OpenIndiana mit run-tests.php aus. Fertig ist es, wenn der Test Prozessgruppe 0 kein Signal senden kann und der Test-Runner abgeschlossen wird, ohne getötet zu werden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Description
While testing https://github.com/OpenIndiana/oi-userland/pull/28065, https://github.com/OpenIndiana/oi-userland/pull/28066, and https://github.com/OpenIndiana/oi-userland/pull/28067, (packaging 8.3.36, 8.4.27, and 8.5.12, respectively), I observed test runs aborting with a "User Signal 2" or "zsh: user-defined signal 2" error (the exact error depends on which shell you're running).
Digging further I caught the test sapi/fpm/tests/bug80024-socket-reduced-inherit.phpt invoking kill -USR2 0; this sends a SIGUSR2 signal to the current process group, killing both the test and the run-tests.php test runner, aborting the test run.
I worked around this with the attached "no-kill-zero.patch" which declines to send a signal if it can't find a non-zero pid. With this patch in place, run-tests.php can run to completion on openindiana.
Example of a run clobbered by this (without the patch):
builder@builder:/z/ws/oi-userland-dev/components/web/php/php-8_5$ gmake test COMPONENT_TEST_ARGS="TESTS=sapi/fpm/tests/bug80024-socket-reduced-inherit.phpt"
/bin/rm -f -r /z/ws/oi-userland-dev/components/web/php/php-8_5/build/test/amd64
/bin/mkdir -p /z/ws/oi-userland-dev/components/web/php/php-8_5/build/test/amd64
(cd /z/ws/oi-userland-dev/components/web/php/php-8_5/build/amd64 ; \
/usr/bin/env -i CARGO_HOME="/z/ws/oi-userland-dev/components/web/php/php-8_5/build/amd64/.cargo" PATH="/usr/gcc/14/bin:/usr/clang/21/bin:/usr/ruby/3.2/bin:/usr/jdk/openjdk21/bin:/usr/postgres/16/bin:/usr/mariadb/10.6/bin:/usr/openssl/3/bin:/usr/bin/amd64:/usr/bin:/usr/gnu/bin:/usr/sbin/amd64:/usr/sbin" NO_INTERACTION=yes \
/usr/gnu/bin/make \
TESTS=sapi/fpm/tests/bug80024-socket-reduced-inherit.phpt test) \
|& /usr/bin/tee /z/ws/oi-userland-dev/components/web/php/php-8_5/build/test/amd64/test-64-results
Build complete.
Don't forget to run 'make test'.
=====================================================================
PHP : /z/ws/oi-userland-dev/components/web/php/php-8_5/build/amd64/sapi/cli/php
PHP_SAPI : cli
PHP_VERSION : 8.5.12
ZEND_VERSION: 4.5.12
PHP_OS : SunOS - SunOS builder 5.11 illumos-de1199e407 i86pc
INI actual : /z/ws/oi-userland-dev/components/web/php/php-8_5/build/amd64/tmp-php.ini
More .INIs :
---------------------------------------------------------------------
PHP : /z/ws/oi-userland-dev/components/web/php/php-8_5/build/amd64/sapi/cgi/php-cgi
PHP_SAPI : cgi-fcgi
PHP_VERSION : 8.5.12
ZEND_VERSION: 4.5.12
PHP_OS : SunOS - SunOS builder 5.11 illumos-de1199e407 i86pc
INI actual : /z/ws/oi-userland-dev/components/web/php/php-8_5/build/amd64/tmp-php.ini
More .INIs :
---------------------------------------------------------------------
---------------------------------------------------------------------
PHP : /z/ws/oi-userland-dev/components/web/php/php-8_5/build/amd64/sapi/phpdbg/phpdbg
PHP_SAPI : phpdbg
PHP_VERSION : 8.5.12
ZEND_VERSION: 4.5.12
PHP_OS : SunOS - SunOS builder 5.11 illumos-de1199e407 i86pc
INI actual : /z/ws/oi-userland-dev/components/web/php/php-8_5/build/amd64/tmp-php.ini
More .INIs :
---------------------------------------------------------------------
CWD : /z/ws/oi-userland-dev/components/web/php/php-8_5/php-8.5.12
Extra dirs :
VALGRIND : Not used
=====================================================================
Running selected tests.
User Signal 2 gmake test COMPONENT_TEST_ARGS="TESTS=sapi/fpm/tests/bug80024-socket-reduced-inherit.phpt"
Output for 8.3.x and 8.4.x is similar.
PHP Version
Observed while running `make test` after builds of 8.3.36, 8.4.27, and 8.5.12 on openindiana.
Operating System
Openindiana
- Vorherrschende Sprache
- C
- Sterne
- 40.7k
- Forks
- 8.3k
- Ø Merge
- 2 T. 16 Std.
- Gemergte PRs (30 T.)
- 151
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus php/php-src
-
zend_set_local_var() overwrites existing compiled variable (CV) zval without calling zval_ptr_dtor()Evtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. OffenBug Status: Needs Triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 1 Tag
-
Case-insensitive substr_compare, ksort, krsort are still locale-dependentEvtl. vergeben @lazerg hat das vor 3 Tagen übernommen. OffenBug Extension: standard Status: Verified
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 73/100
php/php-src#24552 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
master: part of the mbstring bailout fix got lost in a mergeEvtl. vergeben @lazerg hat das vor 4 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Maintainer antworten meist innerhalb von 1 Tag
-
Bug Status: Needs Triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 64/100
Maintainer antworten meist innerhalb von 1 Tag
Ähnliche Issues
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
AOMediaCodec/SVT-AV1#3320 ·
-
difficulty: easy
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 64/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
open-quantum-safe/liboqs#2647 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
Maintainer antworten meist innerhalb von 1 Tag
-
Broken links in the docsOffen
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 84/100
Maintainer antworten meist innerhalb von 1 Tag