-
Apology & Public Service Announcement
2007-08-11 19:10 in /meta
I’d like to apologize for the spurious, empty entries which have been showing up in my RSS feed. I’ve been noticing this for some time, and made some attempts to understand why but came up empty. Today it finally bugged me enough to dig deeper and I found the problem.
A few months ago, I was doing some performance profiling and optimization of blosxom. I found a few major inefficiencies and made some changes to address them. Unfortunately, optimization can be dangerous and my caching implementation for readinglist had a race condition which meant that sometimes when a new book is added, the code that keeps it from being rendered if it has no body was skipped. I committed two sins which kept me from figuring out the problem sooner: I was working directly on the live site, and I didn’t check my changes into Subversion. So, when I tried to reproduce the problem on my test environment, I couldn’t. The indirect cause was another sin: over-optimization. I knew I wanted a cache to keep the same work from being done over and over during static page generation. The appropriate level of optimization would have been an in-memory cache for the life of the process. Instead, I created a persistent cache on the filesystem, leading to the race when a file is created but the stale cache from an old run is used.
For the moment, I’ve disabled the cache entirely. I think I can restore the more limited caching easily, but this time I’m going to try it on my test environment first!
Leave a comment
Please use plain text only. No HTML tags are allowed.
Comments are closed for this story.
Trackbacks are closed for this story.