>> OK, I'm using a pool of worker threads that each have a connection (from my >> own software, no PHP or anything like that involved), and a connection is in >> a state where all queries fail. Looking back through the log I find the >> first entry where this connection has an error (there are successful queries >> on it prior, so it's not the first query): >> > > Your problem is that you have an error within a transaction and as the > error message states: > >> 2004-06-21 14:51:58 [5589] ERROR: current transaction is aborted, queries >> ignored until end of transaction block > > All your queries will be ignored until you complete the transaction, > either with a commit or a rollback. I find the message very clear, how > do you think it could be reworded to be more clear?
What's not clear is why I should be told this when the invalid query ended with a commit. >> - Is there something I need to do after an error like this, in order to get >> the connection back to a usable state? > > COMMIT or ROLLBACK > >> - Is this a bug? > > In your program, yes. Although I find it interesting that your commit > is ignored after the error. Just send it as a seperate query. Yes, exactly. I've never seen a commit be ignored like this--believe me I've had other erroneous queries, and the connections never got borked like this. >> - Is there anything I can do to provide more information? I still have the >> server running right now, but I'm going to have to reboot soon because this >> is causing problems. > > Just add a transaction commit or rollback after the error. I'll certainly add such code as a fail-safe, but I'd still like to understand more fully what has happened. Can I really be 100% sure this would keep the connection usable, given that the 1 commit already somehow failed to end the transaction block? I can certainly understand that a commit submitted by itself might be recognized where for some reason the original one was skipped over, but I'd still like to know more about what happened. -- Scott Ribe [EMAIL PROTECTED] http://www.killerbytes.com/ (303) 665-7007 voice ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend