On Sun, May 07, 2000 at 08:41:11AM -0400, Bryan White wrote:
[snip]
>
> I have played with removing flush statements from qmail-queue.c. This
> dramatically increases the rate at which qmail-inject puts stuff into the
> queue. This led to very large queues (my sending process backs off when the
> queue gets to 100K messages). Overall throughput was not improved much.
> Also if a box does crash then messages will be lost. My guess is your SCSI
> drive makes this unneeded.
The moment qmail-queue says flush, the OS buffers come into play, including
a context switch. That takes time, even with SCSI.
There is no reliability problem. The first flush() is there to make sure
the 'Received' line gets written anyway, to identify potential
troublemakers (and neutralize them - blatant rip from Killing in the name).
Hmmm... now that I look again, the second flush actually writes the mail
out.. I think that is relevant to actual delivery :)
Greetz, Peter.
--
Peter van Dijk - student/sysadmin/ircoper/madly in love/pretending coder
|
| 'C makes it easy to shoot yourself in the foot;
| C++ makes it harder, but when you do it blows your whole leg off.'
| Bjarne Stroustrup, Inventor of C++