]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Fix assign_record_type_typmod().
authorJeff Davis <jdavis@postgresql.org>
Fri, 9 Jul 2021 21:15:48 +0000 (14:15 -0700)
committerJeff Davis <jdavis@postgresql.org>
Sat, 10 Jul 2021 17:28:15 +0000 (10:28 -0700)
commit5b1621d2fb736bcec58114faf035e6ad9bd64a1d
treefa89c7b7fbb4971237f84f8e560da3ca3a0d1fd6
parent03fc042eb628759d1009c28e81aae776ed9358a2
Fix assign_record_type_typmod().

If an error occurred in the wrong place, it was possible to leave an
unintialized entry in the hash table, leading to a crash. Fixed.

Also, be more careful about the order of operations so that an
allocation error doesn't leak memory in CacheMemoryContext or
unnecessarily advance NextRecordTypmod.

Backpatch through version 11. Earlier versions (prior to 35ea75632a5)
do not exhibit the problem, because an uninitialized hash entry
contains a valid empty list.

Author: Sait Talha Nisanci <Sait.Nisanci@microsoft.com>
Reviewed-by: Andres Freund
Discussion: https://postgr.es/m/HE1PR8303MB009069D476225B9A9E194B8891779@HE1PR8303MB0090.EURPRD83.prod.outlook.com
Backpatch-through: 11
src/backend/utils/cache/typcache.c