Closed jesperume closed 9 years ago
Chiming in as current PHP 5.4 situation on both Debian 7 and RedHat 6 (with Software collections) is quite bad, no properly considered stable opcode caches available.
Not having opcode cache is kind of an blocker.
OPcache is a standard component in PHP 5.5 and the PECL version also supports the latest PHP 5.4 -- 5.4.18. It is stable at these versions. The issue with Debian 7 and RH6 is that -- IIRC -- they include 5.4.9 and OPcache craters if traits are used on this version (see #102) due to an underlying bug in PHP handling of traits for 5.4 below dot release 11. The project's position is that they don't want to add code changes to OPcache to work around bugs in core code that have been subsequently fixed in later PHP versions.
This may seem a hard position, but there is nothing to prevent you from downloading and building the current 5.4, that is 5.4.18, and the PECL opcache.
The position seems fine, but then would it be possible to release a stable version on pecl that requires for instance 5.4.11 ?
I am not sure why 7.0.2 is still tagged as "Beta". This is the same code base as is released in 5.5.1 and works fine for 5.9.11+, as far as I know. I've done quite a bit of testing on various 5.4.x releases which is why I found a couple of issues / fixes.
IMO, it's a lot more stable than some packages, but this is really one for Dmitry or Laruence to answer.
The same opcache sources are used in PHP-5.5.* and we consider them stable. However we don't have enough time to test OPcache carefully with all old php versions. (Every one needs it stable exactly for the minor release they are used :). Anyway, it must be stable enough for production.
Maybe reconsider releasing 7.0.4. Many backports from PHP 5.5 have been added and another release would be nice for oderly integration. When doing a self-baked integration via phpize etc. we don't get the usual nice addons like an updated package.xml, .reg files etc. Thanks for considering.
I'll create a new issue. This here is about declaring a release as stable. My point is doing another release being it beta or stable.
@rainerjung, as far as this point goes, the code is stable for 5.5 current and 5.4 current. I've also tested it against 5.3 current without know issues. However for example, I know that there are issues with the caching of traits in 5.4.9 -- the version that is currently bundled with Debian stable and current Ubuntu LTS. I submitted a fix to address this but the Zend team's policy is that they don't apply fixes to accommodate issues in .x versions that are no longer supported. The recommendation is instead to upgrade to PHP-5.4 current (5.4.24).
My suggestion for sysadmins wanting to use OPcache is to run the the entire PHP test suite for their configuration with the -d opcache.enable=1 -d opcache.enable_cli=1 -d opcache.optimization_level=-1
and if the tests are clean (a few will fail but if the .diff
files should show no OPcache related errors), then the configuration should be considered stable,
So from what your saying, it is not recommended to use ZendOptimizer on PHP bundled with RedHat/CentOs 7 (PHP 5.4.16) and especially not on Debian 7 (PHP 5.4.4).
I'm not saying this is Zend's problem to solve (cause it's not), but this is not good for PHP (5.4) in the "enterprise" (where packages maintained by distro is strongly preferred) considering APC is also not considered stable for PHP 5.4 and running without a opcache is a no go.
However for RedHat/CentOs there is PHP 5.5 SCL packages, and Debian hopefully comes out with Debian 8 early next year, so temporary issue.
a stable release was made on PECL
When can we expect a stable release? Do you recommend using the current beta version in production servers?