On Jul 7, 2008, at 12:13, Zdenek Kotala wrote: > I'm sorry. I meant bttext() http://doxygen.postgresql.org/varlena_8c-source.html#l01270 > > bttext should use in citextcmp function. It uses strcol function. I've no idea what bttext has to do with anything. Sorry if I'm being slow here. > And citext_eq should be implemented as texteq: > > http://doxygen.postgresql.org/varlena_8c-source.html#l01164 > > I'm sorry for confusion I'm exchange bttext and varstr_cmp. :( Okay, I see that text_cmp() uses varstr_cmp(): http://doxygen.postgresql.org/varlena_8c-source.html#l01139 While texteq() and textne() use strncmp(): http://doxygen.postgresql.org/varlena_8c-source.html#l01164 http://doxygen.postgresql.org/varlena_8c-source.html#l01187 The other operator functions, like text_lt(), use text_cmp() and therefore varstr_cmp(): http://doxygen.postgresql.org/varlena_8c-source.html#01210 My question is: why? Shouldn't they all use the same function for comparison? I'm happy to dupe this implementation for citext, but I don't understand it. Should not all comparisons be executed consistently? Thanks, David
pgsql-hackers by date:
Соглашаюсь с условиями обработки персональных данных