pgoutput: Fix memory leak due to RelationSyncEntry.map.
authorAmit Kapila
Tue, 1 Jun 2021 08:55:19 +0000 (14:25 +0530)
committerAmit Kapila
Tue, 1 Jun 2021 08:55:19 +0000 (14:25 +0530)
commitd2505681211b4803cae916e9f4c2331943f851dc
treeff229f8eec641038d745260dad48aabcd4c78e31
parente2f21ff606dae2f7f7a9e323a88c99b464d2f787
pgoutput: Fix memory leak due to RelationSyncEntry.map.

Release memory allocated when creating the tuple-conversion map and its
component TupleDescs when its owning sync entry is invalidated.
TupleDescs must also be freed when no map is deemed necessary, to begin
with.

Reported-by: Andres Freund
Author: Amit Langote
Reviewed-by: Takamichi Osumi, Amit Kapila
Backpatch-through: 13, where it was introduced
Discussion: https://postgr.es/m/MEYP282MB166933B1AB02B4FE56E82453B64D9@MEYP282MB1669.AUSP282.PROD.OUTLOOK.COM
src/backend/replication/pgoutput/pgoutput.c
src/test/subscription/t/013_partition.pl