JingsongLi commented on PR #10286: URL: https://github.com/apache/paimon/pull/10286#issuecomment-5935973985
[P2] Keep the zero-index raw backend selectable instead of assuming `full-text` is always installed (`RawFullTextReadImpl.java`, lines 244–248). Full-text search also supports the `es-index` factory. An ESLib-only reader is a documented deployment and does not require the native `paimon-full-text` module; its writer supports the single-column raw indexing used here. Once this PR creates a raw split without any index files, the hardcoded fallback tries to load a factory that this reader does not have, so FULL/DETAIL fail with `Can't find global index for type: full-text` rather than recovering the raw rows. I reproduced this with a real catalog table, three committed documents, no index files, `full-text-index.search-mode=full`, and a production classpath containing core + paimon-eslib/Lucene (no native full-text implementation). The failure is at `GlobalIndexerFactoryUtils.load` called from `createRawFullTextIndexes`. Keeping the same data/query/classpath and changing only this fallback resolution to `es-index` produces the expected two hits in FULL and DETAIL, preserves the pinned snapshot, and returns one hit for a filtered top-k query. FAST remains empty in both cases. This is a gap in the new zero-index recovery path; the baseline also incorrectly returned empty results in this scenario. Please provide a way to resolve/select an available compatible full-text backend when no persisted split supplies its type, and test the ESLib-only case instead of describing the implementation as universally fixed to `full-text`. Validation: 67 passing core/native tests, one explicitly disabled benchmark; 2 ESLib executor tests; actual native zero-index reads in FAST/FULL/DETAIL passed, including empty-table, snapshot and filtered top-k checks. The ESLib failure and backend-resolution control were run on JDK 11 without repository changes. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
