[Tickets #14258] Re: File based cache garbage collection broken

noreply at bugs.horde.org noreply at bugs.horde.org
Tue Feb 16 19:37:45 UTC 2016


DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.

Ticket URL: https://bugs.horde.org/ticket/14258
------------------------------------------------------------------------------
  Ticket             | 14258
  Updated By         | arjen+horde at de-korte.org
  Summary            | File based cache garbage collection broken
  Queue              | Horde Framework Packages
  Type               | Bug
  State              | Resolved
  Priority           | 2. Medium
  Milestone          | Horde_Cache 2.5.3
  Patch              |
  Owners             | Jan Schneider
------------------------------------------------------------------------------


arjen+horde at de-korte.org (2016-02-16 19:37) wrote:

I'm not sure if this will fully solve the problem. This patch seems to  
fix the problem of adding cache files to horde_cache_gc where they  
don't belong, but looking at the old horde_cache_gc files, it also  
looks there is an issue with locking the horde_cache_gc files somewhere.

As far as I can see, the format of these files is one cache file  
followed by a timestamp per line. Like the following entry from the  
/var/lib/php5/horde/cache/a/0/0/horde_cache_gc file (showing the  
problem that it contains a cache file that shouldn't be there that is  
fixed by this patch):

/var/lib/php5/horde/cache/0/0/0/cache_000bde1edaebadae73f8069438a0bccd  
  1455770298

But looking further down this same file, I also see lines like

/var/lib/p
5/horde/cache/1/c/6/cache_1c664138a4d63a5d7c5b1e76f81002ae      1455977208

(yes, two lines)

/var/lib/php5/horde//var/lib/php5/horde/cache/1/f/d/cache_1fd41d3ae5f1c30fd29cfc831456143345

(no timestamp and really wonky looking directory)

/var/lib/php/var/lib/php5/horde/ <20000+ characters removed>  
a/f/5/cache_af5590ec1fa2401f6cac6b4cf9a5a5d3  1456247333

It looks to me there might also be a problem with file locking. What  
happens if new entries are added to the horde_cache_gc file while in  
the midst of of GC? The above examples look to me as if two processes  
are writing to the same file simultaneously.





More information about the bugs mailing list