Bug #80024 [NEW]: Duplication of info about inherited socket after pool removing
From: syazov at plesk dot com
Operating system: All Unix
PHP version: 7.4.9
Package: FPM related
Bug Type: Bug
Bug description:Duplication of info about inherited socket after pool removing
Description:
------------
"FPM_SOCKETS_X" env variable isn't cleaned when it's become unused.
The issue is appeared if count of sockets is changed from
"FPM_ENV_SOCKET_SET_SIZE * n + 1" to "FPM_ENV_SOCKET_SET_SIZE * n"
In such cases the same socket presents in "FPM_SOCKETS_[socket_set_count
- 1]" and "FPM_SOCKETS_[socket_set_count]"
Test script:
---------------
#!/bin/bash -xe
# all paths are specific to default ones in Ubuntu 20.04
pool_d="/etc/php/7.4/fpm/pool.d"
pool_0="$pool_d/www.conf"
sed -i "s/^pm = dynamic$/pm = ondemand/" "$pool_0"
for i in {1001..1128}; do
pool_i="$pool_d/www_$i.conf"
cp -p "$pool_0" "$pool_i"
sed -i "s/^\[www\]$/\[www_$i\]/" "$pool_i"
sed -i "s|^listen = /run/php/php7.4-fpm.sock$|listen =
/run/php/php7.4-fpm.$i.sock|" "$pool_i"
done
systemctl restart php7.4-fpm
rm -f "$pool_d/www_1001.conf"
systemctl reload php7.4-fpm
systemctl reload php7.4-fpm
Expected result:
----------------
php-fpm reloads successfully.
Actual result:
--------------
"503 Service Unavailable" is shown
```
ls: cannot access '/run/php/php7.4-fpm.1128.sock': No such file or
directory
```
```
[27-Aug-2020 10:31:00] NOTICE: reloading: execvp("/usr/sbin/php-fpm7.4",
{"/usr/sbin/php-fpm7.4", "--nodaemonize", "--fpm-config",
"/etc/php/7.4/fpm/php-fpm.conf"})
[27-Aug-2020 10:31:02] NOTICE: using inherited socket fd=7,
"/run/php/php7.4-fpm.sock"
[27-Aug-2020 10:31:02] NOTICE: using inherited socket fd=135,
"/run/php/php7.4-fpm.1128.sock"
[27-Aug-2020 10:31:02] NOTICE: using inherited socket fd=9,
"/run/php/php7.4-fpm.1002.sock"
...
[27-Aug-2020 10:31:02] NOTICE: using inherited socket fd=134,
"/run/php/php7.4-fpm.1127.sock"
[27-Aug-2020 10:31:02] NOTICE: using inherited socket fd=135,
"/run/php/php7.4-fpm.1128.sock"
[27-Aug-2020 10:31:02] ERROR: epoll: unable to add fd 135
```
--
Edit bug report at https://bugs.php.net/bug.php?id=80024&edit=1
--
Fix committed: https://bugs.php.net/fix.php?id=80024&r=fixed
Fixed in release: https://bugs.php.net/fix.php?id=80024&r=alreadyfixed
Need backtrace: https://bugs.php.net/fix.php?id=80024&r=needtrace
Need Reproduce Script: https://bugs.php.net/fix.php?id=80024&r=needscript
Try newer version: https://bugs.php.net/fix.php?id=80024&r=oldversion
Not developer issue: https://bugs.php.net/fix.php?id=80024&r=support
Expected behavior: https://bugs.php.net/fix.php?id=80024&r=notwrong
Not enough info: https://bugs.php.net/fix.php?id=80024&r=notenoughinfo
Submitted twice: https://bugs.php.net/fix.php?id=80024&r=submittedtwice
register_globals: https://bugs.php.net/fix.php?id=80024&r=globals
PHP version support discontinued: https://bugs.php.net/fix.php?id=80024&r=phptooold
Daylight Savings: https://bugs.php.net/fix.php?id=80024&r=dst
IIS Stability: https://bugs.php.net/fix.php?id=80024&r=isapi
Install GNU Sed: https://bugs.php.net/fix.php?id=80024&r=gnused
Floating point limitations: https://bugs.php.net/fix.php?id=80024&r=float
No Zend Extensions: https://bugs.php.net/fix.php?id=80024&r=nozend
MySQL Configuration Error: https://bugs.php.net/fix.php?id=80024&r=mysqlcfg
Thread (10 messages)
- syazov at plesk dot com