Re: Refactoring identifier checks to consistently usestrcmp

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема Re: Refactoring identifier checks to consistently usestrcmp
Дата
Msg-id 20170404035257.weshsv2fee474oif@alvherre.pgsql
обсуждение исходный текст
Ответы Re: Refactoring identifier checks to consistently use strcmp
Список pgsql-hackers
Daniel Gustafsson wrote:
> Testing DefElem options is done with both strcmp() and pg_strcasecmp() a bit
> mixed.  Since the option defnames are all lowercased, either via IDENT, keyword
> rules or “by hand” with makeString(), using strcmp() is safe (and assumed to be
> so in quite a lot of places).
> 
> While it’s not incorrect per se to use pg_strcasecmp(), it has the potential to
> hide a DefElem created with a mixed-case defname where it in other places is
> expected to be in lowercase, which may lead to subtle bugs.
> 
> The attached patch refactors to use strcmp() consistently for option processing
> in the command code as a pre-emptive belts+suspenders move against such subtle
> bugs and to make the code more consistent.  Also reorders a few checks to have
> all in the same “format” and removes a comment related to the above.
> 
> Tested with randomizing case on options in make check (not included in patch).

Does it work correctly in the Turkish locale?

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



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

Предыдущее
От: Robert Haas
Дата:
Сообщение: Re: [POC] A better way to expand hash indexes.
Следующее
От: Amit Langote
Дата:
Сообщение: Re: wait event documentation