From: | Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> |
---|---|
To: | Michael Paquier <michael(at)paquier(dot)xyz> |
Cc: | Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Postgres bugs <pgsql-bugs(at)lists(dot)postgresql(dot)org>, Ethan Mertz <ethan(dot)mertz(at)gmail(dot)com> |
Subject: | Re: Use-after-free in reorderbuffer.c for INSERT ON CONFLICT |
Date: | 2025-08-01 16:32:07 |
Message-ID: | CAD21AoD7=Lfzw5nkmkxCt6NurXpvPCqDV1c=QmWiC9zgOsH1tQ@mail.gmail.com |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
On Fri, Aug 1, 2025 at 4:45 AM Michael Paquier <michael(at)paquier(dot)xyz> wrote:
>
> On Fri, Aug 01, 2025 at 03:30:17PM +0530, Amit Kapila wrote:
> > I mean to say we can use the same change LSN both for
> > REORDER_BUFFER_CHANGE_INTERNAL_SPEC_CONFIRM and
> > REORDER_BUFFER_CHANGE_INTERNAL_SPEC_ABORT. Right now, for
> > REORDER_BUFFER_CHANGE_INTERNAL_SPEC_CONFIRM, we switch the change to
> > specinsert which would have a prior LSN value (say, if confirm/abort
> > record will have value, 1000, it will be 800 or so) but we should
> > still use 1000 for update_progress_txn. The update_progress_txn() is
> > helpful when such an insert is skipped by a plugin (in this case
> > pgouput) and in that case, we would require the latest LSN processed
> > by reorder buffer to pass to it. We use it to send a keep_alive to a
> > client with the last LSN processed.
>
> Ah, OK, I've missed your point then. It's kind of an optimization in
> itself because we would be a bit more aggressive with the updates, but
> I agree to do that in the scope of this fix. The updated attached
> uses prev_lsn for the job, for both the ABORT and CONFIRM cases,
> meaning a one-liner.
I assumed that behavior was intentional of the original patch but I'm
fine with the new version patch too if it's not.
Regards,
--
Masahiko Sawada
Amazon Web Services: https://aws.amazon.com
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2025-08-01 19:04:48 | Re: BUG #19000: gist index returns inconsistent result with gist_inet_ops |
Previous Message | Michael Paquier | 2025-08-01 11:45:10 | Re: Use-after-free in reorderbuffer.c for INSERT ON CONFLICT |