Thread: pgsql: Avoid spurious wait in concurrent reindex

pgsql: Avoid spurious wait in concurrent reindex

From
Alvaro Herrera
Date:
Avoid spurious wait in concurrent reindex

This is like commit c98763bf51bf, but for REINDEX CONCURRENTLY.  To wit:
this flags indicates that the current process is safe to ignore for the
purposes of waiting for other snapshots, when doing CREATE INDEX
CONCURRENTLY and REINDEX CONCURRENTLY.  This helps two processes doing
either of those things not deadlock, and also avoids spurious waits.

Author: Álvaro Herrera <alvherre@alvh.no-ip.org>
Reviewed-by: Dmitry Dolgov <9erthalion6@gmail.com>
Reviewed-by: Hamid Akhtar <hamid.akhtar@gmail.com>
Reviewed-by: Masahiko Sawada <sawada.mshk@gmail.com>
Discussion: https://postgr.es/m/20201130195439.GA24598@alvherre.pgsql

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/f9900df5f94936067e6fa24a9df609863eb08da2

Modified Files
--------------
src/backend/commands/indexcmds.c | 48 +++++++++++++++++++++++++++++++++++++++-
src/include/storage/proc.h       |  1 +
2 files changed, 48 insertions(+), 1 deletion(-)