This is an automated email from the ASF dual-hosted git repository.

SteNicholas pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/paimon-cpp.git


The following commit(s) were added to refs/heads/main by this push:
     new 3df4a064 index: upgrade Lumina to 0.4.0 (#475)
3df4a064 is described below

commit 3df4a064e65d3022f24f81f00e3ff70e579ea61d
Author: lxy <[email protected]>
AuthorDate: Wed Oct 28 10:33:18 2026 +0800

    index: upgrade Lumina to 0.4.0 (#475)
---
 .../indexer/lumina/lumina_global_index_test.cpp    | 28 ++++++++++++++++++----
 third_party/versions.txt                           |  4 ++--
 2 files changed, 26 insertions(+), 6 deletions(-)

diff --git a/src/paimon/indexer/lumina/lumina_global_index_test.cpp 
b/src/paimon/indexer/lumina/lumina_global_index_test.cpp
index 0d5605f4..b8cb20df 100644
--- a/src/paimon/indexer/lumina/lumina_global_index_test.cpp
+++ b/src/paimon/indexer/lumina/lumina_global_index_test.cpp
@@ -281,7 +281,27 @@ class LuminaGlobalIndexTest : public ::testing::Test {
     std::vector<float> query_ = {1.0f, 1.0f, 1.0f, 1.1f};
 };
 
-TEST_F(LuminaGlobalIndexTest, TestSimple) {
+class LuminaGlobalIndexBackendTest : public LuminaGlobalIndexTest,
+                                     public 
::testing::WithParamInterface<std::string> {
+ public:
+    void SetUp() override {
+        LuminaGlobalIndexTest::SetUp();
+        options_["lumina.index.type"] = GetParam();
+        if (GetParam() == "flatnsw") {
+            options_["lumina.flatnsw.build.thread_count"] = "1";
+            // Use a large search width for the small dataset to reduce 
approximate-search misses.
+            options_["lumina.flatnsw.search.ef_search"] = "64";
+        }
+    }
+};
+
+INSTANTIATE_TEST_SUITE_P(Backends, LuminaGlobalIndexBackendTest,
+                         ::testing::Values(std::string("bruteforce"), 
std::string("flatnsw")),
+                         [](const ::testing::TestParamInfo<std::string>& info) 
{
+                             return info.param;
+                         });
+
+TEST_P(LuminaGlobalIndexBackendTest, TestSimple) {
     auto test_root_dir = paimon::test::UniqueTestDirectory::Create();
     ASSERT_TRUE(test_root_dir);
     std::string test_root = test_root_dir->Str();
@@ -315,7 +335,7 @@ TEST_F(LuminaGlobalIndexTest, TestSimple) {
     }
 }
 
-TEST_F(LuminaGlobalIndexTest, TestWithFilter) {
+TEST_P(LuminaGlobalIndexBackendTest, TestWithFilter) {
     auto test_root_dir = paimon::test::UniqueTestDirectory::Create();
     ASSERT_TRUE(test_root_dir);
     std::string test_root = test_root_dir->Str();
@@ -736,7 +756,7 @@ TEST_F(LuminaGlobalIndexTest, 
TestWriteAndReadWithTagFilter) {
     }
 }
 
-TEST_F(LuminaGlobalIndexTest, TestWriteAndReadWithMixedTagPredicates) {
+TEST_P(LuminaGlobalIndexBackendTest, TestWriteAndReadWithMixedTagPredicates) {
     auto test_root_dir = paimon::test::UniqueTestDirectory::Create();
     ASSERT_TRUE(test_root_dir);
     std::string test_root = test_root_dir->Str();
@@ -1360,7 +1380,7 @@ TEST_F(LuminaGlobalIndexTest, 
TestHighCardinalityAndMultiThreadSearch) {
     }
 }
 
-TEST_F(LuminaGlobalIndexTest, TestWriteWithNullRows) {
+TEST_P(LuminaGlobalIndexBackendTest, TestWriteWithNullRows) {
     auto test_root_dir = paimon::test::UniqueTestDirectory::Create();
     ASSERT_TRUE(test_root_dir);
     std::string test_root = test_root_dir->Str();
diff --git a/third_party/versions.txt b/third_party/versions.txt
index 0a33e25f..08081e6a 100644
--- a/third_party/versions.txt
+++ b/third_party/versions.txt
@@ -139,8 +139,8 @@ PAIMON_DATASKETCHES_BUILD_VERSION=5.2.0
 
PAIMON_DATASKETCHES_BUILD_SHA256_CHECKSUM=63e6bda660ee9730cc39746de87fd983118c28149e32ff9389fac98b27010a53
 
PAIMON_DATASKETCHES_PKG_NAME=datasketches-cpp-${PAIMON_DATASKETCHES_BUILD_VERSION}.tar.gz
 
-PAIMON_LUMINA_BUILD_VERSION=0.3.1
-PAIMON_LUMINA_BUILD_SHA256_CHECKSUM=2aed1ae238c866c12ee01fad17d52651a9029cba1b972b23cd640959310e2149
+PAIMON_LUMINA_BUILD_VERSION=0.4.0
+PAIMON_LUMINA_BUILD_SHA256_CHECKSUM=5e23348383d3aace6c9c8b3590e560273fa77d671f338ae6a6d98b8c6fa61dcd
 PAIMON_LUMINA_PKG_NAME=lumina_release-${PAIMON_LUMINA_BUILD_VERSION}.tar.gz
 
 PAIMON_JINDOSDK_C_BUILD_VERSION=6.10.2

Reply via email to