COMMIT_OF_FAILED_TRANSACTION
A commit asked of a transaction an earlier error already aborted - by commit(), or by switching auto-commit back on, which commits. PostgreSQL would carry the COMMIT out as a ROLLBACK and report nothing, so the driver refuses it instead of sending it: the transaction stays aborted, and rolling it back is the way out, as it is for every other statement there.