BUG #5942: pg_trgm.sql has cyclic dependency on type gtrgm creation

Поиск
Список
Период
Сортировка
От Arthur Nascimento
Тема BUG #5942: pg_trgm.sql has cyclic dependency on type gtrgm creation
Дата
Msg-id 201103231909.p2NJ9JEc052156@wwwmaster.postgresql.org
обсуждение исходный текст
Ответы Re: BUG #5942: pg_trgm.sql has cyclic dependency on type gtrgm creation  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs
The following bug has been logged online:

Bug reference:      5942
Logged by:          Arthur Nascimento
Email address:      tureba@gmail.com
PostgreSQL version: 9.0.3
Operating system:   Linux
Description:        pg_trgm.sql has cyclic dependency on type gtrgm creation
Details:

When creating the gtrgm type, it depends on gtrgm_{in,out}. These functions
also depend on the type, so there is a cyclic dependency on creation of the
type.

The command psql -f sharedir/contrib/pg_trgm.sql crashes for me accusing
this error.

According to the CREATE TYPE documentation, this can be solved by adding a
"CREATE TYPE gtrgm;" line before the functions are defined. This solution
worked locally for me by including that command between lines 40 and 41 of
the file.

A snippet of the offending code of contrib/pg_trgm.sql, lines 40 to 55:
-- gist key
CREATE OR REPLACE FUNCTION gtrgm_in(cstring)
RETURNS gtrgm
AS '$libdir/pg_trgm'
LANGUAGE C STRICT;

CREATE OR REPLACE FUNCTION gtrgm_out(gtrgm)
RETURNS cstring
AS '$libdir/pg_trgm'
LANGUAGE C STRICT;

CREATE TYPE gtrgm (
        INTERNALLENGTH = -1,
        INPUT = gtrgm_in,
        OUTPUT = gtrgm_out
);

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

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: Re: Warm Standby startup process unconditionally hangs
Следующее
От: Tom Lane
Дата:
Сообщение: Re: BUG #5942: pg_trgm.sql has cyclic dependency on type gtrgm creation