| From: | Zhijie Hou <houzhijie22(at)gmail(dot)com> |
|---|---|
| To: | Nisha Moond <nisha(dot)moond412(at)gmail(dot)com> |
| Cc: | Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Paul A Jungwirth <pj(at)illuminatedcomputing(dot)com>, kedar anavardekar <kedar(dot)anavardekar(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-19 02:52:26 |
| Message-ID: | CAFvd2n8-fSuD9BxtB3akEK4YyNZzuC898i-TFSBa+2y6dYucww@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Hi,
On Fri, Oct 16, 2026 at 2:57 PM Nisha Moond <nisha(dot)moond412(at)gmail(dot)com> wrote:
>
> Thanks for updated patches. The fix looks good to me. A few comments:
>
> 1) v5_PG18-0001: the commit message mentions
> RelationFindDeletedTupleInfoByIndex() and the update_deleted vs
> update_missing case, but it doesn't apply to PG18. Maybe that part
> could be dropped.
Thanks for the comments.
I added a general statement that update_delete changes
only apply to PG19 for now.
>
> A couple of nits, please consider if they make sense:
>
> 2) The updated header comment of RelationFindReplTupleByIndex() reads
> a bit confusing to me, how about something like:
>
> * 'skipduplicates' specifies whether the first matching tuple can be used
> * without comparing it against 'searchslot', unless the index scan sets
> * xs_recheck (as with a lossy GiST index for WITHOUT OVERLAPS), in which case
> * only the index key columns are compared, using the index's own equality
> * semantics. If false, all matching tuples are compared against 'searchslot',
> * which must contain a complete row.
Changed as suggested.
>
> 3) 035_conflicts.pl:
> +ok( $node_A->poll_query_until(
> + 'postgres',
> + "SELECT xmin::text = '$pinned_xid' FROM
> pg_replication_slots WHERE slot_name 'pg_conflict_detection'"
> + ),
>
> Should we use "xmin::text::bigint = $pinned_xid" here, to match the
> other slot xmin checks in the same file?
I changed to xmin = $pinned_xid as equality does not need type
conversion.
Please see the updated patch set.
Best Regards,
Zhijie Hou
| Attachment | Content-Type | Size |
|---|---|---|
| v6_PG18-0001-Fix-logical-replication-with-multirange-WITH.patch | application/octet-stream | 8.4 KB |
| v6_PG19-0001-Fix-logical-replication-with-multirange-WITH.patch | application/octet-stream | 13.5 KB |
| v6-0001-Fix-logical-replication-with-multirange-WITHOUT-O.patch | application/octet-stream | 13.5 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Sho Ito | 2026-10-19 03:02:17 | [PATCH v1] Fix tab completion for DROP INDEX CONCURRENTLY |
| Previous Message | Richard Guo | 2026-10-19 02:13:04 | Re: Assert failure in create_lateral_join_info |