[Imap-uw] Imapd-2004e and Solaris 10

Mark Crispin MRC at CAC.Washington.EDU
Wed Aug 17 15:38:40 PDT 2005


On Wed, 17 Aug 2005, Gregory Hicks wrote:
> I must have the only Solaris IMAP server in the world that works and
> works and keeps on working...

There are different definitions of "works".

The fact that imapd works as well as it does on SVR4 is largely due to 
extensive workarounds (developed over a period of *years*) to the 
deficiencies in that kernel.  The only purpose of those workarounds is to 
get SVR4 to run as close to "as well as Linux and BSD" as possible.

Nevertheless, imapd does not, and will never, work as well on SVR4 systems 
(such as Solaris) as on comparable hardware running Linux or BSD.  I wish 
that was not the case.  After years of beating my head against the SVR4 
brick wall, I conceed defeat.

The worst problem with SVR4 is that imapd is obliged to use POSIX locking 
instead of BSD-style flock().  This, in turn, requires it to spawn a child 
process to support the DELETE, RENAME, STATUS, SCAN, COPY, and APPEND 
commands, along with an elaborate communication protocol that has to take 
place between imapd and this child process.  This consumes greater systems 
resources and adds fragility, yet has not fully overcome the problems 
caused by POSIX locking.

The bottom line is that, for whatever definition of "works" that you 
observe on your Solaris (or other SVR4) system, imapd will always work 
*better* under Linux or BSD: fewer crashes, fewer corrupted mailboxes, and 
the ability to run more simultaneous sessions faster.

-- Mark --

http://staff.washington.edu/mrc
Science does not emerge from voting, party politics, or public debate.
Si vis pacem, para bellum.


More information about the Imap-uw mailing list