Re: BUG #5478: ILIKE operator returns wrong result

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: BUG #5478: ILIKE operator returns wrong result
Дата
Msg-id 26362.1275061868@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: BUG #5478: ILIKE operator returns wrong result  (Bruce Momjian <bruce@momjian.us>)
Ответы Re: BUG #5478: ILIKE operator returns wrong result  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
Bruce Momjian <bruce@momjian.us> writes:
> Tom Lane wrote:
>> If tlen == 0 when we reach this loop, we'll fall through and fail.
>> But that is wrong since we need to consider the possibility that
>> the remaining pattern can match a zero-length substring.  So the
>> loop needs to be changed to attempt a recursive MatchText for
>> tlen equal to zero as well as greater than zero.

> I took a different approach.  I think the problem is that we check for
> end of pattern without consuming '%' patterns.  I copied that consume
> loop from code above that where we also test for end of pattern.

> With the attached patch (which includes a regression test addition), it
> works fine:

No, that patch is just plain wrong.  It eats %'s that would affect
the later recursive MatchText calls.

            regards, tom lane

В списке pgsql-bugs по дате отправления:

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: BUG #5478: ILIKE operator returns wrong result
Следующее
От: Tom Lane
Дата:
Сообщение: Re: BUG #5478: ILIKE operator returns wrong result