Class RamAccountingTermsEnum
- java.lang.Object
-
- org.apache.lucene.index.TermsEnum
-
- org.apache.lucene.index.FilteredTermsEnum
-
- org.elasticsearch.index.fielddata.RamAccountingTermsEnum
-
- All Implemented Interfaces:
org.apache.lucene.util.BytesRefIterator
public final class RamAccountingTermsEnum extends org.apache.lucene.index.FilteredTermsEnum
TermsEnum
that takes a CircuitBreaker, increasing the breaker every time.next(...)
is called. Proxies all methods to the original TermsEnum otherwise.
-
-
Constructor Summary
Constructors Constructor Description RamAccountingTermsEnum(org.apache.lucene.index.TermsEnum termsEnum, CircuitBreaker breaker, AbstractIndexFieldData.PerValueEstimator estimator, java.lang.String fieldName)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected org.apache.lucene.index.FilteredTermsEnum.AcceptStatus
accept(org.apache.lucene.util.BytesRef term)
Always accept the term.void
flush()
Flush theflushBuffer
to the breaker, incrementing the total bytes and resetting the buffer.long
getTotalBytes()
org.apache.lucene.util.BytesRef
next()
Proxy to the original next() call, but estimates the overhead of loading the next term.
-
-
-
Constructor Detail
-
RamAccountingTermsEnum
public RamAccountingTermsEnum(org.apache.lucene.index.TermsEnum termsEnum, CircuitBreaker breaker, AbstractIndexFieldData.PerValueEstimator estimator, java.lang.String fieldName)
-
-
Method Detail
-
accept
protected org.apache.lucene.index.FilteredTermsEnum.AcceptStatus accept(org.apache.lucene.util.BytesRef term) throws java.io.IOException
Always accept the term.- Specified by:
accept
in classorg.apache.lucene.index.FilteredTermsEnum
- Throws:
java.io.IOException
-
flush
public void flush()
Flush theflushBuffer
to the breaker, incrementing the total bytes and resetting the buffer.
-
next
public org.apache.lucene.util.BytesRef next() throws java.io.IOException
Proxy to the original next() call, but estimates the overhead of loading the next term.- Specified by:
next
in interfaceorg.apache.lucene.util.BytesRefIterator
- Overrides:
next
in classorg.apache.lucene.index.FilteredTermsEnum
- Throws:
java.io.IOException
-
getTotalBytes
public long getTotalBytes()
- Returns:
- the total number of bytes that have been aggregated
-
-