The following bug has been logged on the website:
Bug reference: 15181
Logged by: Adam Bartoszewicz
Email address: adam.bartoszewicz@gmail.com
PostgreSQL version: 9.3.22
Operating system: CentOS 6
Description:
Helo,
I use PostgreSQL v 9.3.22 (enterprisedb.com installer), CentOS 6
I created custom text search dictionary following instructions found in
https://github.com/nediam/tsearch-polish/blob/wiki/PolskiSlownikTsearchPostgreSQL.md.
It is in Polish but has two simple steps:
1. Unpack
http://tsearch-polish.googlecode.com/files/tsearch_data_polish_20120730.zip
and copy to share/tsearch_data/ folder
2. Run commands
CREATE TEXT SEARCH CONFIGURATION public.polish ( COPY = pg_catalog.english
);
CREATE TEXT SEARCH DICTIONARY polish_ispell (
TEMPLATE = ispell,
DictFile = polish, -- tsearch_data/polish.dict
AffFile = polish, -- tsearch_data/polish.affix
StopWords = polish -- tsearch_data/polish.stop
);
CREATE TEXT SEARCH DICTIONARY polish_synonym (
TEMPLATE = synonym,
SYNONYMS = polish -- tsearch_data/polish.syn
);
CREATE TEXT SEARCH DICTIONARY polish_thesaurus (
TEMPLATE = thesaurus,
DictFile = polish, -- tsearch_data/polish.ths
Dictionary = polish_ispell
);
ALTER TEXT SEARCH CONFIGURATION polish
ALTER MAPPING FOR asciiword, asciihword, hword_asciipart, word, hword,
hword_part
WITH polish_thesaurus, polish_synonym, polish_ispell, simple;
The bug ocurs when I try to dump and reload database structure.
pg_dump creates command with missing schema:
CREATE TEXT SEARCH DICTIONARY public.polish_thesaurus (
TEMPLATE = pg_catalog.thesaurus,
dictfile = 'polish', dictionary = 'polish_ispell' );
dictionary = 'polish_ispell'
instead of
dictionary = 'public.polish_ispell'
psql -f pg_dump_file raises error:
ERROR: text search dictionary "polish_ispell" does not exist
There is of course simple workaround: manually correct file created by
pg_dump.
Adam