diff options
author | Thomas Munro <tmunro@postgresql.org> | 2024-04-08 13:16:20 +1200 |
---|---|---|
committer | Thomas Munro <tmunro@postgresql.org> | 2024-04-08 13:16:28 +1200 |
commit | 041b96802efa33d2bc9456f2ad946976b92b5ae1 (patch) | |
tree | 1f345cacb51b566d6c156f673a3804fb00917070 /src/include/access/heapam.h | |
parent | f587338dec87d3c35b025e131c5977930ac69077 (diff) |
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
Diffstat (limited to 'src/include/access/heapam.h')
-rw-r--r-- | src/include/access/heapam.h | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/include/access/heapam.h b/src/include/access/heapam.h index 48936826bcc..f84dbe629fe 100644 --- a/src/include/access/heapam.h +++ b/src/include/access/heapam.h @@ -413,9 +413,8 @@ extern bool HeapTupleIsSurelyDead(HeapTuple htup, struct GlobalVisState *vistest); /* in heap/heapam_handler.c*/ -extern void heapam_scan_analyze_next_block(TableScanDesc scan, - BlockNumber blockno, - BufferAccessStrategy bstrategy); +extern bool heapam_scan_analyze_next_block(TableScanDesc scan, + ReadStream *stream); extern bool heapam_scan_analyze_next_tuple(TableScanDesc scan, TransactionId OldestXmin, double *liverows, double *deadrows, |