Re: Use streaming read API in ANALYZE
Thomas Munro <thomas.munro@gmail.com>
From: Thomas Munro <thomas.munro@gmail.com>
To: Mats Kindahl <mats@timescale.com>
Cc: Melanie Plageman <melanieplageman@gmail.com>,
Nazir Bilal Yavuz <byavuz81@gmail.com>, Andres Freund <andres@anarazel.de>, Heikki Linnakangas <hlinnaka@iki.fi>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>,
jakub.wartak@enterprisedb.com
Date: 2024-08-24T03:33:19Z
Lists: pgsql-hackers
On Thu, Aug 22, 2024 at 7:31 PM Mats Kindahl <mats@timescale.com> wrote: > The alternate version proposed by Nazir allows you to decide which interface to use. > Reverting the patch entirely would also solve the problem. > Passing down the block sampler and the strategy to scan_begin() and move the ReadStream setup in analyze.c into initscan() in heapam.c, but this requires adding new parameters to this function. > Having accessors that allow you to get the block sampler and strategy from the ReadStream object. I'm a bit confused about how it can make sense to use the same BlockSampler with a side relation/fork. Could you point me at the code? > It would be great if this could be fixed before the PG17 release now that 27bc1772fc8 was reverted. Ack. Thinking... Random thought: is there a wiki page or something where we can find out about all the table AM projects? For the successor to 27bc1772fc8, I hope they'll be following along.
Commits
-
Allow ReadStream to be consumed as raw block numbers.
- 70d38e3d8a2d 18.0 landed
- ec1d545c8f70 17.0 landed
-
Generalize relation analyze in table AM interface
- 27bc1772fc81 17.0 cited