Thread: pg_dump is not backwards compatible in PG12
PG 12 bumped the pg_backup_archiver version to 1.14, however this version is not supported in past versions of pg_backup_archiver, resulting in restores to earlier versions not working.
- Supported pg_backup_archiver versions in 12: https://github.com/postgres/postgres/blob/REL_12_0/src/bin/pg_dump/pg_backup_archiver.h#L77-L103
The following steps will reproduce the error:
1. pg_dump on a 12.1 database
2. pg_restore to a postgres db on a version < 12 (in my case 9.6). The error: `pg_restore: [archiver] unsupported version (1.14) in file header`
- Supported versions in 11: https://github.com/postgres/postgres/blob/REL_11_STABLE/src/bin/pg_dump/pg_backup_archiver.h#L77-L102
The following steps will reproduce the error:
1. pg_dump on a 12.1 database
2. pg_restore to a postgres db on a version < 12 (in my case 9.6). The error: `pg_restore: [archiver] unsupported version (1.14) in file header`
Questions/observations:
1. Is it expected that pg_dump will produce backwards incompatible dumps? If so, is this documented somewhere?
2. The release notes don't mention this at all as far as I could see. Should they?
3. Should this be a bug? This is the first backwards incompatibility in pg_dump (that I can see) since 9.6
1. Is it expected that pg_dump will produce backwards incompatible dumps? If so, is this documented somewhere?
2. The release notes don't mention this at all as far as I could see. Should they?
3. Should this be a bug? This is the first backwards incompatibility in pg_dump (that I can see) since 9.6
Thanks,
Vera Johne
Vera Gangeskar Johne <vjohne@salesforce.com> writes: > PG 12 bumped the pg_backup_archiver version to 1.14, however this version > is not supported in past versions of pg_backup_archiver, resulting in > restores to earlier versions not working. Yup. Use a newer version of pg_restore. > 1. Is it expected that pg_dump will produce backwards incompatible dumps? It's happened before, and it will happen again, no doubt. > 2. The release notes don't mention this at all as far as I could see. > Should they? Possibly. In practice, backwards-incompatibility of the SQL contained in the dump is a bigger issue most of the time than the dump file format proper, and there are issues of that sort in almost every major release. > 3. Should this be a bug? No. It's impractical to freeze that file format, because we keep adding new things that pg_dump has to deal with (as the version history you found shows). Maybe it could've been designed to be more extension-friendly, but such a redesign would itself be backwards-incompatible. regards, tom lane