From 49daee2e170df28654726e75480bdf9e4033fbce Mon Sep 17 00:00:00 2001 From: xige-16 Date: Sun, 9 Oct 2022 14:36:58 +0800 Subject: [PATCH] Fix lost disk index data (#19636) Signed-off-by: xige-16 Signed-off-by: xige-16 --- internal/core/src/index/VectorDiskIndex.cpp | 3 ++- internal/core/src/storage/DiskFileManagerImpl.cpp | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/internal/core/src/index/VectorDiskIndex.cpp b/internal/core/src/index/VectorDiskIndex.cpp index f55b62b498..3f5cfc2b79 100644 --- a/internal/core/src/index/VectorDiskIndex.cpp +++ b/internal/core/src/index/VectorDiskIndex.cpp @@ -52,7 +52,8 @@ VectorDiskAnnIndex::Load(const BinarySet& binary_set /* not used */, const Co auto index_files = GetValueFromConfig>(config, "index_files"); AssertInfo(index_files.has_value(), "index file paths is empty when load disk ann index data"); file_manager_->CacheIndexToDisk(index_files.value()); - index_->Prepare(cfg); + auto ok = index_->Prepare(cfg); + AssertInfo(ok, "load disk index failed"); SetDim(index_->Dim()); } diff --git a/internal/core/src/storage/DiskFileManagerImpl.cpp b/internal/core/src/storage/DiskFileManagerImpl.cpp index befd499253..9be934b3c8 100644 --- a/internal/core/src/storage/DiskFileManagerImpl.cpp +++ b/internal/core/src/storage/DiskFileManagerImpl.cpp @@ -93,7 +93,7 @@ DiskFileManagerImpl::AddFile(const std::string& file) noexcept { // Split local data to multi part with specified size int slice_num = 0; auto remotePrefix = GetRemoteIndexObjectPrefix(); - for (int offset = 0; offset < fileSize; slice_num++) { + for (int64_t offset = 0; offset < fileSize; slice_num++) { auto batch_size = std::min(milvus::config::KnowhereGetIndexSliceSize() << 20, int64_t(fileSize) - offset); auto fieldData = std::make_shared(buf.get() + offset, batch_size);