Ключи поиска postgresql 9.2.4 hstore Неизвестный оператор

Не можете использовать ?| оператор. Отлично работает с postgresql 9.1.9 (разработка), не работает с 9.2.4 (производство)

test=# SELECT 'a=>1,b=>2'::hstore ?| ARRAY['b','c'];
ERROR:  operator does not exist: hstore ?| text[]
LINE 1: SELECT 'a=>1,b=>2'::hstore ?| ARRAY['b','c'];
                                   ^
HINT:  No operator matches the given name and argument type(s). You might need to add explicit type casts.

Хстор установлен

test=# create extension hstore;
ERROR:  type "hstore" already exists

person edbond    schedule 21.06.2013    source источник


Ответы (1)


Сообщение об ошибке от create extension hstore указывает на то, что на самом деле у вас не установлено расширение hstore, а только некоторые части его содержимого. (В противном случае сообщение об ошибке будет extension "hstore" already exists.) Поэтому я предлагаю вам исправить установку hstore. Это может сработать, чтобы сделать CREATE EXTENSION hstore FROM unpackaged. Если нет, вам придется сделать ручную операцию, чтобы удалить или добавить недостающие части.

person Peter Eisentraut    schedule 21.06.2013
comment
СОЗДАТЬ РАСШИРЕНИЕ hstore ИЗ распакованного; ОШИБКА: функция hstore_recv (внутренняя) не существует - person edbond; 22.06.2013
comment
Я думаю, что он сломался после обновления postgresql с 8.x. - person edbond; 22.06.2013