You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by ji...@apache.org on 2023/06/19 06:35:17 UTC
[doris-thirdparty] branch clucene updated: [Fix] NoLockFactory does not use static variables (#91)
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 <33...@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-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org