Re: Memory leak in WAL sender with pgoutput (v10~)
Amit Kapila <amit.kapila16@gmail.com>
From: Amit Kapila <amit.kapila16@gmail.com>
To: Masahiko Sawada <sawada.mshk@gmail.com>
Cc: "Zhijie Hou (Fujitsu)" <houzj.fnst@fujitsu.com>,
vignesh C <vignesh21@gmail.com>, Michael Paquier <michael@paquier.xyz>, Euler Taveira <euler@eulerto.com>, Alvaro Herrera <alvherre@alvh.no-ip.org>, Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2024-12-19T02:20:57Z
Lists: pgsql-hackers
On Wed, Dec 18, 2024 at 12:32 PM Masahiko Sawada <sawada.mshk@gmail.com> wrote: > > On Tue, Dec 17, 2024 at 2:48 AM Amit Kapila <amit.kapila16@gmail.com> wrote: > > > > > > Will fix_memory_leak_v3.patch avoid the leak in case of an ERROR in > > SQL API? If so, how? > > The pubctx is created as a child of LogicalDecodingContext->context. > On an error, the pubctx is cleaned up altogether when cleaning up > LogicalDecodingContext->context. > The difference between fix_memory_leak_v2 and fix_memory_leak_v3 is that the earlier one resets the pubctx to NULL along with freeing the context memory. Resetting a file-level global variable is a good idea, similar to what we do for RelationSyncCache, so I prefer v2 over v3, but I am fine if you would like to proceed with v3. -- With Regards, Amit Kapila.
Commits
-
Fix memory leak in pgoutput with relation attribute map
- a786cf04df76 13.19 landed
- c53d90bb47ae 14.16 landed
- da8bd5d424e0 15.11 landed
- e3a27fd06d06 16.7 landed
- 836435424ba8 17.3 landed
- c9b3d4909bbf 18.0 landed
-
Fix memory leak in pgoutput with publication list cache
- ba230ce40faa 13.19 landed
- cfd6cbcf9be0 14.16 landed
- 6c9b3975407d 15.11 landed
- 4d45e7490c41 16.7 landed
- bbe68c13abe0 17.3 landed
- f0c569d71515 18.0 landed
-
Allow specifying row filters for logical replication of tables.
- 52e4f0cd472d 15.0 cited