Please backport php5-apcu version 4.0.6 to Ubuntu 14.04 LTS

Bug #1374892 reported by Chris
386
This bug affects 77 people
Affects Status Importance Assigned to Milestone
php-apcu (Ubuntu)
Won't Fix
Undecided
Unassigned

Bug Description

4.0.2 has a bug where it frequently causes a fatal error when attempting to iterate keys: https://github.com/krakjoe/apcu/issues/60

The 4.0.6 build from utopic is stable

Revision history for this message
Chris (h-launchpad-chrisalfano-com) wrote :

How do we get someone to look at this? Ubuntu 14.04 is currently an unstable platform for PHP applications relying on APCU without pulling the 4.0.6 build from 14.10.

4.0.2 is fatally unstable.

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in php-apcu (Ubuntu):
status: New → Confirmed
Revision history for this message
kokushibyou (kokushibyou) wrote :

I'd like to request this be bumped to 4.0.7. I've verified 4.0.2 is very horrible and unusable in any real environment due to the regular deadlocking. 4.0.7 has been working great for me, so far.

Revision history for this message
Johannes Hessellund (osos) wrote :

Could this be the reason for the crash during OwnCloud 8.0.0?

See https://github.com/owncloud/core/issues/14175

tags: added: backport
summary: - apcu needs version bump to 4.0.6
+ Please backport php5-apcu version 4.0.6 to Ubuntu 14.04 LTS
Revision history for this message
Johannes Hessellund (osos) wrote :

@Ondřej Surý, any change that you know who to get in contact with to get APCu version 4.0.6+ backported to Ubuntu 14.04 LTS?

tags: added: trusty
Revision history for this message
Ondřej Surý (ondrej) wrote :
Revision history for this message
Holger Roencker (holger-x) wrote :

+1 update is needed

Kai Mallea (i-kai)
Changed in php-apcu (Ubuntu):
status: Confirmed → In Progress
status: In Progress → Confirmed
Revision history for this message
Dan (daniel-scharon) wrote :

@Johannes: yes, this is the reason for crashing ownCloud 8.0.0

Revision history for this message
Joel (mr-throk) wrote :

+1 for an update :)

Revision history for this message
Bjoern Voigt (bjoern) wrote :

+1. Owncloud 8.0 should also work, if an additional PHP package is installed.

Revision history for this message
T. K. (stuttgart-live) wrote :

Please fix this.
For those who want to manually install APCu version 4.0.6 or newer: https://github.com/owncloud/core/issues/14386

Revision history for this message
Jürgen Weigert (jnweiger) wrote :

Also +1 from my side, if that helps.

https://wiki.ubuntu.com/StableReleaseUpdates#When gives clear criteria for an SRU application.
Can we point to specific examples of e.g. data loss?

Revision history for this message
Joe Watkins (krakjoe) wrote :

I'm maintainer for APCu.

https://github.com/krakjoe/apcu/issues/108

+1, as requested.

Revision history for this message
Joe Watkins (krakjoe) wrote :

In case not clear, I agree that it is a critical update, 4.0.2 suffers from deadlocking, aswell as general instability.

Revision history for this message
Johannes Rohr (jorohr) wrote :

This bug will soon celebrate its first birthday. Is it really that difficult to fix and to upload what appears to be a maintenance release?

Revision history for this message
Bjoern Voigt (bjoern) wrote :

+1

Revision history for this message
Sven Hoexter (sven-timegate) wrote :

Since this might not qualify for a SRU I've request a backport now in https://bugs.launchpad.net/trusty-backports/+bug/1500167
to maybe help to resolve this issue in a sane way.

I didn't search for other people who might have published a backport and just added it to my own ppa since it's just a rebuild.
The version number is a bit mangled (.2 instead of .1) because of some back and forth I had at work.

Revision history for this message
zadir (jzadir) wrote :

+1

Revision history for this message
Chris (h-launchpad-chrisalfano-com) wrote :

All the mirrors seem to be missing the working 4.0.6 deb from 14.10 now :(

http://packages.ubuntu.com/utopic/amd64/php5-apcu/download

Revision history for this message
Axel Pospischil (apos) wrote :

Hey.

This version switched to 4.0.7 meanwhile if you are looking into the archive ;-)

The problem nevertheless is very annoying, because it is needed for e.g. the actual owncloud server 8.2 !

The 4.0.7 version from 14.10 seems to be not installable in 14.04 LTS because of dependecy problems:

# dpkg -i php5-apcu_4.0.7-1build1_amd64.deb
(Reading database ... 115350 files and directories currently installed.)
Preparing to unpack php5-apcu_4.0.7-1build1_amd64.deb ...
Unpacking php5-apcu (4.0.7-1build1) over (4.0.2-2build1) ...
dpkg: dependency problems prevent configuration of php5-apcu:
 php5-apcu depends on phpapi-20131226; however:
  Package phpapi-20131226 is not installed.

dpkg: error processing package php5-apcu (--install):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 php5-apcu

Please make available php5-apcu 4.0.7 for the LTS version - at least for ubuntu server!

Greets
Axel

Revision history for this message
Axel Pospischil (apos) wrote :

Hi,

at the moment

 * php5-apcu_4.0.7-1build1~ubuntu14.04.1_amd64.deb

reached me with the standard update procedure from trusty/backports repo:

root@server:~# apt-show-versions php5-apcu
php5-apcu:amd64/trusty-backports 4.0.7-1build1~ubuntu14.04.1 uptodate

So at least if this repository is enabled, we can use this now.

Greets
Axel

Greets Axel

Revision history for this message
Axel Pospischil (apos) wrote :

... That means, the problem is

1. not fixed for Ubuntu LTS 14.04 and major (!) third party packages, that need this (owncloud)
2. this bug is not a duplicate of but #1500167 which asks explicitely for the BACKPORT repo

So I think the duplicate flag should be removed and this should be resolved for the LTS version urgently !

Greets
Axel

Revision history for this message
YouDontNeedMyName (208c6792) wrote :

#uname -a
Linux <host_name_redacted> 3.16.0-52-generic #71~14.04.1-Ubuntu SMP Fri Oct 23 17:24:53 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

# apt-get install php5-apcu
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  php5-apcu
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/73.2 kB of archives.
After this operation, 313 kB of additional disk space will be used.
Selecting previously unselected package php5-apcu.
(Reading database ... 69260 files and directories currently installed.)
Preparing to unpack .../php5-apcu_4.0.2-2build1_amd64.deb ...
Unpacking php5-apcu (4.0.2-2build1) ... <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<WTH?
Setting up php5-apcu (4.0.2-2build1) ...
php5_invoke: Enable module apcu for cli SAPI
php5_invoke: Enable module apcu for apache2 SAPI
root@keep:/tmp# php5 -m
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dba
dom
ereg
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
intl
json
ldap
libxml
mbstring
mhash
mysql
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
readline
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tokenizer
wddx
xml
xmlreader
xmlwriter
Zend OPcache
zip
zlib

[Zend Modules]
Zend OPcache

# tail -5 /var/log/owncloud.log
{"reqId":"i4CpeXu3Ix\/vEGLIhBUG","remoteAddr":"192.168.0.10","app":"remote","message":"Missing memcache class \\OC\\Memcache\\APCu for local cache","level":4,"time":"2015-11-06T20:44:35-07:00"}
{"reqId":"weifamjP+yWvMDx\/wnM7","remoteAddr":"192.168.0.2","app":"remote","message":"Missing memcache class \\OC\\Memcache\\APCu for local cache","level":4,"time":"2015-11-06T20:45:01-07:00"}
{"reqId":"w2N7OaYjER9E\/fZgD3Ax","remoteAddr":"192.168.0.10","app":"remote","message":"Missing memcache class \\OC\\Memcache\\APCu for local cache","level":4,"time":"2015-11-06T20:45:07-07:00"}
{"reqId":"ZnOVVFP94OUl07Vg3LaP","remoteAddr":"192.168.0.2","app":"remote","message":"Missing memcache class \\OC\\Memcache\\APCu for local cache","level":4,"time":"2015-11-06T20:45:33-07:00"}
{"reqId":"FEmYpnsCeCgkxEQltw9k","remoteAddr":"192.168.0.10","app":"remote","message":"Missing memcache class \\OC\\Memcache\\APCu for local cache","level":4,"time":"2015-11-06T20:45:39-07:00"}

What's going on, is this a OwnCloud issue or a PHP or a Ubuntu issue? Everything was running PERFECTLY until I did an apt-get dist-upgrade and rebooted.

Worked fine with previous php5-apcu 4.0.6-1 version...Can I get that from someone please?

Was directed here from https://github.com/owncloud/core/issues/14386

Revision history for this message
Axel Pospischil (apos) wrote :

Hi YouDontNeedMyName (why?),

 sudo apt-get install php5-apcu/trusty-backports

By the way: this solution is mentioned in the thread from github that directed you here in the last post from me and stieler-it ;-)

Revision history for this message
Malte (9-launchpad-net) wrote :

I'm running MediaWiki (from Ubuntu packages) on a Ubuntu 14.04 LTS installation with APCu enabled. I upgraded APCu to the 4.0.7-1build1~ubuntu14.04.1 version in trusty-backports. However, I'm still getting hangs with stacktraces similar to this one:

Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
pthread_rwlock_wrlock () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S:85
85 ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: No such file or directory.
#0 pthread_rwlock_wrlock () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S:85
#1 0x00007f1d95f0ac84 in apc_lock_wlock () from /usr/lib/php5/20121212/apcu.so
#2 0x00007f1d95f0eed8 in apc_cache_insert () from /usr/lib/php5/20121212/apcu.so
#3 0x00007f1d95f0fb67 in apc_cache_store () from /usr/lib/php5/20121212/apcu.so
#4 0x00007f1d95f0c61b in ?? () from /usr/lib/php5/20121212/apcu.so
#5 0x00000000006ddbdb in dtrace_execute_internal ()

Reading https://github.com/krakjoe/apcu/issues/19 it looks like there have been additional fixes in APCu 4.0.10 that are missing in 4.0.7 but not sure.

Revision history for this message
Nish Aravamudan (nacc) wrote :

Hello all,

Thank you for the various bug reports provided here!

I am trying to understand what exactly is needed/requested in this bug:

a) php-apcu 4.0.2 is missing a key fix from upstream
  - I have backported https://github.com/krakjoe/apcu/commit/e64277407381afd04173c098c6206e9066290e0c to 4.0.2-2 and provided a test build at https://launchpad.net/~nacc/+archive/ubuntu/lp1374892. Please test this if it fixes the original issue.

b) php-apcu 4.0.7-1build1~ubuntu14.04.1 is available in trusty-backports
  - This also fixes the issue, with the caveat that it is only available in the backports archive (please review https://help.ubuntu.com/community/UbuntuBackports to understand what that means).

c) At least @Malte reports that even 4.0.7 does not fix all the issues for them, and that even further updates from 4.0.10 are needed.

Is that an accurate summary?

Generally speaking, Ubuntu does not release a new version of a package into a release, particularly an LTS. It would be preferable to identify and backport the patches that affect the issue(s) noted here.

Revision history for this message
Chris (h-launchpad-chrisalfano-com) wrote :

Nish,

The php-apcu package is in a weird place because when Ubuntu 14.04 shipped it was simultaneously a very new package and a very old dependency. php-apc (without the u) has been around for a long time and is a key dependency of many PHP applications. PHP 5.5 broke compatibility with php-apc (due to adopting its main functionality) and php-apcu was created as a drop-in replacement for applications that depended on the rest of php-apc's functionality.

php-apcu provides a very old, simple, and well-established API with complex memory and performance roles under the hood. The version of php-apcu that got locked in when Ubuntu 14.04 shipped was very new and unstable, and every release since then is a patch release that improves stability. If you backported all the needed patches correctly to 4.0.2 you would have the current release.

In short: shipping the newest available version of this package is necessary BECAUSE Ubuntu 14.04 is an LTS. It wouldn't make sense to ship anything but the current (most stable) release, but that's not to say it will be necessary to keep shipping updates to this package, the last several releases have all been orders of magnitude more stable than 4.0.2

Revision history for this message
Nish Aravamudan (nacc) wrote : Re: [Bug 1374892] Re: Please backport php5-apcu version 4.0.6 to Ubuntu 14.04 LTS

On 08.04.2016 [00:04:29 -0000], Chris wrote:
> Nish,
>
> The php-apcu package is in a weird place because when Ubuntu 14.04
> shipped it was simultaneously a very new package and a very old
> dependency. php-apc (without the u) has been around for a long time and
> is a key dependency of many PHP applications. PHP 5.5 broke
> compatibility with php-apc (due to adopting its main functionality) and
> php-apcu was created as a drop-in replacement for applications that
> depended on the rest of php-apc's functionality.
>
> php-apcu provides a very old, simple, and well-established API with
> complex memory and performance roles under the hood. The version of php-
> apcu that got locked in when Ubuntu 14.04 shipped was very new and
> unstable, and every release since then is a patch release that improves
> stability. If you backported all the needed patches correctly to 4.0.2
> you would have the current release.

Ok, we might be able to argue/discuss that 4.0.7 is really a sequence of
bugfixes relative to 4.0.2 (and 4.0.7 is what Debian ships currently).
My concern is any new feature introductions, etc, which need careful
examination (meaning time) to avoid regressions.

> In short: shipping the newest available version of this package is
> necessary BECAUSE Ubuntu 14.04 is an LTS. It wouldn't make sense to ship
> anything but the current (most stable) release, but that's not to say it
> will be necessary to keep shipping updates to this package, the last
> several releases have all been orders of magnitude more stable than
> 4.0.2

Thank you very much for your clear explanation and background on the
issue, I really appreciate it!

Revision history for this message
Nish Aravamudan (nacc) wrote :

Note that if people can give a firm declaration that the -backports version is tested to fix the issue for them, I am happy to try and SRU that into -updates (presuming there are no backports dependencies in it, I'm verifying that now).

Revision history for this message
Matthias Baur (matthiasbaur) wrote :

I'm running php5-apcu (4.0.7-1build1~ubuntu14.04.1) since the 13.03.2013 without any problems. It fixed the issues i had with 4.0.2-2build1

Revision history for this message
Chris (h-launchpad-chrisalfano-com) wrote :
Revision history for this message
Chris (h-launchpad-chrisalfano-com) wrote :

Personally, I've been using 4.0.7-1build1~ubuntu14.04.1 in production since it shipped and it's firmly gotten me at least from crashing-all-the-time to crashing-on-odd-occasions. If there's a significantly lower bar to shipping that existing 4.0.7 build it would still be a drastic improvement.

I would be happy to start testing a 4.0.10 build in production immediately though

Bryce Harrington (bryce)
Changed in php-apcu (Ubuntu):
status: Confirmed → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.