diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2010-01-19 18:39:19 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2010-01-19 18:39:19 +0000 |
commit | 16f2eadfab75c94da1be1803512c204b248da974 (patch) | |
tree | d10341cdfb7496f738db2c0fb11e447d9f394b1f /src/backend/access/gist/gistxlog.c | |
parent | 85b587c259cae5f058019797243e38271ef7158d (diff) | |
download | postgresql-16f2eadfab75c94da1be1803512c204b248da974.tar.gz postgresql-16f2eadfab75c94da1be1803512c204b248da974.zip |
When doing a parallel restore, we must guard against out-of-range dependency
dump IDs, because the array we're using is sized according to the highest
dump ID actually defined in the archive file. In a partial dump there could
be references to higher dump IDs that weren't dumped. Treat these the same
as references to in-range IDs that weren't dumped. (The whole thing is a
bit scary because the missing objects might have been part of dependency
chains, which we won't know about. Not much we can do though --- throwing
an error is probably overreaction.)
Also, reject parallel restore with pre-1.8 archive version (made by pre-8.0
pg_dump). In these old versions the dependency entries are OIDs, not dump
IDs, and we don't have enough information to interpret them.
Per bug #5288 from Jon Erdman.
Diffstat (limited to 'src/backend/access/gist/gistxlog.c')
0 files changed, 0 insertions, 0 deletions