diff --git a/src/backend/utils/cache/relcache.c b/src/backend/utils/cache/relcache.c index f6520a0..733860c 100644 --- a/src/backend/utils/cache/relcache.c +++ b/src/backend/utils/cache/relcache.c @@ -2166,9 +2166,9 @@ RelationClearRelation(Relation relation, bool rebuild) /* ... but actually, we don't have to update newrel->rd_rel */ memcpy(relation->rd_rel, newrel->rd_rel, CLASS_TUPLE_SIZE); /* preserve old tupledesc and rules if no logical change */ - if (keep_tupdesc) + if (!keep_tupdesc) SWAPFIELD(TupleDesc, rd_att); - if (keep_rules) + if (!keep_rules) { SWAPFIELD(RuleLock *, rd_rules); SWAPFIELD(MemoryContext, rd_rulescxt);