Re: Bogus collation version recording in recordMultipleDependencies
Peter Geoghegan <pg@bowt.ie>
From: Peter Geoghegan <pg@bowt.ie>
To: Julien Rouhaud <rjuju123@gmail.com>
Cc: Thomas Munro <thomas.munro@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, Andres Freund <andres@anarazel.de>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2021-04-20T02:27:24Z
Lists: pgsql-hackers
On Mon, Apr 19, 2021 at 6:45 PM Julien Rouhaud <rjuju123@gmail.com> wrote: > > This argument seems completely absurd to me. > > I'm not sure why? For glibc at least, I don't see how we could not end up > raising false positive as you have a single glibc version for all its > collations. If a user has say en_US and fr_FR, or any quite stable collation, > most of the glibc upgrades (except 2.28 of course) won't corrupt your indexes. If the versions differ and your index happens to not be corrupt because it just so happened to not depend on any of the rules that have changed, then a complaint about the collation versions changing is not what I'd call a false positive. You can call it that if you want, I suppose -- it's just a question of semantics. But I don't think you should conflate two very different things. You seem to be suggesting that they're equivalent just because you can refer to both of them using the same term. It's obvious that you could have an absence of index corruption even in the presence of a collation incompatibility. Especially when there is only 1 tuple in the index, say -- obviously the core idea is to manage the dependency on versioned collations, which isn't magic. Do you really think that's equivalent to having incorrect version dependencies? -- Peter Geoghegan
Commits
-
Doc: Update notes about libc collation versions.
- b65431ca5e12 14.0 landed
-
Revert per-index collation version tracking feature.
- ec4831470826 14.0 landed
-
Rethink extraction of collation dependencies.
- f24b15699705 14.0 landed
-
Fix bogus collation-version-recording logic.
- ef387bed87f2 14.0 landed
-
Rename the "point is strictly above/below point" comparison operators.
- 0cc993278888 14.0 cited
-
Move catalog toast table declarations
- b4c9695e79f7 14.0 cited