Bug 1593

Summary: Persistent connections to memcached randomly fail to read/write
Product: Mageia Reporter: Colin Guthrie <mageia>
Component: RPM PackagesAssignee: Thomas Spuhler <thomas>
Status: RESOLVED OLD QA Contact:
Severity: normal    
Priority: Normal CC: stormi-mageia
Version: 1   
Target Milestone: ---   
Hardware: i586   
OS: Linux   
Whiteboard:
Source RPM: php-memcache-3.0.6-1.mga1.src.rpm CVE:
Status comment:

Description Colin Guthrie 2011-06-05 11:21:55 CEST
Description of problem:

When using persistent connections to memcached, the set() method often fails to write data correctly. It seems that even when it does work, either it reports this status incorrectly or the subsequent load fails.


Version-Release number of selected component (if applicable):
3.0.6 (which is marked as beta upstream)


How reproducible:
Easily.


Steps to Reproduce:
1. Internally in my app but I can likely produce a test case. It seems to vary depending on what is being stored... some data is written successfully quite happily, others not so much.

Reverting to 2.2.6 (marked as the latest stable upstream) solved the problem for me.

Should I bump the epoch and issue an update request?
Comment 1 Samuel Verschelde 2011-10-01 03:39:00 CEST
Assigning to maintainer now that our maintainers database has an entry for
this package. Please assign back to bugsquad@mageia.org in case of a mistake
from me.

CC: (none) => stormi
Assignee: bugsquad => thomas

Comment 2 Thomas Spuhler 2011-10-13 06:14:33 CEST
I see no new versions upstream for over 6 month.
There is one bug reported. Could you check if this may help?
Description:
------------
Line57 of memcache.php is "return values" now, but it should be "return $values"! The absence of "$" make this script can not run.

Reproduce code:
---------------
 51 function get_host_port_from_server($server){
 52     $values = explode(':', $server);
 53     if (($values[0] == 'unix') && (!is_numeric( $values[1]))) {
 54         return array($server, 0);
 55     }
 56     else {
 57         return values;
 58     }
 59 }
Comment 3 Colin Guthrie 2011-10-13 10:41:11 CEST
Erm, not sure what that PHP comes from?

All the PHP code I'm using is from Zend_Framework but can likely be reproduced with some hand written code.

So I don't think the PHP code above has anything to do with the problem which relates to how persistent connections are handled in the memcache daemon and library.
Comment 4 Thomas Spuhler 2011-10-16 21:35:27 CEST
I hate to downgrade. Other distros use the same version and there is no specific bug filed upstream I noticed that the packages was build before the php was built and it looks it need a build against the php packed that is installed. I rebuilt it and it's in updates_testing.
Would you mind to test it?
Comment 5 Colin Guthrie 2011-10-17 10:31:57 CEST
I'm only running Cauldron just now (well a colleague is running mga1, but he's half way round the world and I don't want to inflict such tests on him.

That said I'm pretty sure I rebuilt it at the time before downgrading and that wasn't the problem.

I've seen numerous previous bug reports about persistent connections, so I wasn't surprised that I had problems with it. The problem is the case to reproduce was indeed rather tricky, but I'll see if I can test the latest Cauldron version to see if it behaves better, although it *is* still marked as beta upstream...
Comment 6 Thomas Spuhler 2011-11-08 05:49:05 CET
Hmmm locking a little closer:
you reported the bug for php-memcache-3.0.6-1.mga1.src.rpm. I guess I only compared with other distros what we are using.
We have in mga1 Version: 1.0.2
We have in Cauldron Version: 1.0.2
Upstream list this still as stable release

Are you talking about memcached? the just released version is memcached-1.4.9
Mabe the maintainer will upgrade that package soon.
Comment 7 Thomas Spuhler 2011-12-02 05:24:46 CET
I am closing this as no new information has been provided. Please re-open if still valid.

Status: NEW => RESOLVED
Resolution: (none) => OLD

Comment 8 Colin Guthrie 2011-12-02 10:41:43 CET
Hi, sorry for not updating the bug. I've been testing the new package since your previous comment. It's not a problem all the time but I do still see issues with it. I have implemented a few workarounds in code that actually alleviate a lot of the issues I'm seeing (autocompressions was not added until the 3.x series but I now do this in code and it seems to work well and avoid most of the problems, but it's still not a full fix)

However in your comment 6 you confused two different packages. I am talking about php-memcache, but the versions you quoted are for php-memcached (note the extra "d" on the end) which are quite different projects.

So mga1 very much ships php-memcache-3.0.6 as I originally stated, and this *is* still labelled as beta upstream: http://pecl.php.net/package/memcache

I will evaluate php-memcached v2 (http://pecl.php.net/package/memcached) which also adds persistent connection support, but I would rather have stuck with the stable version of php-memcache for mga1 rather than use the unstable versions shipped.
Comment 9 Samuel Verschelde 2011-12-02 13:29:36 CET
reopening per comment #7

Status: RESOLVED => REOPENED
Resolution: OLD => (none)

Comment 10 Colin Guthrie 2012-03-07 12:00:22 CET
I've updated (locally) the php-memcached (not the package I'm talking about in this bug) to 2.0.1 which was released a few days ago as the stable version.

I'd be tempted to just close this bug and forget about it.

@Thomas are you OK that I submit the updated package (today is version freeze day!).
Comment 11 Thomas Spuhler 2012-03-11 00:24:32 CET
Colin, lets' keep this open, I will continue to watch it (php-memcache-3.0.6). It's still marked as beta
Comment 12 Colin Guthrie 2012-04-27 01:26:53 CEST
FWIW, php-memcached has been working well for me.

Status: REOPENED => NEW
Hardware: x86_64 => i586

Comment 13 Marja Van Waes 2012-07-06 15:05:01 CEST
Please look at the bottom of this mail to see whether you're the assignee of this  bug, if you don't already know whether you are.


If you're the assignee:

We'd like to know for sure whether this bug was assigned correctly. Please change status to ASSIGNED if it is, or put OK on the whiteboard instead.

If you don't have a clue and don't see a way to find out, then please put NEEDHELP on the whiteboard.

Please assign back to Bug Squad or to the correct person to solve this bug if we were wrong to assign it to you, and explain why.

Thanks :)

**************************** 

@ the reporter and persons in the cc of this bug:

If you have any new information that wasn't given before (like this bug being valid for another version of Mageia, too, or it being solved) please tell us.

@ the reporter of this bug

If you didn't reply yet to a request for more information, please do so within two weeks from now.

Thanks all :-D
Comment 14 Thomas Spuhler 2012-08-05 00:38:40 CEST
Colin, is this bug still valid? I saw you rebuilt the package.

Status: NEW => ASSIGNED

Comment 15 Colin Guthrie 2012-08-05 12:39:23 CEST
To be honest I've no idea. I've been using the php-memcached extension (note the extra d) for a while now and it seems to be much better for me these days. So I'd suggest we just close this as old. As this is an mga1 bug, I'd be tempted to just close it as old now. If you disagree or anyone else has issues, then it's probably worth reopening.

Status: ASSIGNED => RESOLVED
Resolution: (none) => OLD

Comment 16 Colin Guthrie 2012-08-05 12:42:41 CEST
(In reply to comment #14)
> I saw you rebuilt the package.

Just to avoid more confusion, I rebuilt the php-memcached package - keep in mind this bug was about php-memcache NOT php-memcached :)