lxy-9602 opened a new pull request, #117: URL: https://github.com/apache/paimon-cpp/pull/117
<!-- Please specify the module before the PR name: feat: ... or fix: ... --> ### Purpose <!-- Linking this pull request to the issue --> No Linked issue. Migrate Lucene-based global index support under `src/paimon/global_index/lucene/`: Lucene adapter utilities: - `LuceneDefs` — defines common Lucene constants and aliases used by the Lucene global index (`lucene_defs.h`) - `LuceneUtils` — provides helper conversions between Paimon values and Lucene query/index primitives (`lucene_utils.h/cpp`) - `LuceneDirectory` — adapts Paimon file IO to Lucene directory operations (`lucene_directory.h/cpp`) - `LuceneInput` — implements Lucene index input over Paimon file reads (`lucene_input.h`) - `LuceneFilter` — builds Lucene filters from Paimon predicates (`lucene_filter.h`) - `LuceneCollector` — collects Lucene search hits for global-index lookup (`lucene_collector.h`) Jieba analyzer: - `JiebaAnalyzer` — integrates cppjieba tokenization for Lucene text analysis (`jieba_analyzer.h/cpp`) Lucene global index: - `LuceneGlobalIndex` — exposes Lucene as a Paimon global index implementation (`lucene_global_index.h/cpp`) - `LuceneGlobalIndexFactory` — creates Lucene global index instances from table options (`lucene_global_index_factory.h/cpp`) - `LuceneGlobalIndexReader` — reads indexed rows and performs Lucene-backed lookup/search (`lucene_global_index_reader.h/cpp`) - `LuceneGlobalIndexWriter` — writes row changes into Lucene index files (`lucene_global_index_writer.h/cpp`) <!-- What is the purpose of the change --> ### Tests Migrated Lucene/Jieba tests: - `lucene_directory_test.cpp` — validates Lucene directory behavior over Paimon file IO - `lucene_filter_test.cpp` — validates predicate-to-Lucene filter conversion - `jieba_analyzer_test.cpp` — validates Jieba analyzer tokenization behavior - `jieba_api_test.cpp` — validates direct cppjieba API usage - `lucene_global_index_test.cpp` — validates Lucene global index read/write behavior - `lucene_api_test.cpp` — validates direct Lucene API behavior used by the global index <!-- List UT and IT cases to verify this change --> ### API and Format <!-- Does this change affect API in include dir or storage format or protocol --> ### Documentation <!-- Does this change introduce a new feature --> ### Generative AI tooling Migrate-by: Codex <!-- If generative AI tooling has been used in the process of authoring this patch, please include the phrase: 'Generated-by: ' followed by the name of the tool and its version. If no, write 'No'. Please refer to the [ASF Generative Tooling Guidance](https://www.apache.org/legal/generative-tooling.html) for details. --> -- 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]
