A query performance patch, no API or database changes
Fixed
Form-Search Performance→ Searching entries and proper names by a
written or reading form previously compiled to correlatedEXISTS
subqueries that scanned every row (743k for names). The predicates are
rewritten as a non-correlatedid IN (... UNION ...)subquery that runs on
the existing text indexes.kotobase.Kotobase.namesdrops from
~1.4s to ~2ms (~780x),kotobase.Kotobase.lookupfrom ~310ms to ~17ms, and
kotobase.Kotobase.words_with_kanjifrom ~460ms to ~50ms.
Result sets are unchanged and already-downloaded databases don't need a rebuild