Re: Proposal: Conflict log history table for Logical Replication - Mailing list pgsql-hackers

From Dilip Kumar
Subject Re: Proposal: Conflict log history table for Logical Replication
Date
Msg-id CAFiTN-u742n8OgykeLEF-kyp7L7CvYVOHRQj5iG0gntv2DYBtg@mail.gmail.com
Whole thread
In response to Re: Proposal: Conflict log history table for Logical Replication  (Amit Kapila <amit.kapila16@gmail.com>)
Responses Re: Proposal: Conflict log history table for Logical Replication
Re: Proposal: Conflict log history table for Logical Replication
Re: Proposal: Conflict log history table for Logical Replication
List pgsql-hackers
On Sat, Oct 3, 2026 at 2:11 AM Amit Kapila <amit.kapila16@gmail.com> wrote:
>
> On Sun, Sep 27, 2026 at 11:32 PM Dilip Kumar <dilipbalaut@gmail.com> wrote:
> >
> > There is one issue with the patch, the problem is that for some data
> > type index operator class type is different than actual table column
> > type,
> >
>
> Can you please share the test case as well showing this problem? We
> may even want to include that in the regression tests for this patch.

Here is the failed test case

 -- On Publisher:
    CREATE TABLE tab_temporal (
        id int4range,
        valid_at datemultirange,
        PRIMARY KEY (id, valid_at WITHOUT OVERLAPS)
    );
    INSERT INTO tab_temporal VALUES ('[1,2)', '{[2020-01-01,2021-01-01)}');
    CREATE PUBLICATION pub_temporal FOR TABLE tab_temporal;

    -- On Subscriber:
    CREATE TABLE tab_temporal (
        id int4range,
        valid_at datemultirange,
        PRIMARY KEY (id, valid_at WITHOUT OVERLAPS)
    );
    CREATE SUBSCRIPTION sub_temporal
        CONNECTION '...'
        PUBLICATION pub_temporal
        WITH (conflict_log_destination = 'table');

    -- After initial sync, delete the row locally on the subscriber:
    DELETE FROM tab_temporal;

    -- Then delete the row on the publisher to trigger a
delete_missing conflict:
    DELETE FROM tab_temporal;

And without fix shared as a v77-0003 [1], this would error out with
below error[2], I have explained the reason [1].  I have added a
testcase in 035_conflicts.pl file in v79-0003 patch for this issue.

[1] https://www.postgresql.org/message-id/CAFiTN-tfTqUbrMR2evE5H-wN3LQGgyDng-%3D3K%3DpJ%2Bsp%2BdAM5Hw%40mail.gmail.com

[2]
026-09-27 05:06:20.628 UTC [1278913] ERROR:  type 4535 is not a range type
2026-09-27 05:06:20.628 UTC [1278913] CONTEXT:  processing remote data
for replication origin "pg_16421" during message type "DELETE" for
replication target relation "public.tab_temporal" in transaction 674,
finished at 0/0179A648
2026-09-27 05:06:20.629 UTC [1277497] LOG:  background worker "logical
replication apply worker" (PID 1278913) exited with exit code 1

--
Regards,
Dilip Kumar
Google

Attachment

pgsql-hackers by date:

Previous
From: Manu
Date:
Subject: Re: BUG #19686: Rolling back SET TABLESPACE
Next
From: Hannu Krosing
Date:
Subject: Re: [PATCH] Refactor pgbench to make future improvements easier