Re: Potential G2-item cycles under serializable isolation

Kyle Kingsbury <aphyr@jepsen.io>

From: Kyle Kingsbury <aphyr@jepsen.io>
To:
Cc: PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>
Date: 2020-06-05T17:00:18Z
Lists: pgsql-bugs
After staring at a few hundred of these anomalies, I'm more confident: this 
problem seems to involve a transaction which fails to observe a logically prior 
transaction's *insert*. So far we never see a cycle involving all updates rw 
deps--there's always 2+ rw deps, and at least one involves the initial state. 
Maybe this helps narrow down the search!

--Kyle




Commits

  1. Doc: Add references for SI and SSI.

  2. Improve comments for [Heap]CheckForSerializableConflictOut().

  3. Avoid update conflict out serialization anomalies.

  4. Implement genuine serializable isolation level.