Use internal searcher for all indexing related operations in the engine
The changes introduced in #26972 missed two places where an internal searcher should be used.
This commit is contained in:
parent
a7895839a0
commit
a517758432
|
@ -525,7 +525,7 @@ public class InternalEngine extends Engine {
|
|||
} else {
|
||||
// load from index
|
||||
assert incrementIndexVersionLookup();
|
||||
try (Searcher searcher = acquireSearcher("load_seq_no")) {
|
||||
try (Searcher searcher = acquireSearcher("load_seq_no", SearcherScope.INTERNAL)) {
|
||||
DocIdAndSeqNo docAndSeqNo = VersionsAndSeqNoResolver.loadDocIdAndSeqNo(searcher.reader(), op.uid());
|
||||
if (docAndSeqNo == null) {
|
||||
status = OpVsLuceneDocStatus.LUCENE_DOC_NOT_FOUND;
|
||||
|
@ -952,7 +952,7 @@ public class InternalEngine extends Engine {
|
|||
throw new AssertionError("doc [" + index.type() + "][" + index.id() + "] exists in version map (version " + versionValue + ")");
|
||||
}
|
||||
} else {
|
||||
try (Searcher searcher = acquireSearcher("assert doc doesn't exist")) {
|
||||
try (Searcher searcher = acquireSearcher("assert doc doesn't exist", SearcherScope.INTERNAL)) {
|
||||
final long docsWithId = searcher.searcher().count(new TermQuery(index.uid()));
|
||||
if (docsWithId > 0) {
|
||||
throw new AssertionError("doc [" + index.type() + "][" + index.id() + "] exists [" + docsWithId + "] times in index");
|
||||
|
@ -1659,7 +1659,9 @@ public class InternalEngine extends Engine {
|
|||
assert rwl.isWriteLockedByCurrentThread() || failEngineLock.isHeldByCurrentThread() : "Either the write lock must be held or the engine must be currently be failing itself";
|
||||
try {
|
||||
this.versionMap.clear();
|
||||
internalSearcherManager.removeListener(versionMap);
|
||||
if (internalSearcherManager != null) {
|
||||
internalSearcherManager.removeListener(versionMap);
|
||||
}
|
||||
try {
|
||||
IOUtils.close(externalSearcherManager, internalSearcherManager);
|
||||
} catch (Exception e) {
|
||||
|
|
Loading…
Reference in New Issue