Thread: pgsql: Avoid deadlock between concurrent CREATE INDEX CONCURRENTLY comm

Avoid deadlock between concurrent CREATE INDEX CONCURRENTLY commands.

There was a high probability of two or more concurrent C.I.C. commands
deadlocking just before completion, because each would wait for the others
to release their reference snapshots.  Fix by releasing the snapshot
before waiting for other snapshots to go away.

Per report from Paul Hinze.  Back-patch to all active branches.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/c3d09b3bd23f5f65b5eb8124a3c7592dad85a50c

Modified Files
--------------
src/backend/commands/indexcmds.c |   23 +++++++++++++++--------
1 files changed, 15 insertions(+), 8 deletions(-)