pgsql: Use pgBufferUsage for buffer usage tracking in analyze.

From: Masahiko Sawada <msawada(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Use pgBufferUsage for buffer usage tracking in analyze.
Date: 2024-08-14 01:50:03
Message-ID: E1se39H-0044Ac-Nn@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Use pgBufferUsage for buffer usage tracking in analyze.

Previously, (auto)analyze used global variables VacuumPageHit,
VacuumPageMiss, and VacuumPageDirty to track buffer usage. However,
pgBufferUsage provides a more generic way to track buffer usage with
support functions.

This change replaces those global variables with pgBufferUsage in
analyze. Since analyze was the sole user of those variables, it
removes their declarations. Vacuum previously used those variables but
replaced them with pgBufferUsage as part of a bug fix, commit
5cd72cc0c.

Additionally, it adjusts the buffer usage message in both vacuum and
analyze for better consistency.

Author: Anthonin Bonnefoy
Reviewed-by: Masahiko Sawada, Michael Paquier
Discussion: https://postgr.es/m/CAO6_Xqr__kTTCLkftqS0qSCm-J7_xbRG3Ge2rWhucxQJMJhcRA%40mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/c584781bcc686ebc0b3139e3e166607537336f69

Modified Files
--------------
src/backend/access/heap/vacuumlazy.c | 22 ++++++++++++++-----
src/backend/commands/analyze.c | 41 +++++++++++++++++++----------------
src/backend/commands/vacuum.c | 3 ---
src/backend/commands/vacuumparallel.c | 3 ---
src/backend/storage/buffer/bufmgr.c | 4 ----
src/backend/utils/init/globals.c | 4 ----
src/include/miscadmin.h | 4 ----
7 files changed, 38 insertions(+), 43 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Alexander Korotkov 2024-08-14 02:13:21 Re: pgsql: Fix more holes with SLRU code in need of int64 for segment numbe
Previous Message Thomas Munro 2024-08-13 11:41:50 pgsql: Include <xlocale.h> for macOS, take II.