Re: SnapBuildSerialize function forgot pfree variable ondisk_c
Amit Kapila <amit.kapila16@gmail.com>
From: Amit Kapila <amit.kapila16@gmail.com>
To: 范孝剑(康贤) <funnyxj.fxj@alibaba-inc.com>
Cc: pgsql-bugs <pgsql-bugs@lists.postgresql.org>
Date: 2020-11-06T03:22:19Z
Lists: pgsql-bugs
On Thu, Nov 5, 2020 at 2:06 PM 范孝剑(康贤) <funnyxj.fxj@alibaba-inc.com> wrote: > > Hi all, > When I tested logical decoding, I found that walsender process memory usage grow very high, by debugging, I found SnapBuildSerialize palloc memory for variable ondisk_c, but don't pfree it at last. > By looking at code, it is clear that it is good to free the memory allocated for variable ondisk_c. > So when master LogStandbySnapshot() too frequently, walsender memory will grow very high and OOM finally. > Is there any particular scenario where you are seeing this behavior? Do you have any reproducible test case? Have you confirmed that after freeing that memory your problem is solved? It is not clear to me why other users of Logical Replication are not facing this issue? -- With Regards, Amit Kapila.
Commits
-
Fix memory leak in SnapBuildSerialize.
- 4bccceaa9179 9.5.25 landed
- f2b268ee0626 9.6.21 landed
- 636b6f99c215 10.16 landed
- 7adc408f4b64 11.11 landed
- 0b2ae3c928b2 12.6 landed
- 0685c5c1b922 13.2 landed
- ee1b38f65948 14.0 landed