Re: heapam_index_build_range_scan's anyvisible

Andres Freund <andres@anarazel.de>

From: Andres Freund <andres@anarazel.de>
To: Ashwin Agrawal <aagrawal@pivotal.io>
Cc: Robert Haas <robertmhaas@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2019-06-10T21:56:38Z
Lists: pgsql-hackers
Hi,

On 2019-06-10 13:48:54 -0700, Ashwin Agrawal wrote:
> While at it might be helpful and better to also decouple HeapTuple
> dependency for IndexBuildCallback.

Indeed.


> Currently, all AM needs to build HeapTuple in
> index_build_range_scan function. I looked into all the callback functions
> and only htup->t_self is used from heaptuple in all the functions (unless I
> missed something). So, if seems fine will be happy to write patch to make
> that argument ItemPointer instead of HeapTuple?

I wonder if it should better be the slot? It's not inconceivable that
some AMs could benefit from that. Although it'd add some complication
to the heap HeapTupleIsHeapOnly case.

Greetings,

Andres Freund



Commits

  1. Pass ItemPointer not HeapTuple to IndexBuildCallback.

  2. Fix BRIN to use SnapshotAny during summarization