From 32d6287d2eef6b6a4dde07e0513f3e4f321792ad Mon Sep 17 00:00:00 2001 From: Peter Geoghegan Date: Wed, 30 Dec 2020 17:21:42 -0800 Subject: [PATCH] Get heap page max offset with buffer lock held. On further reflection it seems better to call PageGetMaxOffsetNumber() after acquiring a buffer lock on the page. This shouldn't really matter, but doing it this way is cleaner. Follow-up to commit 42288174. Backpatch: 12-, just like commit 42288174 --- src/backend/access/heap/heapam.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/access/heap/heapam.c b/src/backend/access/heap/heapam.c index da27903cb4c..26c2006f23c 100644 --- a/src/backend/access/heap/heapam.c +++ b/src/backend/access/heap/heapam.c @@ -7075,10 +7075,10 @@ heap_compute_xid_horizon_for_tuples(Relation rel, xid_horizon_prefetch_buffer(rel, &prefetch_state, 1); #endif + LockBuffer(buf, BUFFER_LOCK_SHARE); + page = BufferGetPage(buf); maxoff = PageGetMaxOffsetNumber(page); - - LockBuffer(buf, BUFFER_LOCK_SHARE); } /*