Sloppy error checking in MS code

Glenn Steen glenn.steen at gmail.com
Sun Dec 17 11:43:59 GMT 2006


On 16/12/06, Julian Field <MailScanner at ecs.soton.ac.uk> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
>
>
> Ken A wrote:
> > Glenn Steen wrote:
(snip)
> >> Since switching to the HOLD method, I've only lost messages when I
> >> fat-fingered the MS config... And Jules has subsequently
> >> "idiot-proofed" those settings (the * Actions). Might be just dumb
> >> luck, I suppose, that it hasn't happened, but I doubt it:-).
> >>
> >> That said, I'm really in forward of critically looking the PF code
> >> over. I've been doing some looking, but then mostly to ascertain how
> >> it works (or in some few cases... not), and to try determine whether
> >> the PF crowd have any base for some of their allegations (unsafe
> >> handling of queue files... AFAICS, this is untrue).
> >> Unforunately I will have very limited time to help before X-mas/new
> >> years...
> >> Then again, I'm not sure it's a problem needing immediate attention.
> >>
> >
> > This kind of thing is really up to the author. I'm sure it's something
> > he's thought about and not done for a reason. One person's 'sloppy' is
> > another's 'efficient'. Programmers can tend to get a bit over zealous
> > about such issues. More often than not, the issue that has a
> > /potential/ to happen, never really happens in the software's
> > lifetime. So the only _real_ issue is a theoretical, academic argument
> > that most of us have no time for. :-\

Quite true Ken, and I'm not advocating anything like the idiotic
testing of every printf (anyone ever written anything in C knows that
a lint will ... complain... about things that don't matter... Unless
you go wild with checks (that fill no purpose, and hence will give
other ... lint errors) or spread a thick layer of typecasts to void
all over the place. Sigh). Just suggesting looking it over with a
critical eye, is all.
After all, that is one of the high points of OSS... The ability to
make sure for oneself that the code is (sanely) healthy ... Not a
shadow over Jules, not ever.

And I'm not saying that *he* should squander his limited time on this
either. It's up to us who claim a modicum of programmer skill to do
(in conjunction with Jules, of course). Unfortunately (as I said
before) I'm very busy till sometime January... But then, such a work
would probably a) not lead to much at all, b) not be that onerous, and
finally c) not be that much "in demand" (meaning: There's really no
fire to put out, that we know of, so it's mostly a case of settling
the fears of those that actually believe the PF devel crowd. I
don't!).

> Ken,
> Thanks for backing me up. Yes, I don't check the return value of every
> single call I make, but show me a programmer who does? (No doubt someone
> will at this point). The most common point that is made is "what if the
> system runs out of space" at this point, and all sorts of things will be
> failing at this time, there isn't any need to create more errors at this
> point, they just create noise. Yes, I quite happily admit I don't check
> the result from everything I do. But if you want a practical piece of
> software that runs at a reasonable speed.
>
> Don't forget. Every morning you make the assumption that the floor is
> there when you step out of bed. Show me the person who checks with a
> stick that the floor is where they think it is, before putting their
> weight on the first foot out of bed in the morning. Yes, you make
> assumptions too.
>
> Jules.

Have no fear Jules, we're all solidly in "your camp" here. I've been
singing your praises for a long time, for the simple reasons that a)
MailScanner works wonders for my organisation on a daily basis, b)
I've actually read this particular part of the code several times and
deem it very clever indeed (not that I claim to see all the nuances:-)
... Just didn't think of looking for silliness like this discussion is
about at the time, c) there is a rather large community of PF users
using it daily on rather huge amounts of mails... with no discernible
problems ... d) the list goes on, but I've no time to complete it:-).

Doing some form of more rigorous code audit is not a generally bad
idea, but it is not a top priority either, for those simple
reasons:-). Doing one is not a reflection on your ability, on the
contrary... It shows that we all take your eminent software as
seriously as you do yourself!
... And whoever said it'd even lead to any changes? Not me;-).

-- 
-- Glenn
email: glenn < dot > steen < at > gmail < dot > com
work: glenn < dot > steen < at > ap1 < dot > se


More information about the MailScanner mailing list