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