War stories from the failover.
Post-mortems, HADR gotchas, and notes on building tools for networks where nothing installs and nothing connects. Written between incidents, not in a conference room.
THE BUILDA tool for when the only environment is production
A lot of real database work happens on live systems with no test bed that actually resembles them. So I built the opposite of the tools that "just fix it for you". One that reaches for nothing, reasons about pasted output, and can't take a single action on the box you can't afford to break.
The log is full. Don't flip to SIMPLE.
Error 9002 shows up and someone always says "just switch it to SIMPLE recovery." Please don't. Read log_reuse_wait_desc, address the real reason, and often you just watch the queue drain or the transaction commit and let the log catch up. Chain intact.
Everything that doesn't fail over
The AG moved the databases. The app still died. A field guide to the four things that live outside the availability group. Logins, jobs, linked servers, credentials. And how to catch each one before the failover, not during it.
Build for the network that fights you
No installs, no CDN, no backend, no outbound. Why the constraints of a locked-down environment made the tool better. And the one rule that keeps a field kit field-ready.
The redo queue that wouldn't drain
9 GB of unreplayed log, a green dashboard, and a secondary quietly drowning in PAGEIOLATCH_EX. Reading the difference between a send-queue problem and a redo-queue problem. And why it changes who you call.