RE: [CAUTION: SUSPECT SENDER] RE: [CAUTION: SUSPECT SENDER] RE: BUG #19029: Replication Slot size keeps increasing while logical subscription works fine

Hayato Kuroda (Fujitsu) <kuroda.hayato@fujitsu.com>

From: "Hayato Kuroda (Fujitsu)" <kuroda.hayato@fujitsu.com>
To: 'Thadeus Anand' <thadeus@rmkv.com>
Cc: Amit Kapila <amit.kapila16@gmail.com>, "pgsql-bugs@lists.postgresql.org" <pgsql-bugs@lists.postgresql.org>, vignesh C <vignesh21@gmail.com>, Nantha kumar.T. <nanthad@gmail.com>
Date: 2025-08-27T03:39:31Z
Lists: pgsql-bugs
Dear Thadeus,

> I do not know or understand what a "spill" is.

As I wrote in a previous mail, logical decoding (and logical replication)
sometimes writes changes into the disk to avoid using too-much memory, and the
".spill" file is the fragment. This can happen when the total amount of decoded
changes exceeds logical_decoding_work_mem.

> I will look it up. But the tables that are part of the
> publication are not updated as part of any huge transaction. They may be part of some other
> long running procedures

Actually, logical decoding decodes all changes even if tables are not published,
and suppress outputting changes at commit phase. There was a proposal to skip
decoding such changes, it could not improve the performance though.

[1]: https://commitfest.postgresql.org/patch/5585/

Best regards,
Hayato Kuroda
FUJITSU LIMITED