From: Robert Haas Date: Thu, 23 Sep 2021 15:36:53 +0000 (-0400) Subject: lock the buffer X-Git-Url: http://git.postgresql.org/gitweb/static/gitweb.js?a=commitdiff_plain;h=477ec606b2af3127a00d01a104d13c8163c9bdcb;p=users%2Frhaas%2Fpostgres.git lock the buffer --- diff --git a/src/backend/access/conveyor/conveyor.c b/src/backend/access/conveyor/conveyor.c index c8200083a0..5e50e64754 100644 --- a/src/backend/access/conveyor/conveyor.c +++ b/src/backend/access/conveyor/conveyor.c @@ -422,8 +422,11 @@ ConveyorBeltGetNewPage(ConveyorBelt *cb, CBPageNo *pageno) errmsg_internal("next block should be %u but relation has only %u blocks", next_blkno, nblocks)); else if (next_blkno == nblocks) + { buffer = ReadBufferExtended(cb->cb_rel, cb->cb_fork, P_NEW, RBM_NORMAL, NULL); + LockBuffer(buffer, BUFFER_LOCK_EXCLUSIVE); + } UnlockRelationForExtension(cb->cb_rel, ExclusiveLock); }