Re: Avoiding Refreezing XIDs Repeatedly

From: Matheus de Oliveira <matioli(dot)matheus(at)gmail(dot)com>
To: bkrug <bkrug(at)usatech(dot)com>
Cc: pgsql-performance <pgsql-performance(at)postgresql(dot)org>
Subject: Re: Avoiding Refreezing XIDs Repeatedly
Date: 2015-02-09 16:48:17
Message-ID: CAJghg4KAFiFnH6inJ+K7Bfef9bgGYt7E6MM3rkevqiT=Q245HQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

On Mon, Feb 9, 2015 at 1:58 PM, bkrug <bkrug(at)usatech(dot)com> wrote:

> Couldn't postgres reserve a special XID that is never available for normal
> transactions but that indicates that any transaction can see it because it
> is so old? Then instead of constantly having to freeze old XIDs each time
> the XID is going to wrap, vacuum can just set it to the special XID and
> never touch it again unless something really changes.
>

It changed in recent versions (9.3 or 9.4, I don't recall exactly which)
and moved to tuple header, but what you described is exactly what was done,
the xid was 2.

Anyway, an already frozen tuple won't be "re-frozen" again.

Regards,
--
Matheus de Oliveira
Analista de Banco de Dados
Dextra Sistemas - MPS.Br nível F!
www.dextra.com.br/postgres

In response to

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Alvaro Herrera 2015-02-09 17:06:32 Re: Avoiding Refreezing XIDs Repeatedly
Previous Message bkrug 2015-02-09 15:58:36 Avoiding Refreezing XIDs Repeatedly