RE: memory leak in logical WAL sender with pgoutput's cachectx

From: "Hayato Kuroda (Fujitsu)" <kuroda(dot)hayato(at)fujitsu(dot)com>
To: 'Xuneng Zhou' <xunengzhou(at)gmail(dot)com>
Cc: 赵宇鹏(宇彭) <zhaoyupeng(dot)zyp(at)alibaba-inc(dot)com>, pgsql-hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: RE: memory leak in logical WAL sender with pgoutput's cachectx
Date: 2025-08-14 12:49:23
Message-ID: OSCPR01MB14966A4407EDF6111B5E49485F535A@OSCPR01MB14966.jpnprd01.prod.outlook.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Dear Xuneng,

> Is it safe to free the substructure from within rel_sync_cache_relation_cb()?

You referred the comment in rel_sync_cache_relation_cb() right? I understood like
that we must not access to any *system caches*, from the comment. Here we do not
re-build caches so that we do not access to the syscaches - it is permitted.
I'm happy if you also confirm the point.

> I’ also interested in the reasoning behind setting
> NINVALIDATION_THRESHOLD to 100.

This is the debatable point of this implementation. I set to 100 because it was
sufficient with the provided workload, but this may cause the replication lag.
We may have to consider a benchmark workload, measure data, and consider the
appropriate value. 100 is just an initial point.

Best regards,
Hayato Kuroda
FUJITSU LIMITED

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Heikki Linnakangas 2025-08-14 13:10:32 Re: BackendKeyData is mandatory?
Previous Message Ashutosh Bapat 2025-08-14 12:44:29 Re: Improve pg_sync_replication_slots() to wait for primary to advance