🎉 New Feature: Add ASAN/UBSan PHP versions#20
Conversation
|
@shivammathur are you able to retry the two failing tests? It looks like they are unrelated to the PR itself |
|
Looks like some extension is reporting leaks, but the logs do not show which one. |
f502151 to
ea4758d
Compare
dfb86f7 to
f6d7b12
Compare
f7adefd to
dda0407
Compare
819fd04 to
a765035
Compare
|
@shivammathur I think I have it, could you trigger CI again for this PR? |
af31876 to
69808da
Compare
69808da to
ae2cda3
Compare
|
Looks like there is an ODR violation in PHP ... I'll have a look later this week. |
|
I guess there is not anything we can do against this ODR violation, I added a suppression rule that should push us passed this problem. I'll analyze if this is actually a problem, I doubt it. It is a side product of Could you re-trigger the CI please? |
|
I created an upstream issue for the ODR violation: microsoft/msphpsql#1632 |
b3ee0ed to
379a3af
Compare
|
@shivammathur could you give that CI job a bump please |
|
And another one here, sorry 😞 |
|
I have run it again, I will try to have a look why this is flaky this weekend. |
a5c9a7f to
a76940a
Compare
a76940a to
14c546b
Compare
On systemd runners (github-test), `service php-fpm restart` is handled by systemd, which starts php-fpm.service without the ASAN env vars that test_sapi.sh writes to /etc/default/php-fpm<ver>. php-fpm then runs with ASAN defaults (detect_leaks=1, detect_odr_violation=2) and aborts, so Apache/nginx get no FastCGI backend and the SAPI check fails. Write a systemd drop-in with ASAN_OPTIONS/UBSAN_OPTIONS/ZEND_DONT_UNLOAD_MODULES and reload the daemon so the systemd-managed php-fpm picks them up, and wrap switch_sapi with a timeout to guard against a php-fpm start hang.
Related discussion: see PHP Foundation Slack
Description
This PR adds building of ASAN versions to PHP 8.0+