Re: READ UNCOMMITTED in postgres - Mailing list pgsql-general

From Simon Riggs
Subject Re: READ UNCOMMITTED in postgres
Date
Msg-id CANP8+jJY+fBXFgKZbrwyEUJbSGuUTLMcSSv-9M1zrgU6LxqVFA@mail.gmail.com
Whole thread Raw
In response to READ UNCOMMITTED in postgres  (Matthew Phillips <mphillips34@gmail.com>)
Responses Re: READ UNCOMMITTED in postgres
List pgsql-general
On Wed, 18 Dec 2019 at 23:13, Matthew Phillips <mphillips34@gmail.com> wrote:
 
With the current READ UNCOMMITTED discussion happening on pgsql-hackers [1], It did raise a question/use-case I recently encountered and could not find a satisfactory solution for. If someone is attempting to poll for new records on a high insert volume table that has a monotonically increasing id, what is the best way to do it? As is, with a nave implementation, rows are not guaranteed to appear in monotonic order; so if you were to keep a $MAX_ID, and SELECT WHERE p_id > $MAX_ID, you would hit gaps. Is there a clean way to do this? I've seen READ UNCOMMITTED used for this with DB2.

Not sure it helps much. The new records aren't truly there until commit.

Using max_id alone is not an effective technique. It's just an optimization.

Just be careful to not advance max_id too quickly, and remember which ones you've already checked. Or wait for the next monontonic value each time, accepting the lag.

--
Simon Riggs                http://www.2ndQuadrant.com/
PostgreSQL Solutions for the Enterprise

pgsql-general by date:

Previous
From: Thomas Kellerer
Date:
Subject: Re: READ UNCOMMITTED in postgres
Next
From: James Sewell
Date:
Subject: Max locks