Free pre-modification HeapTuple in ALTER TABLE ... TYPE ...
This was an oversight in commit 3b174b1a3
.
Per offline gripe from Alvaro Herrera
Backpatch to release 11.
This commit is contained in:
parent
05eb923eae
commit
89d52b9a3e
|
@ -9747,6 +9747,7 @@ ATExecAlterColumnType(AlteredTableInfo *tab, Relation rel,
|
|||
Datum valuesAtt[Natts_pg_attribute];
|
||||
bool nullsAtt[Natts_pg_attribute];
|
||||
bool replacesAtt[Natts_pg_attribute];
|
||||
HeapTuple newTup;
|
||||
|
||||
MemSet(valuesAtt, 0, sizeof(valuesAtt));
|
||||
MemSet(nullsAtt, false, sizeof(nullsAtt));
|
||||
|
@ -9772,8 +9773,10 @@ ATExecAlterColumnType(AlteredTableInfo *tab, Relation rel,
|
|||
replacesAtt[Anum_pg_attribute_attmissingval - 1] = true;
|
||||
nullsAtt[Anum_pg_attribute_attmissingval - 1] = false;
|
||||
|
||||
heapTup = heap_modify_tuple(heapTup, RelationGetDescr(attrelation),
|
||||
valuesAtt, nullsAtt, replacesAtt);
|
||||
newTup = heap_modify_tuple(heapTup, RelationGetDescr(attrelation),
|
||||
valuesAtt, nullsAtt, replacesAtt);
|
||||
heap_freetuple(heapTup);
|
||||
heapTup = newTup;
|
||||
attTup = (Form_pg_attribute) GETSTRUCT(heapTup);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue