[Tickets #4797] A large horde_vfs table can cause large memory usage during GC
bugs@bugs.horde.org
bugs at bugs.horde.org
Mon Dec 18 08:07:38 PST 2006
DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.
Ticket URL: http://bugs.horde.org/ticket/?id=4797
-----------------------------------------------------------------------
Ticket | 4797
Created By | sean at duke.edu
Summary | A large horde_vfs table can cause large memory usage during GC
Queue | Horde Base
Version | HEAD
Type | Bug
State | Unconfirmed
Priority | 2. Medium
Owners |
-----------------------------------------------------------------------
sean at duke.edu (2006-12-18 08:07) wrote:
I'm running IMP using Horde VFS as the filestore for attachment uploads.
I'm using MySQL as the Horde VFS backend.
When my horde_vfs table grew to 4GB in size, an apache process would grow
to almost 4GB in size when GC was run. This caused quite a bit of
thrashing on boxes that only have 4GB of memory.
After looking at the code, when GC is run, with the SQL backend, it ends
up doing a select to load the whole table contents into memory. This
presumably gets put into a buffer in the mysql libs before being loaded
into PHP, and thus before the PHP memory limit can take effect.
The unfortunate part is that all SQL needs for doing this cleanup is a
single DELETE statement, then the mysql server will do all the work. As
such, I suggest allowing each Horde VFS backend have its own GC code.
More information about the bugs
mailing list