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