Bug #58084 [Com]: apc_store with ttl does not work anymore
| From: | d dot h dot j dot takken at xs4all dot nl | Date: | Thu, 27 Oct 2011 12:12:47 +0000 |
| Subject: | Bug #58084 [Com]: apc_store with ttl does not work anymore | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-164612@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=58084&edit=1
ID: 58084
Comment by: d dot h dot j dot takken at xs4all dot nl
Reported by: sebastian at 7val dot com
Summary: apc_store with ttl does not work anymore
Status: Wont fix
Type: Bug
Package: APC
Operating System: Linux 2.6.22
PHP Version: Irrelevant
Block user comment: N
Private report: N
New Comment:
I use Gearman to create workers running continuously on the server, processing jobs. So, one
'request' can last for weeks.
The TTL problem really does hurt in this case, because the APC caches of the workers are never
refreshed.
Can this bug be reopened please? Thanks!
Previous Comments:
------------------------------------------------------------------------
[2008-03-10 03:44:50] sebastian at 7val dot com
You're right, with two separate requests it works as expected.
The use case we have here is just a bad unit test, I suppose that doesn't count ;)
Although this behavior should be documented somewhere...
------------------------------------------------------------------------
[2008-03-07 21:17:41] shire@php.net
This appears to be caused by the fact that the time comparison we use does not change within the
same request (this is an optimization).
If you repeat your test, but between two separate requests (one to set, another to fetch) it should
work as expected. If you have a use case for such a short lived TTL within the same request then
please re-open this bug and detail your use case. -Thanks
------------------------------------------------------------------------
[2008-03-07 08:06:20] sebastian at 7val dot com
Description:
------------
I'm using PHP Version 5.2.5, and upgraded to APC 3.0.16 with 'pecl install apc'. The
following code worked with APC 3.0.14, but with the new version, apc_store's $ttl-parameter
seems to be ignored.
Reproduce code:
---------------
<?php
apc_store('test', 'asdf', $ttl = 1);
echo var_export(apc_fetch('test'), true) . "\n";
sleep(2);
echo var_export(apc_fetch('test'), true) . "\n";
?>
Expected result:
----------------
'asdf'
false
Actual result:
--------------
'asdf'
'asdf'
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=58084&edit=1