Re: Clarification on Role Access Rights to Table Indexes
Jeff Davis <pgsql@j-davis.com>
From: Jeff Davis <pgsql@j-davis.com>
To: Nathan Bossart <nathandbossart@gmail.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Ayush Vatsa <ayushvatsa1810@gmail.com>,
Robert Haas <robertmhaas@gmail.com>, "David G. Johnston"
<david.g.johnston@gmail.com>, PostgreSQL Hackers
<pgsql-hackers@postgresql.org>
Date: 2025-10-10T18:31:03Z
Lists: pgsql-hackers, pgsql-general
On Fri, 2025-10-10 at 11:26 -0500, Nathan Bossart wrote: > On Thu, Oct 09, 2025 at 04:18:03PM -0500, Nathan Bossart wrote: > > There's a similar pattern in get_rel_from_relname() in dblink.c, > > which also > > seems to only be used with an AccessShareLock (like pg_prewarm). > > My best > > guess from reading lots of code, commit messages, and old e-mails > > in the > > archives is that the original check-privileges-before-locking work > > was > > never completed. Interesting, thank you for the analysis. > > I'm currently leaning towards continuing with v4 of the patch set. > > 0001 > > and 0003 are a little weird in that a concurrent change could lead > > to a > > "could not find parent table" ERROR, but IIUC that is an extremely > > remote > > possibility. > > After sleeping on it, I still think this is the right call. In any > case, > I've spent way too much time on this stuff, so I plan to commit the > attached soon. I'm OK with that. v5-0001 is an improvement over the current situation. Regards, Jeff Davis
Commits
-
Fix privilege checks for pg_prewarm() on indexes.
- fae0ce5e318e 16.11 landed
- f146eb45cb1a 14.20 landed
- a0551bc5734b 17.7 landed
- 6c03ae8d6e81 15.15 landed
- 3ccf8e9ac96e 18.1 landed
- 208927e65692 19 (unreleased) landed
- 19a64f5676bb 13.23 landed
-
Fix lookup code for REINDEX INDEX.
- 079480dc2022 19 (unreleased) landed
-
Fix redefinition of typedef RangeVar.
- 15d7dded0e93 18.1 landed
-
Fix lookups in pg_{clear,restore}_{attribute,relation}_stats().
- c8af5019bee5 18.1 landed
- 688dc6299a5b 19 (unreleased) landed
-
dblink: Avoid locking relation before privilege check.
- c9b299f6df98 19 (unreleased) landed