Re: Add pg_walinspect function with block info columns
Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
From: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
To: Peter Geoghegan <pg@bowt.ie>
Cc: Melanie Plageman <melanieplageman@gmail.com>, Matthias van de Meent <boekewurm+postgres@gmail.com>,
Michael Paquier <michael@paquier.xyz>, Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2023-03-15T06:43:56Z
Lists: pgsql-hackers
Attachments
- v1-0001-Emit-WAL-record-info-via-pg_get_wal_block_info.patch (application/x-patch) patch v1-0001
On Wed, Mar 15, 2023 at 7:20 AM Peter Geoghegan <pg@bowt.ie> wrote: > > > But, perhaps you are suggesting a parameter to pg_get_wal_records_info() > > like "with_block_info" or something, which produces the full > > denormalized block + record output? > > I was thinking of something like that, yes -- though it wouldn't > necessarily have to be the *full* denormalized block_ref info, the FPI > itself, etc. Just the more useful stuff. > > It occurs to me that my concern about the information that > pg_get_wal_records_info() lacks could be restated as a concern about > what pg_get_wal_block_info() lacks: pg_get_wal_block_info() fails to > show basic information about the WAL record whose blocks it reports > on, even though it could easily show all of the > pg_get_wal_records_info() info once per block (barring block_ref). So > addressing my concern by adjusting pg_get_wal_block_info() might be > the best approach. I'd probably be happy with that -- I'd likely just > stop using pg_get_wal_records_info() completely under this scheme. How about something like the attached? It adds the per-record columns to pg_get_wal_block_info() avoiding "possibly expensive" joins with pg_get_wal_records_info(). With this, pg_get_wal_records_info() too will be useful for users scanning WAL at record level. That is to say that we can retain both pg_get_wal_records_info() and pg_get_wal_block_info(). -- Bharath Rupireddy PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com
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