Re: Postgresql the right tool (queue using advisory_locks + long transactions) - Mailing list pgsql-general

From Tom Lane
Subject Re: Postgresql the right tool (queue using advisory_locks + long transactions)
Date
Msg-id 26485.1398633848@sss.pgh.pa.us
Whole thread Raw
In response to Re: Postgresql the right tool (queue using advisory_locks + long transactions)  (Hannes Erven <hannes@erven.at>)
List pgsql-general
Hannes Erven <hannes@erven.at> writes:
> On 2014-04-27 21:53, Tom Lane wrote:
>> Sitting on an open transaction for hours would be a bad idea.

> I'm wondering why this is and what the consequences might be - I
> thought, the MVCC model would handle that rather well?

Vacuum can't delete dead rows if there's some transaction that can still
see them.  So long-running transactions + update activity = table bloat.

(I had the idea that we'd fixed this, in recent releases, if you're using
READ COMMITTED isolation level; but some experimentation says VACUUM still
won't release rows while there are idle transactions.)

            regards, tom lane


pgsql-general by date:

Previous
From: John R Pierce
Date:
Subject: Re: Postgresql the right tool (queue using advisory_locks + long transactions)
Next
From: Dorian Hoxha
Date:
Subject: Re: Altering array(composite-types) without breaking code when inserting them and similar questions