mirror of
https://github.com/postgres/postgres.git
synced 2025-11-10 17:42:29 +03:00
Revert "Fix bug in checking of IDENTIFY_SYSTEM result."
This reverts commit 083d29c65b.
The commit changed the code so that it causes an errors when
IDENTIFY_SYSTEM returns three columns. But which prevents us
from using the replication-related utilities against the server
with older version. This is not what we want. For that
compatibility, we allow the utilities to receive three columns
as the result of IDENTIFY_SYSTEM eventhough it actually returns
four columns in 9.4 or later.
Pointed out by Andres Freund.
This commit is contained in:
@@ -131,7 +131,7 @@ libpqrcv_identify_system(TimeLineID *primary_tli)
|
||||
"the primary server: %s",
|
||||
PQerrorMessage(streamConn))));
|
||||
}
|
||||
if (PQnfields(res) < 4 || PQntuples(res) != 1)
|
||||
if (PQnfields(res) < 3 || PQntuples(res) != 1)
|
||||
{
|
||||
int ntuples = PQntuples(res);
|
||||
int nfields = PQnfields(res);
|
||||
@@ -140,7 +140,7 @@ libpqrcv_identify_system(TimeLineID *primary_tli)
|
||||
ereport(ERROR,
|
||||
(errmsg("invalid response from primary server"),
|
||||
errdetail("Could not identify system: got %d rows and %d fields, expected %d rows and %d or more fields.",
|
||||
ntuples, nfields, 4, 1)));
|
||||
ntuples, nfields, 3, 1)));
|
||||
}
|
||||
primary_sysid = PQgetvalue(res, 0, 0);
|
||||
*primary_tli = pg_atoi(PQgetvalue(res, 0, 1), 4, 0);
|
||||
|
||||
Reference in New Issue
Block a user