Re: Combine pg_walinspect till_end_of_wal functions with others
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Michael Paquier <michael@paquier.xyz>, Jeff Davis <pgsql@j-davis.com>
Cc: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>, Julien Rouhaud <rjuju123@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2023-03-15T02:05:20Z
Lists: pgsql-hackers
Hi, On 2023-03-15 09:56:10 +0900, Michael Paquier wrote: > On Tue, Mar 14, 2023 at 02:54:40PM -0700, Andres Freund wrote: > > Object description > > ----------------------------------------------------------- > > function pg_get_wal_record_info(pg_lsn) > > - function pg_get_wal_records_info(pg_lsn,pg_lsn) > > function pg_get_wal_records_info_till_end_of_wal(pg_lsn) > > - function pg_get_wal_stats(pg_lsn,pg_lsn,boolean) > > + function pg_get_wal_records_info(pg_lsn,pg_lsn) > > function pg_get_wal_stats_till_end_of_wal(pg_lsn,boolean) > > + function pg_get_wal_stats(pg_lsn,pg_lsn,boolean) > > (5 rows) > > > > -- Make sure checkpoints don't interfere with the test. > > > > Looks like it's missing an ORDER BY. > > Interesting. This is "\dx+ pg_walinspect". > listOneExtensionContents() uses pg_describe_object() for that, and > there is already an ORDER BY based on it. I would not have expected > this part to be that much sensitive. Is this using a specific ICU > collation, because this is a side-effect of switching ICU as the > default in initdb? It's using ICU, but not a specific collation. The build I linked to is WIP hackery to add ICU support to windows CI. Here's the initdb output: https://api.cirrus-ci.com/v1/artifact/task/6288336663347200/testrun/build/testrun/pg_walinspect/regress/log/initdb.log The database cluster will be initialized with this locale configuration: provider: icu ICU locale: en_US LC_COLLATE: English_United States.1252 LC_CTYPE: English_United States.1252 LC_MESSAGES: English_United States.1252 LC_MONETARY: English_United States.1252 LC_NUMERIC: English_United States.1252 LC_TIME: English_United States.1252 The default database encoding has accordingly been set to "WIN1252". The default text search configuration will be set to "english". For comparison, here's a recent CI run (which also failed on windows, but for unrelated reasons), without ICU: https://api.cirrus-ci.com/v1/artifact/task/6478925920993280/testrun/build/testrun/pg_walinspect/regress/log/initdb.log The database cluster will be initialized with locale "English_United States.1252". The default database encoding has accordingly been set to "WIN1252". The default text search configuration will be set to "english". > As a solution, this could use pg_identify_object(classid, objid, 0) in > the ORDER BY clause to enforce a better ordering of the objects dealt > with as it decomposes the object name and the object type. That > should be enough, I assume, as it looks to be parenthesis vs > underscore that switch the order. Greetings, Andres Freund
Commits
-
Improve a bit the tests of pg_walinspect
- 4f1882b96059 16.0 landed
-
Tweak regression test of pg_walinspect to be less collation-sensitive
- e643a315fc58 16.0 landed
-
Rework design of functions in pg_walinspect
- 5c1b6628075a 16.0 landed
-
Refactor and improve tests of pg_walinspect
- 1f282c24e464 16.0 landed
-
doc: Fix description of pg_get_wal_stats_till_end_of_wal() in pg_walinspect
- 019f8624664d 16.0 cited