On Thu, 2025-12-04 at 13:12 +0100, Radoulov, Dimitre wrote:
> I would like to request a clarification in the pg_dumpall
> documentation regarding Large Objects (LOBs). The current
> documentation does not explicitly state whether pg_dumpall includes
> Large Objects in its output.
>
> This behavior is clear from the implementation, but not from the
> documentation.
>
> I propose adding an explicit note such as:
>
> "pg_dumpall does not include Large Objects (BLOBs). To back up
> Large Objects, use pg_dump -b per database."
At the beginning of the "pg_dumpall" page we see:
pg_dumpall is a utility for writing out (“dumping”) all PostgreSQL databases
of a cluster into one script file. [...].
It does this by calling pg_dump for each database in the cluster.
And the pg_dump documentation says:
-b
--large-objects
--blobs (deprecated)
Include large objects in the dump. This is the default behavior except when
--schema, --table, --schema-only, --statistics-only, or --no-data is
specified.
Since pg_dumpall dumps the databases (and not parts of the databases), it will
automatically dump large objects too.
But I admit that you have to go by circumstantial evidence here. But rather
than explicitly naming large objects, perhaps it would be useful to add
something
like
pg_dumpall is primarily intended as a tool to upgrade database clusters.
As such, it by default exports all data of the entire cluster.
The only part of the state of a database cluster that is *not* included
in the output of pg_dumpall are the configuration files and database
parameters
changed with ALTER SYSTEM.
Yours,
Laurenz Albe