I managed to forget to add the replycache table to my database, so the query failed the first time. The second time, the query didn't just fail, it was ignored. This continues even for queries to tables that exist, until the end of the process.
So basically, we need to clear the error after handling it. *Goes looking for the PostgreSQL manual...* Aaron dbpgsql.c, db_query: Error executing query [SELECT lastseen FROM dbmail_replycache WHERE to_addr = '(null)' AND from_addr = '[EMAIL PROTECTED]' AND handle = 'f8d79fc201c6332436d455d4dd99199c' AND lastseen > (NOW() - INTERVAL '2 DAY')] : [ERROR: relation "dbmail_replycache" does not exist ] db.c,db_replycache_validate: query failed dbpgsql.c, db_query: Error executing query [SELECT lastseen FROM dbmail_replycache WHERE to_addr = '(null)' AND from_addr = '[EMAIL PROTECTED]' AND handle = 'f8d79fc201c6332436d455d4dd99199c' ] : [ERROR: current transaction is aborted, commands ignored until end of transaction block ]