Fix possible Assert failure in verify_compact_attribute() Sometimes the TupleDesc used in verify_compact_attribute() is shared among backends, and since CompactAttribute.attcacheoff gets updated during tuple deformation, it was possible that another backend would set attcacheoff on a given CompactAttribute in the small window of time from when the attcacheoff from the live CompactAttribute was being set in the 'tmp' CompactAttribute and before the Assert verifying that the live and tmp CompactAttributes matched.
Here we adjust the code to make a copy of the live CompactAttribute so that we're not trying to Assert against a shared copy of it. Author: David Rowley <dgrowle...@gmail.com> Reported-by: Alexander Lakhin <exclus...@gmail.com> Discussion: https://postgr.es/m/7195e408-758c-4031-8e61-4f842c716...@gmail.com Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/33b06a20016d8dd8dbdc1f6d6a9d79477c1104c5 Modified Files -------------- src/backend/access/common/tupdesc.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-)