Search before asking
Paimon version
master @ b0af456
Compute Engine
Engine-agnostic (core): Java withFilter, Spark full-text/hybrid search with WHERE.
Minimal reproduce step
- Data-evolution table,
scalar-index.search-mode=full (or detail), full-text index on content, FM index on the filter column (content).
- Full-text search with
withFilter(equal(content, 'paimon zeta')).
- The result is empty. A plain table scan with the same filter returns the row.
FM always declines =, so DataEvolutionFullTextRead#matchedRows gets no evaluation and drops the covered rows. A full-text index on the filter column behaves the same.
What doesn't meet your expectations?
In full/detail, these rows should be decided from their filter columns (fast unchanged):
Anything else?
N/A
Are you willing to submit a PR?
Search before asking
Paimon version
master @ b0af456
Compute Engine
Engine-agnostic (core): Java
withFilter, Spark full-text/hybrid search withWHERE.Minimal reproduce step
scalar-index.search-mode=full(ordetail), full-text index oncontent, FM index on the filter column (content).withFilter(equal(content, 'paimon zeta')).FM always declines
=, soDataEvolutionFullTextRead#matchedRowsgets no evaluation and drops the covered rows. A full-text index on the filter column behaves the same.What doesn't meet your expectations?
In
full/detail, these rows should be decided from their filter columns (fastunchanged):full/detailread filter columns of unindexed rows.DataEvolutionGlobalIndexScanneralready treats runtime declines as unindexed ranges ([core] Support composite BTree equality queries for data evolution tables #10339).fastwarning recommendsfull, which currently returns nothing.Anything else?
N/A
Are you willing to submit a PR?