postgresql/src/bin
Tom Lane fb03d08a89 Rationalize parallel dump/restore's handling of worker cmd/status messages.
The existing APIs for creating and parsing command and status messages are
rather messy; for example, archive-format modules have to provide code
for constructing command messages, which is entirely pointless since
the code to read them is hard-wired in WaitForCommands() and hence
no format-specific variation is actually possible.  But there's little
foreseeable reason to need format-specific variation anyway.

The situation for status messages is no better; at least those are both
constructed and parsed by format-specific code, but said code is quite
redundant since there's no actual need for format-specific variation.

To add insult to injury, the first API involves returning pointers to
static buffers, which is bad, while the second involves returning pointers
to malloc'd strings, which is safer but randomly inconsistent.

Hence, get rid of the MasterStartParallelItem and MasterEndParallelItem
APIs, and instead write centralized functions that construct and parse
command and status messages.  If we ever do need more flexibility, these
functions can be the standard implementations of format-specific
callback methods, but that's a long way off if it ever happens.

Tom Lane, reviewed by Kevin Grittner

Discussion: <17340.1464465717@sss.pgh.pa.us>
2016-09-27 13:56:04 -04:00
..
initdb Repair whitespace in initdb message. 2016-09-06 13:26:43 -04:00
pg_archivecleanup Fix a bunch of places that called malloc and friends with no NULL check. 2016-08-30 18:22:43 -04:00
pg_basebackup Include <sys/select.h> where needed 2016-09-27 01:05:21 -03:00
pg_config Translation updates 2016-08-08 11:08:00 -04:00
pg_controldata pg_ctl: Detect current standby state from pg_control 2016-09-21 12:00:00 -04:00
pg_ctl pg_ctl: Add promote wait option to help output 2016-09-23 12:00:00 -04:00
pg_dump Rationalize parallel dump/restore's handling of worker cmd/status messages. 2016-09-27 13:56:04 -04:00
pg_resetxlog Translation updates 2016-08-08 11:08:00 -04:00
pg_rewind Add tests for various connection string issues 2016-09-22 12:00:00 -04:00
pg_test_fsync Move pg_test_fsync from contrib/ to src/bin/ 2015-04-19 22:20:49 -04:00
pg_test_timing Move pg_test_timing from contrib/ to src/bin/ 2015-04-20 21:30:12 -04:00
pg_upgrade Stamp HEAD as 10devel. 2016-08-15 13:49:49 -04:00
pg_xlogdump Split hash.h → hash_xlog.h 2016-08-29 18:55:49 -03:00
pgbench Fix newly-introduced issues in pgbench. 2016-09-26 20:23:50 -04:00
pgevent Update copyright for 2016 2016-01-02 13:33:40 -05:00
psql Refer to OS X as "macOS", except for the port name which is still "darwin". 2016-09-25 15:40:57 -04:00
scripts Include <sys/select.h> where needed 2016-09-27 01:05:21 -03:00
Makefile Update copyright for 2016 2016-01-02 13:33:40 -05:00