Tom Lane <t...@sss.pgh.pa.us> wrote: 
 
> As of 8.4, the typical case is that an open transaction blocks
> deletion of rows that were deleted since the transaction's current
> *statement* started.  So this makes a huge difference if you have
> long-running transactions that consist of a series of not-so-long
> statements.  It also means that transactions that sit "idle in
> transaction" are not a hazard for VACUUM anymore --- an idle
> transaction doesn't block deletion of anything.
 
Surely the original version of a row updated or deleted by the
long-running transaction must be left until the long-running
transaction completes; otherwise, how does ROLLBACK work?  (The OP did
mention that there were a large number of updates and deletes being
performed by the long-running transaction....)
 
-Kevin

-- 
Sent via pgsql-performance mailing list (pgsql-performance@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance

Reply via email to