DEV2-12. 17. Обзор полнотекстового поиска

Ғылым және технология

DEV2-12. Тема 17. Расширяемость. Обзор полнотекстового поиска
postgrespro.ru/education/cour...
Авторы курса: Егор Рогов, Павел Лузанов
© Postgres Professional, 2020

Пікірлер: 3

  • @Gard_0
    @Gard_03 жыл бұрын

    Спасибо вам за это видео! Ещё столкнулся с проблемой, что если создавать дополнительный столбец под индекс ALTER TABLE mail_messages ADD search_vector tsvector GENERATED ALWAYS AS ( to_tsvector('english',subject) || to_tsvector('english',body_plain) ) STORED; Если не прописать 'english' в to_tsvector(), то выдаётся ошибка не иммутабельности данных, почему так происходит, не понятно

  • @PostgresProfessional

    @PostgresProfessional

    3 жыл бұрын

    Рады, что материал оказался полезен! Дело в том, что вариант функции to_tsvector без явного указания конфигурации (english в вашем случае) зависит от значения параметра default_text_search_config. Представьте себе, что у вас в таблице уже есть строки, для которых GENERATED ALWAYS сгенерировал значения, и тут вы поменяете параметр - все созданные ранее значения станут неправильными. Именно поэтому нельзя использовать такую функцию в GENERATE ALWAYS, нельзя создавать индекс по выражению, содержащему такую функцию и т. п. Это свойство называется категорией изменчивости: postgrespro.ru/docs/postgresql/10/xfunc-volatility

  • @Gard_0

    @Gard_0

    3 жыл бұрын

    @@PostgresProfessional спасибо за разъяснение!

Келесі