I recently asked our resident database administrator if our database server was experiencing any problems, since my applications were getting particularly slow responses.
He opened some system monitoring tools — complete with various graphs of system activity — looked pensive for a moment, and then responded:
I don’t see any spiky bits.
I always thought server administration was more complicated than that.
Yep, that’s how they do it.
Developers have comparable techniques. Given some unexplained behavior, they’ll open up a development environment with about a thousand little windows, look at it pensively for a moment, then say “oh yeah, the else condition has inverted booleans”. Frankly, I can’t believe I … I mean, they get paid for that.
Meanwhile back at the database, for the past 5 years I’ve asked he DBAs to tell me the two (or more) statements involved in the too-frequent deadlocks that occur. Seems like that would be a simple matter: the database sees the conflict and gives one of the statements the boot. I catch the error and log the statement. The other statement apparently is a big secret because no amount of training, analysis or tracing will reveal it until “the next version”. (They say that about all the versions.) BTW: It’s Microsoft SQL Server.