Re: [PATCH] Fix for bug #19474: LIKE fails to match literal backslashes with nondeterministic collations

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Nitin Motiani <nitinmotiani(at)google(dot)com>
Cc: Ewan Young <kdbase(dot)hack(at)gmail(dot)com>, Zsolt Parragi <zsolt(dot)parragi(at)percona(dot)com>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: [PATCH] Fix for bug #19474: LIKE fails to match literal backslashes with nondeterministic collations
Date: 2026-07-03 21:33:13
Message-ID: 4161801.1783114393@sss.pgh.pa.us
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Nitin Motiani <nitinmotiani(at)google(dot)com> writes:
> I have updated the commit message. I also added another test for this
> scenario in v3.

I don't think this patch is ready. It is wasting code and cycles to
fix a nonexistent problem. We are working in a backend-safe encoding,
therefore it is not possible for one byte of a multibyte character to
match '\' (nor '_' nor '%'). So the existing logic that pays no
attention to multibyte boundaries is not wrong, and if it were then
the preceding loop that looks for the end of the literal-match
substring would also be wrong (as well as some hundreds of other
places that make similar assumptions).

This code does get consecutive-backslash cases wrong, and we need
to fix that, but we don't need to add complexity to fix something
that's not broken.

regards, tom lane

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Dmitry Fomin 2026-07-03 21:34:26 Re: [PATCH v1 0/7] Wait event timing and tracing instrumentation
Previous Message Dmitry Fomin 2026-07-03 20:26:42 Re: [PATCH v1 0/7] Wait event timing and tracing instrumentation