Thread

  1. Re: Proposal: Conflict log history table for Logical Replication

    Dilip Kumar <dilipbalaut@gmail.com> — 2025-12-15T11:41:06Z

    On Mon, Dec 15, 2025 at 2:55 PM Dilip Kumar <dilipbalaut@gmail.com> wrote:
    >
    > > 3)
    > > postgres=# alter subscription sub1 set (conflict_log_table=NULL);
    > > ALTER SUBSCRIPTION
    > > postgres=# alter subscription sub2 set (conflict_log_table=create);
    > > ALTER SUBSCRIPTION
    > > postgres=# \d
    > >          List of relations
    > >  Schema |  Name   | Type  | Owner
    > > --------+---------+-------+--------
    > >  public | create  | table | shveta
    > >  public | null    | table | shveta
    > >
    > >
    > > It takes reserved keywords and creates tables with those names. It
    > > should be restricted.
    >
    > I somehow assume table creation will be restricted with these names,
    > but since we switch from SPI to internal interface its not true
    > anymore, need to see how we can handle this.
    
    While thinking more on this, I was seeing other places where we use
    'heap_create_with_catalog()' so I noticed that we always use the
    internally generated name, so wouldn't it be nice to make the conflict
    log table as bool and use internally generated name something like
    conflict_log_table_$subid$ and we will always create that in current
    active searchpath?  Thought?
    
    -- 
    Regards,
    Dilip Kumar
    Google