This is an automated email from the ASF dual-hosted git repository. jianliangqi 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 60f5eab7 [Fix] NoLockFactory does not use static variables (#91) 60f5eab7 is described below commit 60f5eab7ac6294493a2e7e290297000c3c39875c Author: zzzxl <33418555+zzzxl1...@users.noreply.github.com> AuthorDate: Mon Jun 19 14:35:12 2023 +0800 [Fix] NoLockFactory does not use static variables (#91) --- src/core/CLucene/index/IndexWriter.h | 2 +- src/core/CLucene/store/Directory.h | 2 +- src/core/CLucene/store/FSDirectory.cpp | 2 +- src/core/CLucene/store/LockFactory.cpp | 19 +------------------ src/core/CLucene/store/LockFactory.h | 4 ---- 5 files changed, 4 insertions(+), 25 deletions(-) diff --git a/src/core/CLucene/index/IndexWriter.h b/src/core/CLucene/index/IndexWriter.h index b5aabf1b..21df3c0c 100644 --- a/src/core/CLucene/index/IndexWriter.h +++ b/src/core/CLucene/index/IndexWriter.h @@ -242,7 +242,7 @@ class CLUCENE_EXPORT IndexWriter:LUCENE_BASE { SegmentsToOptimizeType* segmentsToOptimize; // used by optimize to note those needing optimization - CL_NS(store)::LuceneLock* writeLock; + CL_NS(store)::LuceneLock* writeLock = nullptr; void init(CL_NS(store)::Directory* d, CL_NS(analysis)::Analyzer* a, bool closeDir, IndexDeletionPolicy* deletionPolicy, bool autoCommit); void init(CL_NS(store)::Directory* d, CL_NS(analysis)::Analyzer* a, bool create, bool closeDir, IndexDeletionPolicy* deletionPolicy, bool autoCommit); diff --git a/src/core/CLucene/store/Directory.h b/src/core/CLucene/store/Directory.h index a13cc911..30192051 100644 --- a/src/core/CLucene/store/Directory.h +++ b/src/core/CLucene/store/Directory.h @@ -34,7 +34,7 @@ CL_NS_DEF(store) */ class CLUCENE_EXPORT Directory: LUCENE_REFBASE, public CL_NS(util)::NamedObject { protected: - LockFactory* lockFactory; + LockFactory* lockFactory = nullptr; Directory(); // Removes an existing file in the directory. diff --git a/src/core/CLucene/store/FSDirectory.cpp b/src/core/CLucene/store/FSDirectory.cpp index 5d7532e8..09946046 100644 --- a/src/core/CLucene/store/FSDirectory.cpp +++ b/src/core/CLucene/store/FSDirectory.cpp @@ -379,7 +379,7 @@ void FSDirectory::FSIndexInput::readInternal(uint8_t* b, const int32_t len) { if ( lockFactory == NULL ) { if ( disableLocks ) { - lockFactory = NoLockFactory::getNoLockFactory(); + lockFactory = _CLNEW NoLockFactory(); } else { lockFactory = _CLNEW FSLockFactory( directory.c_str(), this->filemode ); doClearLockID = true; diff --git a/src/core/CLucene/store/LockFactory.cpp b/src/core/CLucene/store/LockFactory.cpp index ea0aa7dc..b6278233 100644 --- a/src/core/CLucene/store/LockFactory.cpp +++ b/src/core/CLucene/store/LockFactory.cpp @@ -70,29 +70,12 @@ void SingleInstanceLockFactory::clearLock( const char* lockName ) } } - -NoLockFactory* NoLockFactory::singleton = NULL; -NoLock* NoLockFactory::singletonLock = NULL; - void NoLockFactory::_shutdown(){ - _CLDELETE(NoLockFactory::singleton); - _CLDELETE(NoLockFactory::singletonLock); -} - -NoLockFactory* NoLockFactory::getNoLockFactory() -{ - if ( singleton == NULL ) { - singleton = _CLNEW NoLockFactory(); - } - return singleton; } LuceneLock* NoLockFactory::makeLock( const char* /*lockName*/ ) { - if ( singletonLock == NULL ) { - singletonLock = _CLNEW NoLock(); - } - return singletonLock; + return _CLNEW NoLock(); } void NoLockFactory::clearLock( const char* /*lockName*/ ) diff --git a/src/core/CLucene/store/LockFactory.h b/src/core/CLucene/store/LockFactory.h index 95ab3c96..a287aff8 100644 --- a/src/core/CLucene/store/LockFactory.h +++ b/src/core/CLucene/store/LockFactory.h @@ -44,10 +44,6 @@ public: class CLUCENE_EXPORT NoLockFactory: public LockFactory { public: - static NoLockFactory* singleton; - static NoLock* singletonLock; - - static NoLockFactory* getNoLockFactory(); LuceneLock* makeLock( const char* lockName ); void clearLock( const char* lockName ); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org