postgresql/contrib/pgstattuple
Michael Paquier ae58189a4d pgstattuple: Optimize pgstattuple_approx() with streaming read
This commit plugs into pgstattuple_approx(), the SQL function faster
than pgstattuple() that returns approximate results, the streaming read
APIs.  A callback is used to be able to skip all-visible pages via VM
lookup, to match with the logic prior to this commit.

Under test conditions similar to 6c228755ad (some dm_delay and
debug_io_direct=data), this can substantially improve the execution time
of the function, particularly for large relations.

Author: Xuneng Zhou <xunengzhou@gmail.com>
Reviewed-by: Michael Paquier <michael@paquier.xyz>
Reviewed-by: Nazir Bilal Yavuz <byavuz81@gmail.com>
Discussion: https://postgr.es/m/CABPTF7VrqfbcDXqGrdLQ2xaQ=K0RzExNuw6U_GGqzSJu32wfdQ@mail.gmail.com
2026-03-14 15:06:13 +09:00
..
expected Reintroduce support for sequences in pgstattuple and pageinspect. 2024-09-12 16:31:29 -05:00
sql Reintroduce support for sequences in pgstattuple and pageinspect. 2024-09-12 16:31:29 -05:00
.gitignore Add a regression test for pgstattuple. 2011-08-25 00:06:16 -04:00
Makefile Remove support for upgrading extensions from "unpackaged" state. 2020-02-19 16:59:14 -05:00
meson.build Update copyright for 2026 2026-01-01 13:24:10 -05:00
pgstatapprox.c pgstattuple: Optimize pgstattuple_approx() with streaming read 2026-03-14 15:06:13 +09:00
pgstatindex.c pgstattuple: Optimize btree and hash index functions with streaming read 2026-03-13 10:48:45 +09:00
pgstattuple--1.0--1.1.sql Add pgstatginindex() function to get the size of the GIN pending list. 2012-12-05 09:58:03 +02:00
pgstattuple--1.1--1.2.sql Fix pgstattuple functions to use regclass-type as the argument. 2013-07-19 03:50:20 +09:00
pgstattuple--1.2--1.3.sql Add pgstattuple_approx() to the pgstattuple extension. 2015-05-13 07:35:06 +02:00
pgstattuple--1.3--1.4.sql Update pgstattuple extension for parallel query. 2016-06-10 10:42:03 -04:00
pgstattuple--1.4--1.5.sql Fix pgstattuple's handling of unused hash pages. 2017-04-12 11:53:00 -04:00
pgstattuple--1.4.sql Minor fixes in contrib installation scripts. 2016-06-14 10:47:06 -04:00
pgstattuple.c pgstattuple: Improve reports generated for indexes (hash, gist, btree) 2025-10-02 11:07:30 +09:00
pgstattuple.control Remove superuser checks in pgstattuple 2016-09-29 22:13:38 -04:00