Use XLogFromFileName() in pg_resetwal to parse position from WAL file
Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
From: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
To: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2022-10-04T05:36:15Z
Lists: pgsql-hackers
Attachments
- v1-0001-Use-XLogFromFileName-in-pg_resetwal-to-parse-posi.patch (application/octet-stream) patch v1-0001
Hi, It looks like there's an opportunity to replace explicit WAL file parsing code with XLogFromFileName() in pg_resetwal.c. This was not done then (in PG 10) because the XLogFromFileName() wasn't accepting file size as an input parameter (see [1]) and pg_resetwal needed to use WAL file size from the controlfile. Thanks to the commit fc49e24fa69a15efacd5b8958115ed9c43c48f9a which added the wal_segsz_bytes parameter to XLogFromFileName(). I'm attaching a small patch herewith. This removes using extra variables in pg_resetwal.c and a bit of duplicate code too (5 LOC). Thoughts? [1] https://github.com/postgres/postgres/blob/REL_10_STABLE/src/include/access/xlog_internal.h -- Bharath Rupireddy PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com
Commits
-
Use macros from xlog_internal.h for WAL segment logic in pg_resetwal
- 9a30e154b35e 16.0 landed
-
Make WAL segment size configurable at initdb time.
- fc49e24fa69a 11.0 cited