On the plugin-heavy showcase, some search paths emit a MySQL FULLTEXT search that the embedded engine cannot execute:
SELECT wp_posts.*, MATCH (wp_posts.post_title, wp_posts.post_content) AGAINST ('<terms>') AS score
FROM wp_posts ...
litewire/Turso: SQLite error: near (: syntax error — SQLite has no MATCH ... AGAINST FULLTEXT operator; full-text search is a separate FTS5 virtual-table feature with different syntax.
This is not rewritable as a simple string transform in db-wordpress: a faithful translation needs a parallel FTS5 virtual table kept in sync with wp_posts, which is a much larger feature (and arguably belongs in litewire or an optional drop-in module). A cheap degradation would be to rewrite MATCH(...) AGAINST('x') to a LIKE predicate, but that changes ranking/semantics and only helps the WHERE-clause form (not the AS score select-list form seen here).
Impact: non-fatal. The affected relevance-search feature degrades; normal WordPress search (LIKE-based) and browsing are unaffected.
Filing to track. A MATCH ... AGAINST -> LIKE best-effort rewrite could be considered if a real plugin path depends on it.
On the plugin-heavy showcase, some search paths emit a MySQL FULLTEXT search that the embedded engine cannot execute:
litewire/Turso:
SQLite error: near (: syntax error— SQLite has noMATCH ... AGAINSTFULLTEXT operator; full-text search is a separate FTS5 virtual-table feature with different syntax.This is not rewritable as a simple string transform in
db-wordpress: a faithful translation needs a parallel FTS5 virtual table kept in sync withwp_posts, which is a much larger feature (and arguably belongs in litewire or an optional drop-in module). A cheap degradation would be to rewriteMATCH(...) AGAINST('x')to aLIKEpredicate, but that changes ranking/semantics and only helps the WHERE-clause form (not theAS scoreselect-list form seen here).Impact: non-fatal. The affected relevance-search feature degrades; normal WordPress search (LIKE-based) and browsing are unaffected.
Filing to track. A
MATCH ... AGAINST -> LIKEbest-effort rewrite could be considered if a real plugin path depends on it.