Okay, now I'm concerned. I'm now running the production greylist daemon [1] on an actual server (not a virtual server) with the checkpointing feature enabled, and it's working [2]. That can mean one of two things:
Neither one is good, and it's bugging me that I don't know which is the case. But I managed to at least work around the problem in the meantime (now watch—the bug is in my code, but it's the virtual server environment that causes the bug to surface after a few hours instead of a week or so it might take on a physical server).