Обсуждение: segfault using pg_options_to_table(), v9.0.4

Поиск
Список
Период
Сортировка

segfault using pg_options_to_table(), v9.0.4

От
Frank van Vugt
Дата:
Hi,

Reading up on the release notes of v9.1 I noticed an 'add documentation for
pg_options_to_table()'. Since I didn't know of this function yet and the entry
implied that it would be there in earlier versions, I was tempted to try in
our current version:

postgres=# select version();
                                        version
---------------------------------------------------------------------------------------
 PostgreSQL 9.0.4 on x86_64-unknown-linux-gnu, compiled by GCC gcc (GCC)
4.3.3, 64-bit
(1 row)

the following:

postgres=# select pg_options_to_table('article');
ERROR:  array value must start with "{" or dimension information
LINE 1: select pg_options_to_table('article');
                                   ^

=> ok, so let's make it an array:

postgres=# select pg_options_to_table(ARRAY['article']);

=> which led to a segfault, from the logs:

--3262-2011-09-13 14:28:18 CESTLOG:  server process (PID 7427) was terminated
by signal 11: Segmentation fault
--3262-2011-09-13 14:28:18 CESTLOG:  terminating any other active server
processes


I know, should have read the docs first to see that it expects something else
as an argument, but still ;)





--
Best,




Frank.

Re: segfault using pg_options_to_table(), v9.0.4

От
Tom Lane
Дата:
Frank van Vugt <ftm.van.vugt@foxi.nl> writes:
> postgres=# select pg_options_to_table(ARRAY['article']);
> --3262-2011-09-13 14:28:18 CESTLOG:  server process (PID 7427) was terminated
> by signal 11: Segmentation fault

Looks like deflist_to_tuplestore fails to handle the case where an
option has no value.  Will fix, thanks.

            regards, tom lane