<< | Index | >>
default_german
and default_french
dictionaries of ODBA.
tried sql for 8.2 on 8.3.
got many errors.
ERROR: language "plpgsql" already exists ERROR: could not find function "gtsvector_in" in file "/usr/lib64/postgresql-9.1/lib64/tsearch2.so" ERROR: function public.gtsvector_in(cstring) does not exist ERROR: could not find function "gtsvector_out" in file "/usr/lib64/postgresql-9.1/lib64/tsearch2.so" ERROR: function public.gtsvector_out(gtsvector) does not exist ERROR: function gtsvector_in(cstring) does not exist ...
But some old version tables are created.
oddb.org.ruby193=# \d pg_ts_cfg; Table "public.pg_ts_cfg" Column | Type | Modifiers ----------+------+----------- ts_name | text | not null prs_name | text | not null locale | text | Indexes: "pg_ts_cfg_pkey" PRIMARY KEY, btree (ts_name) oddb.org.ruby193=# \d pg_ts_cfgmap; Table "public.pg_ts_cfgmap" Column | Type | Modifiers -----------+--------+----------- ts_name | text | not null tok_alias | text | not null dict_name | text[] | Indexes: "pg_ts_cfgmap_pkey" PRIMARY KEY, btree (ts_name, tok_alias)
But there are many conflicts in tsearch2 function and tables.
This way dose not work.
Update ODBA to be suitable for tsearch2 > 8.3.
oddb.org.ruby193=# CREATE TEXT SEARCH CONFIGURATION public.default_german ( COPY = pg_catalog.german ); CREATE TEXT SEARCH CONFIGURATION oddb.org.ruby193=# select * from pg_ts_config; cfgname | cfgnamespace | cfgowner | cfgparser ----------------+--------------+----------+----------- simple | 11 | 10 | 3722 ... default_german | 2200 | 10 | 3722 #=> default_#{language} comes from ODBA (17 rows)
Dictionary Files von oddb.org are
PostgreSQL 8.3 dose not work with PATH
. copied these files into
$ ls -la /usr/share/postgresql/tsearch_data -rw-r--r-- 1 yasuhiro yasuhiro 27227 Mar 14 14:42 fulltext.affix -rw-r--r-- 1 yasuhiro yasuhiro 4471026 Mar 14 14:42 fulltext.dict -rw-r--r-- 1 yasuhiro yasuhiro 706 Mar 14 14:42 fulltext.stop
But aff file got error.
oddb.org.ruby193=# CREATE TEXT SEARCH DICTIONARY german_ispell ( TEMPLATE = ispell, DictFile = fulltext, AffFile = fulltext, StopWords = fulltext ); ERROR: wrong affix file format for flag CONTEXT: line 25 of configuration file "/usr/share/postgresql-9.1/tsearch_data/fulltext.affix": "PFX G N 1"
These german ispell (affix
) files also don't work by Encoding problem.
Finaly commented out this from fulltext.aff of oddb.org like above german tar files.
#PFX G N 1 # . > GE
oddb.org.ruby193=# CREATE TEXT SEARCH DICTIONARY german_ispell ( TEMPLATE = ispell, DictFile = fulltext, AffFile = fulltext, StopWords = fulltext ); CREATE TEXT SEARCH DICTIONARY oddb.org.ruby193=# select * from pg_ts_dict; dictname | dictnamespace | dictowner | dicttemplate | dictinitoption -----------------+---------------+-----------+--------------+--------------------------------------------------------------------- ... german_stem | 11 | 10 | 11378 | language = 'german', stopwords = 'german' ... german_ispell | 2200 | 10 | 3733 | dictfile = 'fulltext', afffile = 'fulltext', stopwords = 'fulltext'
SQLs
(german, french):
# Drop DROP TEXT SEARCH CONFIGURATION default_german; DROP TEXT SEARCH DICTIONARY german_ispell; # Creation CREATE TEXT SEARCH CONFIGURATION public.default_german ( COPY = pg_catalog.german ); CREATE TEXT SEARCH DICTIONARY german_ispell ( TEMPLATE = ispell, DictFile = fulltext, AffFile = fulltext, StopWords = fulltext ); ALTER TEXT SEARCH CONFIGURATION default_german ALTER MAPPING FOR word, hword, hword_part, hword_numpart, numword, numhword WITH german_ispell, german_stem; ALTER TEXT SEARCH CONFIGURATION default_german ALTER MAPPING FOR asciiword, asciihword, hword_asciipart, email, protocol, url, host, url_path, file, sfloat, float, int, uint, version, tag, entity, blank WITH simple;
This Created Dictionary works fine.
oddb.org.ruby193=# select * from ts_debug('default_german', 'En Güte'); alias | description | token | dictionaries | dictionary | lexemes -----------+-------------------+-------+-----------------------------+-------------+--------- asciiword | Word, all ASCII | En | {simple} | simple | {en} blank | Space symbols | | {simple} | simple | {" "} word | Word, all letters | Güte | {german_ispell,german_stem} | german_stem | {gut} (3 rows)
Then update ODBA to be suitable for this verion's tsearch2.