> This is where I think the actual user count may really influence this > behavior. On our system, during heavy times, we can see writes to the > mailboxes file separated by no more than 5-10 seconds. > > If you're constantly freezing all cyrus processes for the duration of > those writes, and those writes are taking any appreciable time at all, > you're going to have a stuttering server with big load averages. This shouldn't really be a problem. Yes the whole file is locked for the duration of the write, however there should be only 1 fsync per "transaction", which is what would introduce any latency. The actual writes to the db file itself should be basically instant as the OS should just cache them. Still, you have a point that mailboxes.db is a global point of contention, and it is access a lot, so blocking all processes on it for a write could be an issue. Which makes me even more glad that we've split up our servers into lots of small cyrus instances, even less points of contention... Rob ---- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html