[horde] Slow progress...

Ashley M. Kirchner ashley at pcraft.com
Wed Sep 5 23:57:42 UTC 2007


    Something hit me today as I was going through the lists messages...  
Quoting Andrew Morgan earlier today as he was trying to help Dave 
Cunningham:

       "Are you storing sessions in MySQL as well?  The session table can
        be a huge burden on MySQL.  A *lot* of data is stored in the
        session with Horde 3.x.  I've moved sessions off into memcache
        (running on the same server as MySQL) and it has been a big
        performance improvement."


    Suddenly a light went off.  Yes, I was storing that stuff in MySQL.  
So why not try it.  I switched the method to PHP files instead (which in 
turn uses memcache) and suddenly the problematic user could log in!  So 
then what was the problem?  The data being stored in the session?

    The session file for this particular user was close to 2MiB in 
size.  Holy toledo, WHY?  Open further investigation I found out that 
when the user logged in, IMP was storing a directory listing of 
*EVERYTHING* in this user's $HOME folder in the session data.  WHY IN 
THE WORLD??!

    The next thing that jumped out at me was that while in IMP, if you 
looked at the available folders for saving e-mails, you got that listing 
again, every single file in this user's $HOME folder, some 6,000 of 
them.  So no wonder it was timing out trying to generate that list 
first, and then trying to inject the whole shebang into the session 
table.  Now to figure out how to not have it do that.

    Turns out that IMP is configured to NOT use IMAP subscriptions by 
default.  And once I turned on that config option, suddenly logging in 
went much faster and everything worked a whole lot better.  Looking at 
the session file, it went from the original 2MiB to 47K and it ONLY 
contains what's in the user's $HOME/mail folder (which agrees to the 
IMAP subscription file as well.)


    So now my question: why oh why does IMP need to store the ENTIRE 
user's $HOME contents in a session handler?  I can understand the 
argument that not everyone uses IMAP subscriptions, or not everyone 
stores their mail folder under $HOME/mail, but ferkryingoutloud, if they 
have several thousand files in their account (under $HOME), this problem 
will continue to happen.  A better solution has to be implemented somewhere.

    I didn't see an option in the main configuration (when you're horde, 
setting up IMP) that would've allowed me to set the default to use IMAP 
subscriptions.  It's not till after the user logs in that they can set 
that configuration option.  This is going to cause problems with a lot 
of my users once I make this system live.

    Now I can finally continue to install the other bits and pieces and 
test things as I go along...

    -- A

-- 
H | It's not a bug - it's an undocumented feature.
  +--------------------------------------------------------------------
  Ashley M. Kirchner <mailto:ashley at pcraft.com>   .   303.442.6410 x130
  IT Director / SysAdmin / Websmith             .     800.441.3873 x130
  Photo Craft Imaging                       .     3550 Arapahoe Ave. #6
  http://www.pcraft.com ..... .  .    .       Boulder, CO 80303, U.S.A. 




More information about the horde mailing list