@@ -894,7 +894,7 @@ TYPED_TEST(SVSTieredIndexTestBasic, KNNSearch) {
894894 VecSimIndex_DeleteVector (svs_index, i);
895895 }
896896 ASSERT_EQ (flat_index->indexSize (), n * 2 / 3 );
897- ASSERT_EQ (svs_index->indexLabelCount (), n / 2 );
897+ ASSERT_EQ (svs_index->indexSize (), n / 2 );
898898 k = n * 2 / 3 ;
899899 cur_memory_usage = allocator->getAllocationSize ();
900900 runTopKSearchTest (tiered_index, query_0, k, ver_res_0);
@@ -909,7 +909,7 @@ TYPED_TEST(SVSTieredIndexTestBasic, KNNSearch) {
909909 VecSimIndex_DeleteVector (flat_index, i);
910910 }
911911 ASSERT_EQ (flat_index->indexSize (), n / 6 );
912- ASSERT_EQ (svs_index->indexLabelCount (), n / 2 );
912+ ASSERT_EQ (svs_index->indexSize (), n / 2 );
913913 k = n / 4 ;
914914 cur_memory_usage = allocator->getAllocationSize ();
915915 runTopKSearchTest (tiered_index, query_0, k, ver_res_0);
@@ -923,7 +923,7 @@ TYPED_TEST(SVSTieredIndexTestBasic, KNNSearch) {
923923 GenerateAndAddVector<TEST_DATA_T>(flat_index, dim, i, i);
924924 }
925925 ASSERT_EQ (flat_index->indexSize (), n * 2 / 3 );
926- ASSERT_EQ (svs_index->indexLabelCount (), 0 );
926+ ASSERT_EQ (svs_index->indexSize (), 0 );
927927 k = n / 3 ;
928928 cur_memory_usage = allocator->getAllocationSize ();
929929 runTopKSearchTest (tiered_index, query_0, k, ver_res_0);
@@ -1133,33 +1133,27 @@ TYPED_TEST(SVSTieredIndexTestBasic, markedDeleted) {
11331133
11341134 // Override a vector while in the backend
11351135 GenerateAndAddVector<TEST_DATA_T>(tiered_index, dim, 1 );
1136- ASSERT_EQ (tiered_index->indexSize (), n + 1 );
1137- ASSERT_EQ (tiered_index->indexLabelCount (), n);
1138- ASSERT_EQ (tiered_index->GetBackendIndex ()->indexLabelCount (), n - 1 );
1136+ ASSERT_EQ (tiered_index->indexSize (), n);
11391137 ASSERT_EQ (tiered_index->getNumMarkedDeleted (), 1 );
11401138 ASSERT_EQ (tiered_index->GetSVSIndex ()->getNumMarkedDeleted (), 1 );
11411139
1142- ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n);
1140+ ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n - 1 );
11431141 ASSERT_EQ (tiered_index->GetFlatIndex ()->indexSize (), 1 );
11441142
11451143 // Delete the overriden vector
11461144 VecSimIndex_DeleteVector (tiered_index, 1 );
1147- ASSERT_EQ (tiered_index->indexSize (), n);
1145+ ASSERT_EQ (tiered_index->indexSize (), n - 1 );
11481146 ASSERT_EQ (tiered_index->getNumMarkedDeleted (), 1 );
11491147 ASSERT_EQ (tiered_index->GetSVSIndex ()->getNumMarkedDeleted (), 1 );
1150- ASSERT_EQ (tiered_index->indexLabelCount (), n - 1 );
1151- ASSERT_EQ (tiered_index->GetBackendIndex ()->indexLabelCount (), n - 1 );
1152- ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n);
1148+ ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n - 1 );
11531149 ASSERT_EQ (tiered_index->GetFlatIndex ()->indexSize (), 0 );
11541150
1155- // Delete another arbitrary vector
1151+ // Delete another arbirtrary vector
11561152 VecSimIndex_DeleteVector (tiered_index, 0 );
1157- ASSERT_EQ (tiered_index->indexSize (), n);
1158- ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n);
1159- ASSERT_EQ (tiered_index->GetBackendIndex ()->indexLabelCount (), n - 2 );
1160- ASSERT_EQ (tiered_index->indexLabelCount (), n - 2 );
1153+ ASSERT_EQ (tiered_index->indexSize (), n - 2 );
11611154 ASSERT_EQ (tiered_index->getNumMarkedDeleted (), 2 );
11621155 ASSERT_EQ (tiered_index->GetSVSIndex ()->getNumMarkedDeleted (), 2 );
1156+ ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n - 2 );
11631157 ASSERT_EQ (tiered_index->GetFlatIndex ()->indexSize (), 0 );
11641158
11651159 // Empty Index
@@ -1173,8 +1167,6 @@ TYPED_TEST(SVSTieredIndexTestBasic, markedDeleted) {
11731167 ASSERT_EQ (tiered_index->GetSVSIndex ()->getNumMarkedDeleted (), 0 );
11741168 ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), 0 );
11751169 ASSERT_EQ (tiered_index->GetFlatIndex ()->indexSize (), 0 );
1176- ASSERT_EQ (tiered_index->GetBackendIndex ()->indexLabelCount (), 0 );
1177- ASSERT_EQ (tiered_index->indexLabelCount (), 0 );
11781170}
11791171
11801172TYPED_TEST (SVSTieredIndexTestBasic, deleteVectorMulti) {
@@ -2930,19 +2922,15 @@ TYPED_TEST(SVSTieredIndexTest, writeInPlaceMode) {
29302922 TEST_DATA_T overwritten_vec[] = {1 , 1 , 1 , 1 };
29312923 tiered_index->addVector (overwritten_vec, vec_label);
29322924 expected_marked_deleted++;
2933- ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), 3 );
2934- ASSERT_EQ (tiered_index->indexSize (), 3 );
2935- ASSERT_EQ (tiered_index->indexLabelCount (), 2 );
2925+ ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), 2 );
29362926 ASSERT_EQ (tiered_index->GetFlatIndex ()->indexSize (), 0 );
29372927 ASSERT_EQ (tiered_index->getDistanceFrom_Unsafe (vec_label, overwritten_vec), 0 );
29382928 ASSERT_EQ (tiered_index->GetSVSIndex ()->getNumMarkedDeleted (), expected_marked_deleted);
29392929 }
2940- // Validate that the vector is marked as deleted .
2930+ // Validate that the vector is removed in place .
29412931 tiered_index->deleteVector (vec_label);
29422932 expected_marked_deleted++;
2943- ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), TypeParam::isMulti () ? 2 : 3 );
2944- ASSERT_EQ (tiered_index->indexLabelCount (), 1 );
2945-
2933+ ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), 1 );
29462934 ASSERT_EQ (tiered_index->GetSVSIndex ()->getNumMarkedDeleted (), expected_marked_deleted);
29472935 EXPECT_EQ (tiered_index->statisticInfo ().numberOfMarkedDeleted , expected_marked_deleted);
29482936}
@@ -3040,7 +3028,7 @@ TYPED_TEST(SVSTieredIndexTest, switchWriteModes) {
30403028 mock_thread_pool.thread_pool_join ();
30413029 // Verify that vectors were moved to SVS as expected
30423030 auto sz_f = tiered_index->GetFlatIndex ()->indexSize ();
3043- auto sz_b = tiered_index->GetBackendIndex ()->indexLabelCount ();
3031+ auto sz_b = tiered_index->GetBackendIndex ()->indexSize ();
30443032 EXPECT_LE (sz_f, this ->getUpdateThreshold ());
30453033 if (TypeParam::isMulti ()) {
30463034 ASSERT_EQ (tiered_index->indexLabelCount (), 2 * n_labels);
@@ -3119,10 +3107,8 @@ TYPED_TEST(SVSTieredIndexTestBasic, runGCAPI) {
31193107 ASSERT_EQ (tiered_index->GetSVSIndex ()->getNumMarkedDeleted (), threshold);
31203108 EXPECT_EQ (tiered_index->statisticInfo ().numberOfMarkedDeleted , threshold);
31213109
3122- ASSERT_EQ (tiered_index->indexSize (), n);
3123- ASSERT_EQ (tiered_index->indexLabelCount (), n - threshold);
3124- ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n);
3125- ASSERT_EQ (tiered_index->GetBackendIndex ()->indexLabelCount (), n - threshold);
3110+ ASSERT_EQ (tiered_index->indexSize (), n - threshold);
3111+ ASSERT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n - threshold);
31263112 ASSERT_EQ (tiered_index->GetSVSIndex ()->indexStorageSize (), n);
31273113 auto size_before_gc = tiered_index->getAllocationSize ();
31283114
@@ -3191,7 +3177,7 @@ TYPED_TEST(SVSTieredIndexTestBasic, switchDeleteModes) {
31913177 mock_thread_pool.thread_pool_join ();
31923178 // Verify that vectors were moved to SVS as expected
31933179 auto sz_f = tiered_index->GetFlatIndex ()->indexSize ();
3194- auto sz_b = tiered_index->GetBackendIndex ()->indexLabelCount ();
3180+ auto sz_b = tiered_index->GetBackendIndex ()->indexSize ();
31953181 EXPECT_LE (sz_f, update_threshold);
31963182 EXPECT_EQ (sz_f + sz_b, n);
31973183}
@@ -3284,17 +3270,14 @@ TYPED_TEST(SVSTieredIndexTestBasic, testSwapJournalSingle) {
32843270 // For single-value index, following vectors should be in the index:
32853271 // 0:deleted, 1: 10, 2: deleted, 3:3, ..., n-2:deleted n-1: 10(n-1), n+1: n+1;
32863272 // total: n-2 vectors and labels
3273+ ASSERT_EQ (tiered_index->indexSize (), n - 2 );
32873274 ASSERT_EQ (tiered_index->indexLabelCount (), n - 2 );
3288- EXPECT_EQ (tiered_index->GetBackendIndex ()->indexLabelCount (), n - 5 );
32893275
3290- // We added 3 vectors to the flat index and removed 5 vectors from the backend index.
32913276 // Backend index: 0:deleted, 1:deleted, 2:deleted, 3:3, ..., n-2:deleted, n-1:deleted;
32923277 // total: n-5
3293- EXPECT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n);
3294- ASSERT_EQ (tiered_index->getNumMarkedDeleted (), 5 );
3278+ EXPECT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n - 5 );
32953279 // Frontend index: 1:10, n-1:10(n-1), n+1:n+1
32963280 ASSERT_EQ (tiered_index->GetFlatIndex ()->indexSize (), 3 );
3297- ASSERT_EQ (tiered_index->indexSize (), n + tiered_index->GetFlatIndex ()->indexSize ());
32983281
32993282 double abs_err = 1e-2 ; // Allow a larger relative error for quantization.
33003283 TEST_DATA_T expected_vector[dim];
@@ -3418,16 +3401,13 @@ TYPED_TEST(SVSTieredIndexTestBasic, testSwapJournalMulti) {
34183401 // For multi-value index, following vectors should be in the index:
34193402 // 0: deleted, 1: (1,10), 2: deleted, 3:3, ..., n-2: deleted n-1: 10(n-1), n+1: n+1;
34203403 // total: n-2 labels, n-1 vectors
3404+ ASSERT_EQ (tiered_index->indexSize (), n - 1 );
34213405 ASSERT_EQ (tiered_index->indexLabelCount (), n - 2 );
3422- EXPECT_EQ (tiered_index->GetBackendIndex ()->indexLabelCount (), n - 4 );
34233406
3424- // We added 3 vectors to the flat index and removed 4 vectors from the backend index.
34253407 // Backend index: 0:deleted, 1:1, 2:deleted, 3:3, ..., n-2:deleted, n-1:deleted; total: n-4
3426- EXPECT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n);
3427- ASSERT_EQ (tiered_index->getNumMarkedDeleted (), 4 );
3408+ EXPECT_EQ (tiered_index->GetBackendIndex ()->indexSize (), n - 4 );
34283409 // Frontend index: 1:10, n-1:10(n-1), n+1:n+1
34293410 ASSERT_EQ (tiered_index->GetFlatIndex ()->indexSize (), 3 );
3430- ASSERT_EQ (tiered_index->indexSize (), n + tiered_index->GetFlatIndex ()->indexSize ());
34313411
34323412 double abs_err = 1e-2 ; // Allow a larger relative error for quantization.
34333413 TEST_DATA_T expected_vector[dim];
0 commit comments