Re: BUG #19379: Role pg_read_all_data don't allowed read large objects

Nitin Motiani <nitinmotiani@google.com>

From: Nitin Motiani <nitinmotiani@google.com>
To: Andres Freund <andres@anarazel.de>
Cc: "David G. Johnston" <david.g.johnston@gmail.com>, "long76.git@mail.ru" <long76.git@mail.ru>, "pgsql-bugs@lists.postgresql.org" <pgsql-bugs@lists.postgresql.org>
Date: 2026-02-05T10:05:26Z
Lists: pgsql-bugs
On Thu, Jan 15, 2026 at 7:15 PM Andres Freund <andres@anarazel.de> wrote:
>
> >
> > The docs you link note that all data is “tables, views, sequences”.  Large
> > objects are not listed.  Maybe that means the name is a bit misleading but
> > it’s working as documented.
> >
> > Likewise, the LO page doesn’t say anything about read all being applicable.
>
> It's not contradicting our docs, but I think it likely still is an
> oversight. The goal of pg_read_all_data [1] was to allow running pg_dump
> without having to grant granular access, not being able to run pg_dump
> successfully due to LOs prevents that.
>

Hi,

I have proposed a fix for this on pgsql-hackers [1]. And tested that
with the fix, pg_read_all_data can dump large objects. Please take a
look and let me know what you think.

Thanks & Regards,
Nitin Motiani
Google

[1] https://www.postgresql.org/message-id/CAH5HC96dxAEvP78s1-JK_nDABH5c4w2MDfyx4vEWxBEfofGWsw%40mail.gmail.com



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Add pg_read_all_data and pg_write_all_data roles