postgres.git / summary / log / commit / refs
commit c54e4a55f4688bee23d3170aff1d82e7c2c2414f
Author: Robert Haas <rhaas@postgresql.org>
Date: Fri Jul 21 16:48:22 2017 +0000
First released in: 10.0, 9.5.8, 9.6.4
pg_rewind: Fix busted sanity check.
As written, the code would only fail the sanity check if none of the
columns returned by the server were of the expected type, but we want
it to fail if even one column is not of the expected type.
Discussion: http://postgr.es/m/CA+TgmoYuY5zW7JEs+1hSS1D=V5K8h1SQuESrq=bMNeo0B71Sfw@mail.gmail.com
src/bin/pg_rewind/libpq_fetch.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/bin/pg_rewind/libpq_fetch.c b/src/bin/pg_rewind/libpq_fetch.c
index 5683eeccdc1..3c8df288bf2 100644
--- a/src/bin/pg_rewind/libpq_fetch.c
+++ b/src/bin/pg_rewind/libpq_fetch.c
@@ -270,8 +270,8 @@ receiveFileChunks(const char *sql)
if (PQnfields(res) != 3 || PQntuples(res) != 1)
pg_fatal("unexpected result set size while fetching remote files\n");
- if (PQftype(res, 0) != TEXTOID &&
- PQftype(res, 1) != INT4OID &&
+ if (PQftype(res, 0) != TEXTOID ||
+ PQftype(res, 1) != INT4OID ||
PQftype(res, 2) != BYTEAOID)
{
pg_fatal("unexpected data types in result set while fetching remote files: %u %u %u\n",
[parent: 72318eaedea5]