pgsql: Make pg_basebackup work with pre-9.3 servers, and add server ver

From: Heikki Linnakangas <heikki(dot)linnakangas(at)iki(dot)fi>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Make pg_basebackup work with pre-9.3 servers, and add server ver
Date: 2013-03-25 18:37:48
Message-ID: E1UKCHE-0000pd-OO@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Make pg_basebackup work with pre-9.3 servers, and add server version check.

A new 'starttli' field was added to the response of BASE_BACKUP command.
Make pg_basebackup tolerate the case that it's missing, so that it still
works with older servers.

Add an explicit check for the server version, so that you get a nicer error
message if you try to use it with a pre-9.1 server.

The streaming protocol message format changed in 9.3, so -X stream still won't
work with pre-9.3 servers. I added a version check to ReceiveXLogStream()
earlier, but write that slightly differently, so that in 9.4, it will still
work with a 9.3 server. (In 9.4, the error message needs to be adjusted to
"9.3 or above", though). Also, if the version check fails, don't retry.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/d298b50a3b469c088bb40a4d36d38111b4cd574d

Modified Files
--------------
doc/src/sgml/ref/pg_basebackup.sgml | 6 ++++
src/bin/pg_basebackup/pg_basebackup.c | 42 ++++++++++++++++++++++++++--
src/bin/pg_basebackup/pg_receivexlog.c | 10 ++++++
src/bin/pg_basebackup/receivelog.c | 48 ++++++++++++++++++++++++-------
src/bin/pg_basebackup/receivelog.h | 1 +
5 files changed, 93 insertions(+), 14 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Heikki Linnakangas 2013-03-25 18:37:49 pgsql: In base backup, only include our own tablespace version director
Previous Message Heikki Linnakangas 2013-03-25 15:06:25 Re: pgsql: Add PF_PRINTF_ATTRIBUTE to on_exit_msg_fmt.