On Mon, Nov 5, 2012 at 9:49 PM, Bruce Momjian <bruce@momjian.us> wrote:
On Mon, Nov 5, 2012 at 03:30:32PM -0500, Tom Lane wrote: > Magnus Hagander <magnus@hagander.net> writes: > > On Mon, Nov 5, 2012 at 9:14 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote: > >> BTW, does pg_upgrade run pg_restore in --single-transaction mode? > >> That would probably make synchronous_commit moot, at least for that > >> step. > > > It doesn't use pg_restore at all - it uses the dump from pg_dumpall, which > > you can't reload with pg_restore. > > Sorry, I should've said psql --single-transaction. Although that isn't > going to work either given the presence of \connect commands in the > script. I wonder whether pg_dumpall ought to have some sort of "one > transaction per database please" option.
pg_dumpall is already doing lots of gymnastics with SQL, and pg_upgrade splits the output file into db/user creation and object creation, so I am hesitant to add anything more in there.
What about running pg_dump in a loop instead of pg_dumpall?