Re: Extend ALTER DEFAULT PRIVILEGES for large objects

Laurenz Albe <laurenz.albe@cybertec.at>

From: Laurenz Albe <laurenz.albe@cybertec.at>
To: Yugo Nagata <nagata@sraoss.co.jp>
Cc: Nathan Bossart <nathandbossart@gmail.com>, Tom Lane <tgl@sss.pgh.pa.us>, pgsql-hackers@postgresql.org
Date: 2025-01-22T12:30:17Z
Lists: pgsql-hackers

Attachments

On Fri, 2024-09-13 at 16:18 +0900, Yugo Nagata wrote:
> I've attached a updated patch. The test is rewritten using has_largeobject_privilege()
> function instead of calling loread & lowrite, which makes the test a bit simpler.
> Thare are no other changes.

When I tried to apply this patch, I found that it doesn't apply any
more since commit f391d9dc93 renamed tab-complete.c to tab-complete.in.c.

Attached is a rebased patch.

I agree that large objects are a feature that should fade out (alas,
the JDBC driver still uses it for BLOBs).  But this patch is not big
or complicated and is unlikely to create a big maintenance burden.

So I am somewhat for committing it.  It works as advertised.
If you are fine with my rebased patch, I can mark it as "ready for
committer".  If it actually gets committed depends on whether there
is a committer who thinks it worth the effort or not.

Yours,
Laurenz Albe

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. psql: Fix tab-completion after GRANT/REVOKE on LARGE OBJECT and FOREIGN SERVER.

  2. psql: Improve psql tab completion for GRANT/REVOKE on large objects.

  3. Extend ALTER DEFAULT PRIVILEGES to define default privileges for large objects.

  4. Convert tab-complete's long else-if chain to a switch statement.