Bug #78764 [NEW]: Opcache corruption with php-fpm

From: Date: Thu, 31 Oct 2019 06:37:13 +0000
Subject: Bug #78764 [NEW]: Opcache corruption with php-fpm
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-223527@lists.php.net to get a copy of this message
From: vkhramtsov at gmail dot com Operating system: Ubuntu 16.04.6 LTS PHP version: 7.3.11 Package: opcache Bug Type: Bug Bug description:Opcache corruption with php-fpm Description: ------------ Hello, For serving pages on our project we are using symfony framework, nginx and php-fpm on five servers. From time to time (usually once or twice in a week) all fpm workers on one (sometimes two) servers start to report errors like "Class Symfony\Component\Form\FormRegistry contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Symfony\Component\Form\FormRegistryInterface::getType)" (just example) while on other servers everything works fine with the same code. The only way to fix this issue is restart or reload php-fpm daemon. Issue appeared after changing ini setting "opcache.optimization_level" from "0x3" to "0x7" (https://github.com/php/php-src/blob/PHP-7.3.11/ext/opcache/Optimizer/zend_optimizer.h) Opcache settings: zend_extension=opcache.so opcache.validate_timestamps = 0 opcache.memory_consumption = 512M opcache.max_accelerated_files = 32531 opcache.interned_strings_buffer = 32 opcache.optimization_level = 0x7 Other settings have their default values. On every deployment we are resetting php opcache. Installed php modules: [PHP Modules] bcmath calendar Core ctype curl date dom exif fileinfo filter ftp gd gearman gettext hash iconv igbinary intl json libxml mbstring mongodb newrelic openssl pcntl pcre PDO Phar posix readline redis Reflection session shmop SimpleXML sockets sodium SPL standard sysvmsg sysvsem sysvshm tideways tokenizer wddx xml xmlreader xmlwriter xsl Zend OPcache zip zlib [Zend Modules] Zend OPcache If you need any additional information, don't hesitate to ask Test script: --------------- Unfortunately I cannot provide test script Expected result: ---------------- Everything works in the same manner on all servers. No messages about not implemented abstract methods Actual result: -------------- Messages about not implemented abstract methods appear Class Symfony\Component\Form\FormRegistry contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Symfony\Component\Form\FormRegistryInterface::getType -- Edit bug report at https://bugs.php.net/bug.php?id=78764&edit=1 -- Fix committed: https://bugs.php.net/fix.php?id=78764&r=fixed Fixed in release: https://bugs.php.net/fix.php?id=78764&r=alreadyfixed Need backtrace: https://bugs.php.net/fix.php?id=78764&r=needtrace Need Reproduce Script: https://bugs.php.net/fix.php?id=78764&r=needscript Try newer version: https://bugs.php.net/fix.php?id=78764&r=oldversion Not developer issue: https://bugs.php.net/fix.php?id=78764&r=support Expected behavior: https://bugs.php.net/fix.php?id=78764&r=notwrong Not enough info: https://bugs.php.net/fix.php?id=78764&r=notenoughinfo Submitted twice: https://bugs.php.net/fix.php?id=78764&r=submittedtwice register_globals: https://bugs.php.net/fix.php?id=78764&r=globals PHP version support discontinued: https://bugs.php.net/fix.php?id=78764&r=phptooold Daylight Savings: https://bugs.php.net/fix.php?id=78764&r=dst IIS Stability: https://bugs.php.net/fix.php?id=78764&r=isapi Install GNU Sed: https://bugs.php.net/fix.php?id=78764&r=gnused Floating point limitations: https://bugs.php.net/fix.php?id=78764&r=float No Zend Extensions: https://bugs.php.net/fix.php?id=78764&r=nozend MySQL Configuration Error: https://bugs.php.net/fix.php?id=78764&r=mysqlcfg

« previous php.bugs (#223527) next »