Thread: pgsql: Error out if SKIP LOCKED and WITH TIES are both specified

pgsql: Error out if SKIP LOCKED and WITH TIES are both specified

From
Alvaro Herrera
Date:
Error out if SKIP LOCKED and WITH TIES are both specified

Both bugs #16676[1] and #17141[2] illustrate that the combination of
SKIP LOCKED and FETCH FIRST WITH TIES break expectations when it comes
to rows returned to other sessions accessing the same row.  Since this
situation is detectable from the syntax and hard to fix otherwise,
forbid for now, with the potential to fix in the future.

[1] https://postgr.es/m/16676-fd62c3c835880da6@postgresql.org
[2] https://postgr.es/m/17141-913d78b9675aac8e@postgresql.org

Backpatch-through: 13, where WITH TIES was introduced
Author: David Christensen <david.christensen@crunchydata.com>
Discussion: https://postgr.es/m/CAOxo6XLPccCKru3xPMaYDpa+AXyPeWFs+SskrrL+HKwDjJnLhg@mail.gmail.com

Branch
------
REL_13_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/170206e458bce1d4be34bb805f884b2735430519

Modified Files
--------------
doc/src/sgml/ref/select.sgml        |  3 ++-
src/backend/commands/matview.c      |  3 ++-
src/backend/parser/gram.y           | 15 +++++++++++++++
src/test/regress/expected/limit.out |  5 +++++
src/test/regress/sql/limit.sql      |  5 +++++
5 files changed, 29 insertions(+), 2 deletions(-)