Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: postgresql-cfbot/postgresql
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: cf/6037~1
Choose a base ref
...
head repository: postgresql-cfbot/postgresql
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: cf/6037
Choose a head ref
  • 2 commits
  • 1 file changed
  • 2 contributors

Commits on Dec 6, 2025

  1. Fix race condition when reading PredXact->SxactGlobalXmin

    `DropAllPredicateLocksFromTable`, `PredicateLockPageSplit`, and
    `CheckTableForSerializableConflictIn` all assume that
    `!TransactionIdIsValid(PredXact->SxactGlobalXmin)` implies there are
    no active serializable transactions.
    
    This assumption is not true due to a race with
    `SetNewSxactGlobalXmin`, which first sets `PredXact->SxactGlobalXmin`
    to `InvalidTransactionId` then iterates over the active serializable
    transactions to find the new xmin. If `SetNewSxactGlobalXmin` is
    interrupted before setting a new xmin and other processes check
    `!TransactionIdIsValid(PredXact->SxactGlobalXmin)` without taking a
    lock during this time, they will incorrectly assume it is safe to
    proceed as if there are no concurrent serializable transactions.
    joshcurtis authored and Commitfest Bot committed Dec 6, 2025
    Configuration menu
    Copy the full SHA
    54663b5 View commit details
    Browse the repository at this point in the history
  2. [CF 6037] v1 - Fix race condition in SSI when reading PredXact->Sxact…

    …GlobalXmin
    
    This branch was automatically generated by a robot using patches from an
    email thread registered at:
    
    https://commitfest.postgresql.org/patch/6037
    
    The branch will be overwritten each time a new patch version is posted to
    the thread, and also periodically to check for bitrot caused by changes
    on the master branch.
    
    Patch(es): https://www.postgresql.org/message-id/CAEkjoh2X8yL9TKrQKx6SL6gtMNuZsyH8K-+rE78EwdOv4oXjSA@mail.gmail.com
    Author(s): Josh Curtis
    Commitfest Bot committed Dec 6, 2025
    Configuration menu
    Copy the full SHA
    ff7b9be View commit details
    Browse the repository at this point in the history
Loading