Remove ineffective heapam CHECK_FOR_INTERRUPTS().
authorPeter Geoghegan <[email protected]>
Mon, 9 Nov 2020 17:00:12 +0000 (09:00 -0800)
committerPeter Geoghegan <[email protected]>
Mon, 9 Nov 2020 17:00:12 +0000 (09:00 -0800)
Remove a CHECK_FOR_INTERRUPTS() call that could never actually handle an
interrupt.  We always have a heap page buffer lock at this point.
Having a useless CHECK_FOR_INTERRUPTS() call is harmless but misleading.

It is probably possible to work around the immediate problem by moving
the CHECK_FOR_INTERRUPTS() to before the heap page buffer lock is
acquired.  That isn't enough to make the function responsive to
interrupts, though.  The index AM caller will still hold an exclusive
buffer lock of its own.

src/backend/access/heap/heapam.c

index 1585861a021ddaa8aacd3123f36c19759d6cf39e..1b2f70499e54aee4679316f8c3d53da02d980483 100644 (file)
@@ -7086,7 +7086,6 @@ heap_compute_xid_horizon_for_tuples(Relation rel,
        {
            hoffnum = ItemIdGetRedirect(hitemid);
            hitemid = PageGetItemId(hpage, hoffnum);
-           CHECK_FOR_INTERRUPTS();
        }
 
        /*