Re: Non-text mode for pg_dumpall
Noah Misch <noah@leadboat.com>
From: Noah Misch <noah@leadboat.com>
To: Andrew Dunstan <andrew@dunslane.net>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Mahendra Singh Thalor <mahi6run@gmail.com>, Álvaro Herrera <alvherre@alvh.no-ip.org>, jian he <jian.universality@gmail.com>, Srinath Reddy <srinath2133@gmail.com>, pgsql-hackers@lists.postgresql.org
Date: 2025-08-24T01:08:11Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add non-text output formats to pg_dumpall
- 763aaa06f034 19 (unreleased) landed
-
Improve pg_dump/pg_dumpall help synopses and terminology
- dec6643487bb 18.0 cited
-
Non text modes for pg_dumpall, correspondingly change pg_restore
- 1495eff7bdb0 18.0 landed
-
Doc: manually break lines in wide UUID examples.
- a6524105d20b 18.0 cited
On Wed, Jul 30, 2025 at 02:51:59PM -0400, Andrew Dunstan wrote: > OK, now that's reverted we should discuss how to proceed. I had two thoughts > - we could use invent a JSON format for the globals, or we could just use > the existing archive format. I think the archive format is pretty flexible, > and should be able to accommodate this. The downside is it's not humanly > readable. The upside is that we don't need to do anything special either to > write it or parse it. I would first try to use the existing archiver API, because that makes it harder to miss bugs. Any tension between that API and pg_dumpall is likely to have corresponding tension on the pg_restore side. Resolving that tension will reveal much of the project's scope that remained hidden during the v18 attempt. Perhaps more important than that, using the archiver API means future pg_dump and pg_restore options are more likely to cooperate properly with $SUBJECT. In other words, I want it to be hard to add pg_dump/pg_restore features that malfunction only for $SUBJECT archives. The strength of the archiver architecture shows in how rarely new features need format-specific logic and how rarely format-specific bugs get reported. We've had little or no trouble with e.g. bugs that appear in -Fd but not in -Fc. If pg_backup_json.c emerged as a new backend to the archiver API, I'd not have concerns about that. But a JSON format specific to $SUBJECT sounds like a recipe for bugs. > There might also be other reasonable options. But I think we should stay out > of the business of using custom code to parse text. Agreed.