If this is the wrong list, please redirect me to the correct one.
I have a PostgreSQL-7.2 installation with several databases in it which uses
the contrib/tsearch module.
I've done a
(on 7.2):
pg_dumpall
and
(on 7.3):
/usr/local/pgsql/bin/psql -d template1 -f prod2-pg7.2.dmp
I get a bunch of theese errors in the log-file:
---------------------------------------------------------------------------------------
psql:prod2-pg7.2.dmp:89: NOTICE: TypeCreate: changing argument type of
function qtxt_in from OPAQUE to CSTRING
psql:prod2-pg7.2.dmp:89: NOTICE: TypeCreate: changing argument type of
function qtxt_out from OPAQUE to query_txt
psql:prod2-pg7.2.dmp:89: NOTICE: TypeCreate: changing return type of function
qtxt_in from OPAQUE to query_txt
psql:prod2-pg7.2.dmp:89: NOTICE: TypeCreate: changing return type of function
qtxt_out from OPAQUE to CSTRING
CREATE TYPE
CREATE FUNCTION
psql:prod2-pg7.2.dmp:105: NOTICE: TypeCreate: changing argument type of
function mqtxt_in from OPAQUE to CSTRING
psql:prod2-pg7.2.dmp:105: ERROR: TypeCreate: function qtxt_out(mquery_txt)
does not exist
CREATE FUNCTION
psql:prod2-pg7.2.dmp:121: ERROR: Type "mquery_txt" does not exist
CREATE FUNCTION
psql:prod2-pg7.2.dmp:137: ERROR: Type "mquery_txt" does not exist
CREATE FUNCTION
psql:prod2-pg7.2.dmp:153: ERROR: Type "mquery_txt" does not exist
CREATE OPERATOR
CREATE OPERATOR
psql:prod2-pg7.2.dmp:192: ERROR: Type "mquery_txt" does not exist
psql:prod2-pg7.2.dmp:205: ERROR: Type "mquery_txt" does not exist
..
..
psql:prod2-pg7.2.dmp:2539: ERROR: data type txtidx has no default operator
class for access method "gist"You must specify an operator class for the index or define adefault operator class for
thedata type
..
..
psql:prod2-pg7.2.dmp:4419: ERROR: execqtxt: must be owner
psql:prod2-pg7.2.dmp:4427: ERROR: Type "mquery_txt" does not exist
psql:prod2-pg7.2.dmp:4435: ERROR: rexecqtxt: must be owner
psql:prod2-pg7.2.dmp:4443: ERROR: Type "mquery_txt" does not exist
---------------------------------------------------------------------------------------
The database seems to work just fine, and one of the tables which uses the
txtidx datatype looks like this in 7.2 and 7.3 respectively:
e4u=> select version(); version
----------------------------------------------------------------------------------------------------PostgreSQL 7.2.2 on
i686-pc-linux-gnu,compiled by GCC gcc (GCC) 3.2
(Mandrake Linux 9.0 3.2-1mdk)
(1 row)
e4u=> \d on_article_searchableTable "on_article_searchable"Column | Type | Modifiers
---------+---------+-----------id | integer | not nulllang_id | integer | not nullcontent | txtidx |
Indexes: searchable_lang_idx, t_idx
Primary key: on_article_searchable_pkey
Triggers: RI_ConstraintTrigger_18817, RI_ConstraintTrigger_18823
------------
e4u=> select version(); version
-----------------------------------------------------------------------------------------------------PostgreSQL 7.3rc1
oni686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.2
(Mandrake Linux 9.0 3.2-1mdk)
(1 row)
e4u=> \d on_article_searchable
Table "public.on_article_searchable"Column | Type | Modifiers
---------+---------+-----------id | integer | not nulllang_id | integer | not nullcontent | txtidx |
Indexes: on_article_searchable_pkey primary key btree (id, lang_id), searchable_lang_idx btree (lang_id)
Triggers: RI_ConstraintTrigger_41091, RI_ConstraintTrigger_41094
Notice, the t_idx index is missing on the 7.3 table. Does that mean I have to
manually "install" tsearch on each database?
When I try to create the index t_idx on the table, the following error
occures:
e4u=> CREATE INDEX t_idx ON on_article_searchable USING gist (content);
ERROR: data type txtidx has no default operator class for access method
"gist" You must specify an operator class for the index or define a default operator class for the data
type
Any help appreciated.
--
Andreas Joseph Krogh <andreak@officenet.no>
- Only two things are infinite, the universe and human stupidity, and I'm not sure about the former. Albert Einstein