On 08/28/2012 12:33 PM, Nimesh Satam wrote:
> Hi,
>
> We have been using the current version of postgres i.e. 9.1.4 with
> streaming replication on. While vacuuming we noticed that certain dead
> rows are not getting removed and following debug information is printed:
>
> "DETAIL: 12560 dead row versions cannot be removed yet."
>
> As per suggestion, we made sure that no long running transactions are
> active. Also all the applications were stopped during this time.
>
> Can anybody highlight the possible reason for the dead rows not been
> cleaned?
I don't know if prepared transactions could cause this exact message,
but check:
select * from pg_prepared_xacts ;
to see if you have any prepared transactions (from two-phase commit)
lying around.
If you don't use XA or 2PC, consider setting max_prepared_transactions
to 0 in postgresql.conf if it isn't already.
--
Craig Ringer