This is an automated email from the ASF dual-hosted git repository.
airborne pushed a commit to branch clucene
in repository https://gitbox.apache.org/repos/asf/doris-thirdparty.git
The following commit(s) were added to refs/heads/clucene by this push:
new ace9ba07a88 [fix](index) fix memory leak in DirectoryIndexReader and
improve abort handling (#329)
ace9ba07a88 is described below
commit ace9ba07a880a01d0161ee4a03418c30ba048fb9
Author: airborne12 <[email protected]>
AuthorDate: Fri Jul 11 16:54:24 2025 +0800
[fix](index) fix memory leak in DirectoryIndexReader and improve abort
handling (#329)
---
src/core/CLucene/index/DirectoryIndexReader.cpp | 1 +
src/core/CLucene/index/SDocumentWriter.h | 4 +++-
2 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/core/CLucene/index/DirectoryIndexReader.cpp
b/src/core/CLucene/index/DirectoryIndexReader.cpp
index 24f7c105e01..cf1052a23b8 100644
--- a/src/core/CLucene/index/DirectoryIndexReader.cpp
+++ b/src/core/CLucene/index/DirectoryIndexReader.cpp
@@ -153,6 +153,7 @@ CL_NS_DEF(index)
DirectoryIndexReader* reader;
if (infos->size() == 0) {
+ _CLDELETE(infos);
_CLTHROWA(CL_ERR_EmptyIndexSegment, "The number of index segments is
0, indicating incorrect index generation.");
} else if (infos->size() == 1) { // index is optimized
reader = SegmentReader::get(infos, infos->info(0), readBufferSize_,
closeDirectory);
diff --git a/src/core/CLucene/index/SDocumentWriter.h
b/src/core/CLucene/index/SDocumentWriter.h
index 0795a7aa372..a166703f1d0 100644
--- a/src/core/CLucene/index/SDocumentWriter.h
+++ b/src/core/CLucene/index/SDocumentWriter.h
@@ -756,7 +756,9 @@ public:
int32_t getNumBufferedDeleteTerms() override {
return 0;
}
- void abort(AbortException *ae) override {}
+ void abort(AbortException *ae) override {
+ resetPostingsData();
+ }
void setMaxBufferedDocs(int32_t count) override {
maxBufferedDocs = count;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]