Re: to_tsquery stack overflow

Поиск
Список
Период
Сортировка
От Heikki Linnakangas
Тема Re: to_tsquery stack overflow
Дата
Msg-id 46D6A68C.3030607@enterprisedb.com
обсуждение исходный текст
Ответ на to_tsquery stack overflow  ("Heikki Linnakangas" <heikki@enterprisedb.com>)
Ответы Re: to_tsquery stack overflow  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
Heikki Linnakangas wrote:
> Passing a query with enough nested parenthesis in it causes a segfault.
> Attached is a handy little program to generate such a query, the actual
> query was too big to get through to the list.
>
> The problem seems to be unbounded recursion in the makepol function that
> converts the input query from infix to polish notation. An easy fix
> would be to just add a level parameter to makepol that's incremented on
> each recursion, and throw an error if it grows bigger than some safe
> limit. There might be a similar problem in TS_execute as well, if you
> can somehow pass a complex enough TSQuery to the system, perhaps with a
> custom libpq client and tsqueryrecv.

Actually, the right way to fix that is of course to call
check_stack_depth() in makepol and TS_execute.

--
  Heikki Linnakangas
  EnterpriseDB   http://www.enterprisedb.com

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

Предыдущее
От: "Heikki Linnakangas"
Дата:
Сообщение: to_tsquery stack overflow
Следующее
От: Fuminori Ido
Дата:
Сообщение: Re: BUG #3589: /etc/init.d/postgresql reload doesn't reflect /etc/postgresql/postgresql.conf log_statement