Use streaming I/O in ANALYZE.
authorThomas Munro <tmunro@postgresql.org>
Mon, 8 Apr 2024 01:16:20 +0000 (13:16 +1200)
committerThomas Munro <tmunro@postgresql.org>
Mon, 8 Apr 2024 01:16:28 +0000 (13:16 +1200)
commit041b96802efa33d2bc9456f2ad946976b92b5ae1
tree1f345cacb51b566d6c156f673a3804fb00917070
parentf587338dec87d3c35b025e131c5977930ac69077
Use streaming I/O in ANALYZE.

The ANALYZE command prefetches and reads sample blocks chosen by a
BlockSampler algorithm. Instead of calling [Prefetch|Read]Buffer() for
each block, ANALYZE now uses the streaming API introduced in b5a9b18cd0.

Author: Nazir Bilal Yavuz <byavuz81@gmail.com>
Reviewed-by: Melanie Plageman <melanieplageman@gmail.com>
Reviewed-by: Andres Freund <andres@anarazel.de>
Reviewed-by: Jakub Wartak <jakub.wartak@enterprisedb.com>
Reviewed-by: Heikki Linnakangas <hlinnaka@iki.fi>
Reviewed-by: Thomas Munro <thomas.munro@gmail.com>
Discussion: https://postgr.es/m/flat/CAN55FZ0UhXqk9v3y-zW_fp4-WCp43V8y0A72xPmLkOM%2B6M%2BmJg%40mail.gmail.com
src/backend/access/heap/heapam_handler.c
src/backend/commands/analyze.c
src/include/access/heapam.h