* * * * *
I blew it.
Well, I blew it. I overreacted and because of that, I lost a year uptime on
tower, the colocated server serving up this website (as well as several other
websites, and email).
What I thought might be the machine going a bit marginal on me turned out
instead to be a rather show-stopping bug (cough cough) in the software that
drives this online journal. The ANSI-C spec for time is a bit more weasly
than I thought.
The problem is that I thought (erroniously as it turns out) that mktime()
would renormalize (say, if the day was set to 32, the month would be
incremented and the day set to 1) the time given. An implementation could do
that, but it isn't mandated.
And I was counting on that.
I'm not sure why I didn't notice the problem before, but with Mark's [1]
level headed guidance (should have called him before I rebooted the server) I
was able to track down a problem I should have.
Sigh.
[1]
http://www.conman.org/people/myg/
Email author at
[email protected]