On Thu, Jan 12, 2006 at 07:46:18PM -0500, Tom Lane wrote: > > * Transaction was committed/aborted/crashed - we have to update pg_clog > > * if transaction is still marked as running. > > */ > > if (!TransactionIdDidCommit(xid) && !TransactionIdDidAbort(xid)) > > TransactionIdAbort(xid); > > The comment's "have to" is an overstatement. The transaction would be > treated as crashed anyway, it's just that this is a convenient place to > make pg_clog a bit cleaner. I'm not real sure why we bother, actually. Because that's what makes PostgreSQL such a reliable product. You follow your intuition and taste and bother doing cleanup even if you cannot immediately tell whether it's *really* needed. Better safe than sorry. Not a bad idea for a database. Karsten (who is storing clinical data in PostgreSQL) -- GPG key ID E4071346 @ wwwkeys.pgp.net E167 67FD A291 2BEA 73BD 4537 78B9 A9F9 E407 1346