Re: Advance xmin aggressively on Read Commit isolation level

From: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
To: Andy Fan <zhihui(dot)fan1213(at)gmail(dot)com>
Cc: PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: Advance xmin aggressively on Read Commit isolation level
Date: 2020-11-06 08:53:45
Message-ID: CA+hUKGLMY8h5ZWHBgsTY8ECG2vFWtCHCdQrra_X+WwKiSV-ZGQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Nov 6, 2020 at 9:48 PM Andy Fan <zhihui(dot)fan1213(at)gmail(dot)com> wrote:
> I have 2 ideas about this. One is in the Read Committed level, we can advance xmin
> aggressively. suppose it started at t1, and complete a query at t2. the xmin should
> be t1 currently. Can we advance the xmin to t2 since it is read committed level,
> The data older than t2 will never be used? Another one is can we force to clean
> up the old tuples which are older than xxx? If users want to access that,
> we can just raise errors. Oracle uses this strategy and the error code is
> ORA-01555.

Hi Andy,

For the second idea, we have old_snapshot_threshold which does exactly
that since 9.6. There have been some questions about whether it works
correctly, though: see https://commitfest.postgresql.org/30/2682/ if
you would like to help look into that :-)

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Daniel Gustafsson 2020-11-06 11:08:11 Re: Move OpenSSL random under USE_OPENSSL_RANDOM
Previous Message Andy Fan 2020-11-06 08:48:28 Advance xmin aggressively on Read Commit isolation level