Re: Re: LDAP case insensitive search

От: Vladimir A. Butenko <CGatePro_at_mx_ru>
Дата: Fri 29 Apr 2005 - 08:47:16 MSD

On Fri, 29 Apr 2005 11:33:09 +0700
  "Victor Sudakov" <CGatePro@mx.ru> wrote:

> Andrey G. Sergeev (AKA Andris) wrote:

>>
>> >> Как сделать, чтобы CGP LDAP сервер считал
>> >> 'cn=*иванов*', 'cn=*Иванов*' и 'cn=*ИВАНОВ*'
>> >> одинаковыми запросами?
>>
>> VAB> Пока - никак. Таблицы lowercase/uppercase для экзотических языков
>> VAB> (вроде русского) в CGatePro нету. Пока.
>>
>> Ничего себе экзотический язык... :-E
>
> В каждой шутке есть доля шутки. А если серьезно

А я более чем серьезно. В японском-китайском uppercase/lowercase нет, а все остальные распространенные языки вполне себе удовлетворяются простым ASCII приведением A-Z в a-z. Проблемы возникают только с умляутами, но их немного. А языки на кирилице - естественно, экзотика.

> действительно для реализации caseIgnoreMatch нужно запихивать в CGP по
> таблице на каждый язык?  Я думал, что в unicode это сделано как-то
> изящнее.

Нет, таблица на язык, конечно, не нужна. Там внутри всё хранится в UTF-8, так что нужна просто "таблица" для Unicode по переводу uppercase в lowecase. Но там не так всё просто, увы. Мы уже тут посмотрели на это дело: там некоторые символы переводятся в два, например. То есть сравнение двух строк становится операцией сугубо нетривиальной, а, значит, медленной.

В общем, будем, решение искать, но как понимаете, решение для кирилических символов, от которого будут страдать все не стольк экзотические пользователи - вряд ли подойдет.   

> В исходниках slapd рыться лень, но если мне покажут там кучу локалей > для разных языков, я буду сильно удивлен.

Если Вас устраивает скорость, с которой slapd ищет по неиндексированному полю - то оно, конечно, хорошо.

> А сделать это надо, потому что поиск в атрибуте name и его производных
> согласно стандарту таки должен быть case insensitive.
> 
> -- 
> Victor Sudakov,  VAS4-RIPE, VAS47-RIPN

Sincerely,
Vladimir Получено Fri Apr 29 04:46:55 2005

Этот архив был сгенерирован hypermail 2.1.8 : Tue 21 Feb 2006 - 03:16:18 MSK