]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Add parallel pg_dump option.
authorAndrew Dunstan <andrew@dunslane.net>
Sun, 24 Mar 2013 15:27:20 +0000 (11:27 -0400)
committerAndrew Dunstan <andrew@dunslane.net>
Sun, 24 Mar 2013 15:27:20 +0000 (11:27 -0400)
commit9e257a181cc1dc5e19eb5d770ce09cc98f470f5f
treea2b5c7a40cfe004d4838cd3be32e0177096fafbf
parent3b91fe185a71c05ac4528f93a39ba27232acc9e0
Add parallel pg_dump option.

New infrastructure is added which creates a set number of workers
(threads on Windows, forked processes on Unix). Jobs are then
handed out to these workers by the master process as needed.
pg_restore is adjusted to use this new infrastructure in place of the
old setup which created a new worker for each step on the fly. Parallel
dumps acquire a snapshot clone in order to stay consistent, if
available.

The parallel option is selected by the -j / --jobs command line
parameter of pg_dump.

Joachim Wieland, lightly editorialized by Andrew Dunstan.
22 files changed:
doc/src/sgml/backup.sgml
doc/src/sgml/perform.sgml
doc/src/sgml/ref/pg_dump.sgml
src/bin/pg_dump/Makefile
src/bin/pg_dump/compress_io.c
src/bin/pg_dump/dumputils.c
src/bin/pg_dump/dumputils.h
src/bin/pg_dump/parallel.c [new file with mode: 0644]
src/bin/pg_dump/parallel.h [new file with mode: 0644]
src/bin/pg_dump/pg_backup.h
src/bin/pg_dump/pg_backup_archiver.c
src/bin/pg_dump/pg_backup_archiver.h
src/bin/pg_dump/pg_backup_custom.c
src/bin/pg_dump/pg_backup_db.c
src/bin/pg_dump/pg_backup_directory.c
src/bin/pg_dump/pg_backup_tar.c
src/bin/pg_dump/pg_dump.c
src/bin/pg_dump/pg_dump.h
src/bin/pg_dump/pg_dump_sort.c
src/bin/pg_dump/pg_dumpall.c
src/bin/pg_dump/pg_restore.c
src/tools/msvc/Mkvcbuild.pm