mirror of
https://github.com/postgres/postgres.git
synced 2025-06-30 21:42:05 +03:00
Must check indisready not just indisvalid when dumping from 9.2 server.
9.2 uses a kluge representation of "indislive"; we have to account for
that when examining pg_index. Simplest solution is to check indisready
for 9.0 and 9.1 as well; that's harmless though unnecessary, so it's
not worth making a version distinction for.
Fixes oversight in commit 683abc73df
,
as noted by Andres Freund.
This commit is contained in:
@ -4520,6 +4520,10 @@ getIndexes(Archive *fout, TableInfo tblinfo[], int numTables)
|
||||
resetPQExpBuffer(query);
|
||||
if (fout->remoteVersion >= 90000)
|
||||
{
|
||||
/*
|
||||
* the test on indisready is necessary in 9.2, and harmless in
|
||||
* earlier/later versions
|
||||
*/
|
||||
appendPQExpBuffer(query,
|
||||
"SELECT t.tableoid, t.oid, "
|
||||
"t.relname AS indexname, "
|
||||
@ -4540,7 +4544,7 @@ getIndexes(Archive *fout, TableInfo tblinfo[], int numTables)
|
||||
"i.indexrelid = c.conindid AND "
|
||||
"c.contype IN ('p','u','x')) "
|
||||
"WHERE i.indrelid = '%u'::pg_catalog.oid "
|
||||
"AND i.indisvalid "
|
||||
"AND i.indisvalid AND i.indisready "
|
||||
"ORDER BY indexname",
|
||||
tbinfo->dobj.catId.oid);
|
||||
}
|
||||
|
Reference in New Issue
Block a user