Thread

  1. Re: Fix bug of UPDATE/DELETE FOR PORTION OF with inheritance tables

    Paul A Jungwirth <pj@illuminatedcomputing.com> — 2026-05-25T23:01:31Z

    On Fri, May 8, 2026 at 10:48 PM Chao Li <li.evan.chao@gmail.com> wrote:
    >
    > > On May 7, 2026, at 11:40, Chao Li <li.evan.chao@gmail.com> wrote:
    > > After looking into the code, I found that leftover row insertion only considers the partitioned-table case, where leftovers need to be inserted through the root relation for partition routing. Plain inheritance is different, leftover rows should be inserted back into the actual child relation.
    > >
    > > While debugging this, I also noticed another issue around mapping the range column’s attnum. In multiple-inheritance cases, the range column’s attnum in a child table may be different from the one in its parent, so we need to use the child’s actual attnum.
    > >
    > > Please see the attached patch for the fix details and the new tests. Since I believe this bug was introduced in 19, I’m going to add it to the open items.
    > >
    > > Best regards,
    > > --
    > > Chao Li (Evan)
    > > HighGo Software Co., Ltd.
    > > https://www.highgo.com/
    > >
    > >
    > >
    > >
    > > <v1-0001-Fix-FOR-PORTION-OF-leftovers-for-inheritance-chil.patch>
    >
    > Merged into [1].
    >
    > [1] https://postgr.es/m/CAHg+QDcd=t69gLf9yQexO07EJ2mx0Z70NFHo6h94X1EDA=hM0g@mail.gmail.com
    
    Here is a new patch for this. I don't think it makes sense to combine
    it with the other fix anymore.
    
    Per [1], we are now checking for UPDATE permission on the FOR PORTION
    OF column, so most of that other patch went away, and the fix here can
    be done independently. That's what v2 here does. I didn't really
    change anything from the v12-0002 patch on that other thread, except
    for moving some tests into the other patch (since they had nothing to
    do with traditional inheritance). The patch here now passes, whether
    applied to master directly or applied on top of v13 from the
    updatedCols fix. (Combining them will give a rebase conflict in the
    test files, but it's pretty trivial to fix.)
    
    [1] https://www.postgresql.org/message-id/CA%2BrenyXyLfvtvVv--hGWGTgzFP%3D-%2BdPLy4RWvEmioAPyJMM%2Buw%40mail.gmail.com
    
    Yours,
    
    -- 
    Paul              ~{:-)
    pj@illuminatedcomputing.com