This morning I was investigating a problem at a customer site where their Manager (a program I wrote most of) is hanging. Thanks to “kill -3 pid” I discovered it was building a tool tip. Thanks to a database query, I found that the tool tip it was building was trying to display 430,000+ identical date ranges. Hmmm, looks like we’re going to be a while, and probably a little short of screen real estate at the same time.
I did a few database commands to remove the 430,000+ records and put back one copy of it. (I’m sure somebody has a command that will do both in one step – I did a “delete” followed by an “insert” because I’m lame.)
The Field Engineer at the customer site wrote to ask if I could tell him the database commands in case this happens again. I politely declined. I told my boss that this would be somewhat like giving handguns and tequila to a bunch of 9 year old boys. Repeat after me:
I’m sorry, you appear to have totally hosed the database. You’re going to have to wipe the database and re-injest all your content. You’ll probably be up and running again in two days or so.
Ha! Ha!
Damn you Paul, I hurt myself laughing.
I had similar requests in my last job and also politely declined.
Out of curiousity, will you be modifying the tooltip routine to include some sanity checks? You could probably restrict the underlying query so that it only returns a limited number of rows.
Sanity checks? The problem is, we don’t know how many KDMs (that’s a package containing an encryption key and I don’t know what else) are going to be ‘sane’ in the real world, because we’re kind of new to this. In testing, I usually only have one or two, but these guys, after removing the 430,000+ bogus ones, still had 180+.