diff options
-rw-r--r-- | src/backend/utils/cache/relcache.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/backend/utils/cache/relcache.c b/src/backend/utils/cache/relcache.c index e0616b45a2f..ec9e20320d2 100644 --- a/src/backend/utils/cache/relcache.c +++ b/src/backend/utils/cache/relcache.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/cache/relcache.c,v 1.230.2.1 2005/11/22 18:23:23 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/utils/cache/relcache.c,v 1.230.2.2 2006/01/19 00:27:27 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1786,8 +1786,6 @@ RelationCacheInvalidate(void) } } - rebuildList = list_concat(rebuildFirstList, rebuildList); - /* * Now zap any remaining smgr cache entries. This must happen before we * start to rebuild entries, since that may involve catalog fetches which @@ -1796,6 +1794,12 @@ RelationCacheInvalidate(void) smgrcloseall(); /* Phase 2: rebuild the items found to need rebuild in phase 1 */ + foreach(l, rebuildFirstList) + { + relation = (Relation) lfirst(l); + RelationClearRelation(relation, true); + } + list_free(rebuildFirstList); foreach(l, rebuildList) { relation = (Relation) lfirst(l); |