April 19, 2007
🐪 🧑🏽💻
Today, I saw some SQLite failures occur when a process had consumed all its
open filehandles with session databases. My first thought was that there was a
circular reference preventing destruction. After an almost comical amount of
struggle to get Devel::Cycle to work, and then an actually comical amount of
struggle to get Devel::FindRef to not choke on DBI connections, the problem
turned up. I’m pretty sure that I wrote the offending line. I feel fairly
silly about it now, since it is a pretty clear one-line red flag. This is a
close approximation: