Hi,

On Thu, Sep 17, 2026 at 6:42 AM Ayush Tiwari
<[email protected]> wrote:
>
> Hi,
>
> On Thu, 17 Sept 2026 at 18:22, Hayato Kuroda (Fujitsu)
> <[email protected]> wrote:
> > Thanks for the quick update. Let me dump my thought in [1] just in case.
> > Some tests may be needed (no need to include in core though).
>
> I used a separate publisher/subscriber test covering both commit and
> rollback. It confirmed that the cache usage stays flat with the cleanup,
> I too dont think this explicitly warrants a core test.
>
> > > I've moved cleanup_rel_sync_cache(txn->xid, true) to
> > > pgoutput_stream_prepare_txn() in v2 and updated the comments.
> >
> > I think the second argument should be renamed. Do you have anything in your 
> > mind?
> > My idea: mark_schema_sent.
>
> Thanks for the suggestion. I initially thought of set_schema_sent, but
> mark_schema_sent sounds better. I've used that in v3 and updated the nearby
> comments.
>
> > [1]:
> > IIUC pgoutput_commit_prepared_txn() and pgoutput_rollback_prepared_txn() 
> > are used
> > for both streamed and non-streamed cases. So putting the cleanup for 
> > streamed
> > transactions should be in pgoutput_stream_prepare_txn() as much as  
> > possible.
> >
> > The main question here is whether we pass true or false for is_commit. I 
> > think
> > true can be used, because no need to re-send RELATION messages once it's 
> > handled
> > by the subscriber side.
> >
> > For streaming = on case, an apply worker firstly serialize streamed 
> > changes, then
> > it applies them when STREAM COMMIT or STREAM PREPARE are received. It means
> > RELATION messages have already handled in PREPARE phase.
> >
> > For streaming = parallel case, both leader and parallel apply worker handle
> > RELATION messages immediately.
>
> Thanks for the analysis.
>
> Attached v3 with changes.

Thank you for the report and making the patch!

I agree with the analysis and the fix. I've reviewed the v3 patch and
it looks good to me. IIUC this bug leads to not behavioral problems
but to memory leaks. I think we can push it without tests. I'm going
to push it (including back branches), barring any objections.

Regards,

--
Masahiko Sawada
Amazon Web Services: https://aws.amazon.com


Reply via email to