Re: [PATCH] Fix for bug #19474: LIKE fails to match literal backslashes with nondeterministic collations - Mailing list pgsql-hackers

From Ewan Young
Subject Re: [PATCH] Fix for bug #19474: LIKE fails to match literal backslashes with nondeterministic collations
Date
Msg-id CAON2xHOJKPkcz8vkj7RVaE_U-3T_iVkj5Vwi0=d+Bg=VYiS_1A@mail.gmail.com
Whole thread
Responses Re: [PATCH] Fix for bug #19474: LIKE fails to match literal backslashes with nondeterministic collations
List pgsql-hackers
Hi,

I reviewed the v2 patch.

The patch applies cleanly on the current master (4cb2a9863d8). I built with
--enable-cassert and ICU, and confirmed that the three backslash test
cases give wrong results on unpatched master and the expected results
with the patch applied. The full regression suite passes (245/245),
including the updated collate.icu.utf8 test.

Two comments:

1. The commit message describes the symptom as "an incorrect match
failure", but the bug also causes incorrect matches in the other
direction. Since the unescaping logic dropped the literal backslash
from the pattern, a text *without* a backslash could wrongly match a
pattern that requires one:

    SELECT 'backslash' COLLATE ignore_accents LIKE 'back\\slash%';
    -- unpatched: t (wrong), patched: f (correct)

I think it's worth mentioning this false-positive side of the bug in
the commit message, since silently-too-permissive LIKE filters are
arguably the more dangerous symptom for applications.

2. A small typo in the new comment in like_match.c:
"occurences" should be "occurrences".

Best regards

On Fri, Jun 5, 2026 at 7:21 PM Nitin Motiani <nitinmotiani@google.com> wrote:
>
> Hi,
>
> I have created a commitfest entry for this patch here
> https://commitfest.postgresql.org/patch/6844/. Please take a look.
>
> Thanks,
> Nitin Motiani
> Google
>
>
>
>



pgsql-hackers by date:

Previous
From: Rafia Sabih
Date:
Subject: Re: postgres_fdw: Emit message when batch_size is reduced
Next
From: Nisha Moond
Date:
Subject: Re: Support EXCEPT for TABLES IN SCHEMA publications