postgres-github.git / summary / log / commit / refs

commit    c7d09595e46ff513ae0a23ae80e58871a321174f
Author:   Peter Geoghegan <pg@bowt.ie>
Date:     Sat Apr 04 15:45:33 2026 +0000

    heapam: Track heap block in IndexFetchHeapData.
    
    Add an explicit BlockNumber field (xs_blk) to IndexFetchHeapData that
    tracks which heap block is currently pinned in xs_cbuf.
    
    heapam_index_fetch_tuple now uses xs_blk to determine when buffer
    switching is needed, replacing the previous approach that compared
    buffer identities via ReleaseAndReadBuffer on every non-HOT-chain call.
    
    This is preparatory work for an upcoming commit that will add index
    prefetching using a read stream.  Delegating the release of a currently
    pinned buffer to ReleaseAndReadBuffer won't work anymore -- at least not
    when the next buffer that the scan needs to pin is one returned by
    read_stream_next_buffer (not a buffer returned by ReadBuffer).
    
    Author: Peter Geoghegan <pg@bowt.ie>
    Reviewed-By: Andres Freund <andres@anarazel.de>
    Discussion: https://postgr.es/m/CAH2-Wz=g=JTSyDB4UtB5su2ZcvsS7VbP+ZMvvaG6ABoCb+s8Lw@mail.gmail.com

[parent: a29fdd6c8d81]