pg_basebackup fails on databases with high OIDs

From: Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>
To: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Cc: Magnus Hagander <magnus(at)hagander(dot)net>
Subject: pg_basebackup fails on databases with high OIDs
Date: 2020-01-06 08:07:26
Message-ID: dea47fc8-6c89-a2b1-07e3-754ff1ab094b@2ndquadrant.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

This is a new bug in PG12. When you have a database with an OID above
INT32_MAX (signed), then pg_basebackup fails thus:

pg_basebackup: error: could not get write-ahead log end position from
server: ERROR: value "3000000000" is out of range for type integer

The cause appears to be commit 6b9e875f7286d8535bff7955e5aa3602e188e436.

A possible fix is attached. An alternative to using
OidInputFunctionCall() would be exporting something like oidin_subr().

--
Peter Eisentraut http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Attachment Content-Type Size
0001-Fix-base-backup-with-database-OIDs-larger-than-INT32.patch text/plain 1.2 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2020-01-06 08:15:54 Re: pgbench - use pg logging capabilities
Previous Message Michael Paquier 2020-01-06 08:02:02 Re: Remove libpq.rc, use win32ver.rc for libpq