| From: | Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com> |
|---|---|
| To: | Álvaro Herrera <alvherre(at)kurilemu(dot)de> |
| Cc: | PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
| Subject: | Re: Tighten ACL check in repack_is_permitted_for_relation() |
| Date: | 2026-08-17 17:13:58 |
| Message-ID: | CALj2ACV5zy8azfH=AsW_-FyRWZCUgyQekrfH1pL078EOo7HMLg@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hi,
On Mon, Aug 17, 2026 at 8:56 AM Álvaro Herrera <alvherre(at)kurilemu(dot)de> wrote:
>
> On 2026-Aug-04, Bharath Rupireddy wrote:
>
> > repack_is_permitted_for_relation() uses pg_class_aclcheck_ext() to
> > silently skip a concurrently-dropped relation. That's wrong for a
> > caller that may already hold a lock on the relation whose ACL is
> > checked, where missing a relation is not fine, and it makes the
> > single-relation REPACK cases more brittle
> > (https://www.postgresql.org/message-id/akPhEffRipH4isWF@nathan) So
> > only detect a missing relation where that's expected, following the
> > fix for vacuum_is_permitted_for_relation() in commit 824d5f6.
>
> That makes sense. I think "missing OK" is a bit weird as an argument
> here though; I prefer it as "already locked", inverting the boolean.
> What do you think of this formulation?
Thanks. That works for me. The v3 patch LGTM. pgindent, make check,
and make check-world are all good.
--
Bharath Rupireddy
Amazon Web Services: https://aws.amazon.com
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Andrey Rachitskiy | 2026-08-17 17:21:24 | Re: Residual cleanups for tied objects in PL/Perl |
| Previous Message | Ashutosh Bapat | 2026-08-17 16:58:34 | Re: BgBufferSync(): clarification about reusable_buffers variable |