Back on Tue, 11 Mar 2003 at 10:18:52 AM PST, Gregory Hicks wrote:
> I basically had the same problem except with a Sun 3500 with 2K+ users...
> 
> enable-temp-drop-dir, 
> enable-servermode, 
> enable-keep-temp-drop, 
> and 
> enable-cache-dir
> 
> Your throughput should increase AFTER the next time those user login
> since popper will just be keeping track of the changes...

OK, I've installed Qpopper 4.0.5 with the above changes, modulo the
server mode stuff - since, as I mentioned, I can't guarantee that the
spool won't be read/modified by some other client over NFS (one of the
recalcitrant users, with a 93 mbyte spool file, normally POPs in but
sometimes gets the urge to ssh over to an Ultra 5+ and check his mail
via Pine ... grrrr).

So, the good thing is, I now have the I/O load split in half, across 2
disks.  So far so good.

But now what I don't understand is this:

I now have 2 directories - the traditional "/var/mail" (now on a newer
36 Gbyte SCSI disk) and a new one, "/var/maildrop", for the .luser.pop
files (configured via "--enable-temp-drop-dir=/var/maildrop"), which is
on the old 18 Gbyte external SCSI disk (which is mounted on "/var").

I'm not sure what "--enable-keep-temp-drop" is getting me here ... at
the end of the user's session, ".luser.pop" is reduced back to size 0,
and their "/var/mail/luser" spool file is updated.  So, yeah, the
temp-drop has been kept ... um, great.  What good did that do me?

I *thought* that "--enable-keep-temp-drop" would get me this behavior:

(1) luser POPs in
(2) Qpopper 4.0.5 copies /var/mail/luser to /var/maildrop/.luser.pop
(3) Messages get processed
(4) /var/maildrop/.luser.pop gets copied back to /var/mail/luser
(5) /var/maildrop/.luser.pop *gets left alone and not zero'ed-out*

I then expected this to happen the next time the luser POPs in:

(6) Qpopper 4.0.5 stat()'s the "/var/mail/luser" file and also the
    "/var/mail/.luser.pop" file
(7) If the "/var/mail/luser" file hasn't changed since the last POP
    access (meaning "/var/mail/luser" and "/var/maildrop/.luser.pop"
    will be exactly the same size/contents), it locks(?) the mail
    spool file and *doesn't do the copy to "/var/maildrop/.luser.pop"*,
    thus saving half the I/O overhead of a normal transaction

Instead, it seems like Qpopper 4.0.5 - at least, when "server-mode"
isn't enabled/used, anyway - always zeroes out the ".luser.pop" file
at the end of the session, and always copies the "luser" spool file to
the now-always-empty ".luser.pop" file at the start of the next session.

Why?

        - Greg


Reply via email to