Re: Add pg_walinspect function with block info columns
Peter Geoghegan <pg@bowt.ie>
From: Peter Geoghegan <pg@bowt.ie>
To: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
Cc: Michael Paquier <michael@paquier.xyz>,
Kyotaro Horiguchi <horikyota.ntt@gmail.com>, melanieplageman@gmail.com, boekewurm+postgres@gmail.com, pgsql-hackers@postgresql.org
Date: 2023-03-27T23:59:18Z
Lists: pgsql-hackers
On Mon, Mar 27, 2023 at 12:42 AM Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com> wrote: > Thanks. Here's the v6 patch (last patch that I have with me for > pg_walinspect) for adding per-record info to pg_get_wal_block_info. > Note that I addressed all review comments received so far. Any > thoughts? Looking at this now, with the intention of committing it for 16. In addition to what I said a little while ago about the forknum parameter and parameter ordering, I have a concern about the data type: perhaps the forknum paramater should be declared as "relforknumber smallint", instead of using text? That would match the approach taken by pg_buffercache, and would be more efficient. I don't think that using a text column with the fork name adds too much, since this is after all supposed to be a tool used by experts. Plus it's usually pretty clear what it is from context. Not that many WAL records touch the visibility map, and those that do make it relatively obvious which block is from the VM based on other details. Details such as blockid and relblocknumber (the VM is approximately 32k times smaller than the heap). Once I see that the record is (say) a VISIBLE record, I'm already looking at the order of each block reference, and maybe at relblocknumber -- I'm not likely to visually scan the forknum column at all. -- Peter Geoghegan
Commits
-
Add show_data option to pg_get_wal_block_info.
- df4f3ab51730 16.0 landed
-
Show record information in pg_get_wal_block_info.
- 122376f028a0 16.0 landed
-
Fix recent pg_walinspect fpi_length bug.
- bade01cb4dd8 16.0 landed
-
Improve a few things in pg_walinspect
- 0276ae42ddea 16.0 landed
-
Rework design of functions in pg_walinspect
- 5c1b6628075a 16.0 cited
-
pg_walinspect: pg_get_wal_fpi_info() -> pg_get_wal_block_info()
- 9ecb134a93f0 16.0 landed