Re: Make pg_checksums complain if compiled BLCKSZ and data folder's block size differ
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Fabien COELHO <coelho@cri.ensmp.fr>
Cc: Postgres hackers <pgsql-hackers@lists.postgresql.org>, Magnus Hagander <magnus@hagander.net>, Michael Banck <michael.banck@credativ.de>, Sergei Kornilov <sk@zsrv.org>
Date: 2019-03-17T05:46:57Z
Lists: pgsql-hackers
On Sat, Mar 16, 2019 at 09:18:34AM +0100, Fabien COELHO wrote: >> If the block size the tool is compiled with does not match the data >> folder block size, then users would get incorrect checksums failures, > > Or worse, incorrect checksump writing under "enabling"? Let's hope that we make that possible for v12. We'll see. > Second line is missing a "\n". "pg_checksums" does not need to appear, it is > already the progname, and if it differs there is no point in giving a wrong > name. I think it could be shorter. What about: Something like "%s: database folder is incompatible" for the first line sounds kind of better per the feedback gathered. And then on the second line: "The database cluster was initialized with block size %u, but pg_checksums was compiled with block size %u." > I think it would be better to adapt the checksum computation, but this is > indeed non trivial because of the way the BLCKSZ constant is hardwired into > type declarations. That's actually the possibility I was pointing out upthread. I am not sure that the use cases are worth the effort though. -- Michael
Commits
-
Error out in pg_verify_checksums on incompatible block size
- 5864d246099f 11.3 landed
-
Error out in pg_checksums on incompatible block size
- fa3395659561 12.0 landed