On 10/25/2012 4:24 PM, Ben Morrow wrote: > At 1PM -0500 on 25/10/12 you (Stan Hoeppner) wrote: >> >> Yes, actually I did, but I missed one part of it because I assumed you >> had Dovecot setup properly. >> >> It doesn't matter if the mbox locks are write or read or both. Locks >> are the problem, period, because you have two daemons fighting over the >> same files. The fix is absolutely trivial: >> >> Switch Postfix to use the Dovecot Local Deliver Agent (LDA) in place of >> the Postfix local/virtual delivery agent. Using Dovecot LDA eliminates >> the file locking issue. Thus it also increases throughput as lock >> latency is eliminated. > > Nonsense. deliver and imap are still separate processes accessing the > same mbox, so they still need to use locks. The only difference is that > since they are both dovecot programs, they will automatically be using > the *same* locking strategies, and things will Just Work.
"Nonsense" implies what I stated was factually incorrect, which is not the case. There's a difference between factual incorrectness and simply staying out of the weeds. If you want to get into the weeds, and have me call you out for "nonsense", LDA/deliver is not a separate UNIX process. The LDA code runs within the imap process for the given user. This is what allows Dovecot to perform 'simultaneous' reads/writes to an mbox file, avoiding filesystem level locking latency. Using filesystem level locking to control read/write access between processes of own's program would be insane on many levels. -- Stan