For 11 only, put back heap_expand_tuple to GetTupleForTrigger().
This is not necessary anymore after 297d627e
, but extensions that have
not been recompiled after the fix will not use the new definition of
heap_getattr(). While recompiling those extensions is obviously the
suggested course, it's cheap enough to retain the expansion in
GetTupleForTrigger().
Per suggestion from Andrew Gierth.
Discussion: 87va1x43ot.fsf@news-spur.riddles.org.uk
This commit is contained in:
parent
35afccaba6
commit
920311ab18
|
@ -3396,7 +3396,15 @@ ltrmark:;
|
||||||
LockBuffer(buffer, BUFFER_LOCK_UNLOCK);
|
LockBuffer(buffer, BUFFER_LOCK_UNLOCK);
|
||||||
}
|
}
|
||||||
|
|
||||||
result = heap_copytuple(&tuple);
|
/*
|
||||||
|
* While this is not necessary anymore after 297d627e, as a defense
|
||||||
|
* against C code that has not recompiled for minor releases after the
|
||||||
|
* fix, continue to expand the tuple.
|
||||||
|
*/
|
||||||
|
if (HeapTupleHeaderGetNatts(tuple.t_data) < relation->rd_att->natts)
|
||||||
|
result = heap_expand_tuple(&tuple, relation->rd_att);
|
||||||
|
else
|
||||||
|
result = heap_copytuple(&tuple);
|
||||||
ReleaseBuffer(buffer);
|
ReleaseBuffer(buffer);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
|
|
Loading…
Reference in New Issue