| From: | kedar anavardekar <kedar(dot)anavardekar(at)gmail(dot)com> |
|---|---|
| To: | Zhijie Hou <houzhijie22(at)gmail(dot)com> |
| Cc: | Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Paul A Jungwirth <pj(at)illuminatedcomputing(dot)com>, Nisha Moond <nisha(dot)moond412(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Andres Freund <andres(at)anarazel(dot)de>, Peter Eisentraut <peter(at)eisentraut(dot)org> |
| Subject: | Re: Fix WITHOUT OVERLAPS multirange with location replication |
| Date: | 2026-10-12 11:10:20 |
| Message-ID: | CAJZSXGrYQsv8VpDXLY-Mq1Dt+FFLRMO9dZDO_g2XpeRkHjHr5g@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hi Zhijie Hou,
Thank you for the patches,
I built and tested the patches locally, and they work as expected.
> I think that instead of building a bitmap and passing it to tuples_equal(), we
> can write a new helper function that directly traverses the index columns in
> the slot and compares each of them, similar to what identity_key_equal() does
> in pg_repack. I think that's a more standard approach, because we can use the
> index's opclass equality function and collation for the comparison rather than
> reusing the table attributes'. It is also more efficient, since it avoids
> building a new bitmap and avoids the typecache lookup. It may not show a
> performance difference, but I feel it's worth doing better in a common code
> path (update/delete replay) like this one.
+1
> The same issue exists on HEAD as well for the update_deleted detection code
> path. I tried writing a patch to replace the update_deleted code path first in
> 0001 (since it's an existing issue, I've kept it in a separate patch for now to
> make it easier to review; we can merge the two patches and commit them together
> later if we agree). 0001 includes a test for the collation inconsistency issue.
>
> And I rebased the WITHOUT OVERLAPS fix on top of it, modifying it to use the
> new approach for tuple comparison and slightly adjusting some commit messages
> and comments.
>
> I'm sharing both patches here since both touch the same code path
> and overlap. Hope it helps move the thread forward.
v30001 +v30002 LGTM.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | David Rowley | 2026-10-12 11:35:31 | Re: Reducing relcache memory usage: deduping index shapes |
| Previous Message | Shubhankar Anand Kulkarni | 2026-10-12 10:41:03 | PG19: flat-copied RelOptInfos share extension_state with the original rel |