Денис, спасибо что потестировали. 1-2) А вы не пробовали снижать VGRAM_LIMIT_RATIO, вместо того, чтобы увеличивать длину максимальной V-gram'ы? 3) Это, наверное, связано с тем...
Покажите explain (analyze, buffers) для исходного запроса и запроса с WHERE data ? 'Alarm Word 1'
А какой результат setweight(array_to_tsvector(tags), 'A') || setweight(to_tsvector(title), 'B') для той строки, которую не находит, хотя должен?
За остальных не отвечу. По данному пункту пруф? Или может сам признаешься, что врёшь?
А под условие могут попадать только листья или узлы на любом уровне?
На github'е? Да, можно там открыть, всем будет видно.
@LuckyTea, помогает?