On Sep 20, 2007, at 12:56 PM, Rick Widmer wrote:
If I remember right, speed was the reason for separate tables, but testing showed it was not faster. I think the single table works better because all your mail users are accessing the same table, and its indexes so they stay loaded all the time. If you use separate tables it is always thrashing the cache as different files need to be accessed.

If we were really looking for speed, we could move to a "ng" (next generation) table format that was more relational. Provide tools to migrate from the old to the new for those people who only access the data through vpopmail's APIs. Continue to support the old method for people who have home-grown apps that access the data.

The domains should be in a table of their own, and the users table should index the domains table. Having an index in the users table on an int (and the resulting size savings) would be measurable.

The biggest change would be updating the selects and inserts in the code. Not a huge change -- just a join between the tables.

Something to consider, and perhaps discuss further (on this list or vpopmail-devel).

Tom Collins  -  [EMAIL PROTECTED]
Vpopmail - virtual domains for qmail: http://vpopmail.sf.net/
QmailAdmin - web interface for Vpopmail: http://qmailadmin.sf.net/

Reply via email to