mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-02-09 14:35:04 +00:00
Prevent usage of object based RamUsageEstimator in Completion090PostingsFormat
This commit is contained in:
parent
3e3170278e
commit
6e18a8945d
@ -204,6 +204,7 @@ public class AnalyzingCompletionLookupProvider extends CompletionLookupProvider
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public LookupFactory load(IndexInput input) throws IOException {
|
public LookupFactory load(IndexInput input) throws IOException {
|
||||||
|
long sizeInBytes = 0;
|
||||||
int version = CodecUtil.checkHeader(input, CODEC_NAME, CODEC_VERSION_START, CODEC_VERSION_LATEST);
|
int version = CodecUtil.checkHeader(input, CODEC_NAME, CODEC_VERSION_START, CODEC_VERSION_LATEST);
|
||||||
final Map<String, AnalyzingSuggestHolder> lookupMap = new HashMap<String, AnalyzingSuggestHolder>();
|
final Map<String, AnalyzingSuggestHolder> lookupMap = new HashMap<String, AnalyzingSuggestHolder>();
|
||||||
input.seek(input.length() - 8);
|
input.seek(input.length() - 8);
|
||||||
@ -249,8 +250,10 @@ public class AnalyzingCompletionLookupProvider extends CompletionLookupProvider
|
|||||||
|
|
||||||
AnalyzingSuggestHolder holder = new AnalyzingSuggestHolder(preserveSep, preservePositionIncrements, maxSurfaceFormsPerAnalyzedForm, maxGraphExpansions,
|
AnalyzingSuggestHolder holder = new AnalyzingSuggestHolder(preserveSep, preservePositionIncrements, maxSurfaceFormsPerAnalyzedForm, maxGraphExpansions,
|
||||||
hasPayloads, maxAnalyzedPathsForOneInput, fst, sepLabel, payloadSep, endByte, holeCharacter);
|
hasPayloads, maxAnalyzedPathsForOneInput, fst, sepLabel, payloadSep, endByte, holeCharacter);
|
||||||
|
sizeInBytes += fst.sizeInBytes();
|
||||||
lookupMap.put(entry.getValue(), holder);
|
lookupMap.put(entry.getValue(), holder);
|
||||||
}
|
}
|
||||||
|
final long ramBytesUsed = sizeInBytes;
|
||||||
return new LookupFactory() {
|
return new LookupFactory() {
|
||||||
@Override
|
@Override
|
||||||
public Lookup getLookup(FieldMapper<?> mapper, CompletionSuggestionContext suggestionContext) {
|
public Lookup getLookup(FieldMapper<?> mapper, CompletionSuggestionContext suggestionContext) {
|
||||||
@ -309,6 +312,11 @@ public class AnalyzingCompletionLookupProvider extends CompletionLookupProvider
|
|||||||
AnalyzingSuggestHolder getAnalyzingSuggestHolder(FieldMapper<?> mapper) {
|
AnalyzingSuggestHolder getAnalyzingSuggestHolder(FieldMapper<?> mapper) {
|
||||||
return lookupMap.get(mapper.names().indexName());
|
return lookupMap.get(mapper.names().indexName());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long ramBytesUsed() {
|
||||||
|
return ramBytesUsed;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -272,7 +272,7 @@ public class Completion090PostingsFormat extends PostingsFormat {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public long ramBytesUsed() {
|
public long ramBytesUsed() {
|
||||||
return RamUsageEstimator.sizeOf(lookupFactory) + delegateProducer.ramBytesUsed();
|
return (lookupFactory == null ? 0 : lookupFactory.ramBytesUsed()) + delegateProducer.ramBytesUsed();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -367,5 +367,6 @@ public class Completion090PostingsFormat extends PostingsFormat {
|
|||||||
public abstract Lookup getLookup(FieldMapper<?> mapper, CompletionSuggestionContext suggestionContext);
|
public abstract Lookup getLookup(FieldMapper<?> mapper, CompletionSuggestionContext suggestionContext);
|
||||||
public abstract CompletionStats stats(String ... fields);
|
public abstract CompletionStats stats(String ... fields);
|
||||||
abstract AnalyzingCompletionLookupProvider.AnalyzingSuggestHolder getAnalyzingSuggestHolder(FieldMapper<?> mapper);
|
abstract AnalyzingCompletionLookupProvider.AnalyzingSuggestHolder getAnalyzingSuggestHolder(FieldMapper<?> mapper);
|
||||||
|
public abstract long ramBytesUsed();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -224,7 +224,7 @@ public class AnalyzingCompletionLookupProviderV1 extends CompletionLookupProvide
|
|||||||
long offset = input.readVLong();
|
long offset = input.readVLong();
|
||||||
meta.put(offset, name);
|
meta.put(offset, name);
|
||||||
}
|
}
|
||||||
|
long sizeInBytes = 0;
|
||||||
for (Map.Entry<Long, String> entry : meta.entrySet()) {
|
for (Map.Entry<Long, String> entry : meta.entrySet()) {
|
||||||
input.seek(entry.getKey());
|
input.seek(entry.getKey());
|
||||||
FST<Pair<Long, BytesRef>> fst = new FST<Pair<Long, BytesRef>>(input, new PairOutputs<Long, BytesRef>(
|
FST<Pair<Long, BytesRef>> fst = new FST<Pair<Long, BytesRef>>(input, new PairOutputs<Long, BytesRef>(
|
||||||
@ -236,9 +236,11 @@ public class AnalyzingCompletionLookupProviderV1 extends CompletionLookupProvide
|
|||||||
boolean preserveSep = (options & SERIALIZE_PRESERVE_SEPERATORS) != 0;
|
boolean preserveSep = (options & SERIALIZE_PRESERVE_SEPERATORS) != 0;
|
||||||
boolean hasPayloads = (options & SERIALIZE_HAS_PAYLOADS) != 0;
|
boolean hasPayloads = (options & SERIALIZE_HAS_PAYLOADS) != 0;
|
||||||
boolean preservePositionIncrements = (options & SERIALIZE_PRESERVE_POSITION_INCREMENTS) != 0;
|
boolean preservePositionIncrements = (options & SERIALIZE_PRESERVE_POSITION_INCREMENTS) != 0;
|
||||||
|
sizeInBytes += fst.sizeInBytes();
|
||||||
lookupMap.put(entry.getValue(), new AnalyzingSuggestHolder(preserveSep, preservePositionIncrements, maxSurfaceFormsPerAnalyzedForm, maxGraphExpansions,
|
lookupMap.put(entry.getValue(), new AnalyzingSuggestHolder(preserveSep, preservePositionIncrements, maxSurfaceFormsPerAnalyzedForm, maxGraphExpansions,
|
||||||
hasPayloads, maxAnalyzedPathsForOneInput, fst));
|
hasPayloads, maxAnalyzedPathsForOneInput, fst));
|
||||||
}
|
}
|
||||||
|
final long ramBytesUsed = sizeInBytes;
|
||||||
return new LookupFactory() {
|
return new LookupFactory() {
|
||||||
@Override
|
@Override
|
||||||
public Lookup getLookup(FieldMapper<?> mapper, CompletionSuggestionContext suggestionContext) {
|
public Lookup getLookup(FieldMapper<?> mapper, CompletionSuggestionContext suggestionContext) {
|
||||||
@ -295,6 +297,11 @@ public class AnalyzingCompletionLookupProviderV1 extends CompletionLookupProvide
|
|||||||
AnalyzingSuggestHolder getAnalyzingSuggestHolder(FieldMapper<?> mapper) {
|
AnalyzingSuggestHolder getAnalyzingSuggestHolder(FieldMapper<?> mapper) {
|
||||||
return lookupMap.get(mapper.names().indexName());
|
return lookupMap.get(mapper.names().indexName());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long ramBytesUsed() {
|
||||||
|
return ramBytesUsed;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user