Package org.apache.lucene.index
Class QueryTimeoutImpl
java.lang.Object
org.apache.lucene.index.QueryTimeoutImpl
- All Implemented Interfaces:
QueryTimeout
An implementation of
QueryTimeout
that can be used by the ExitableDirectoryReader
class to time out and exit out when a query takes a long time to rewrite.-
Constructor Summary
ConstructorDescriptionQueryTimeoutImpl
(long timeAllowed) Sets the time at which to time out by adding the given timeAllowed to the current time. -
Method Summary
Modifier and TypeMethodDescriptionReturns time at which to time out, in nanoseconds relative to the (JVM-specific) epoch forSystem.nanoTime()
, to compare with the value returned bynanoTime()
.void
reset()
Reset the timeout value.boolean
Return true ifreset()
has not been called and the elapsed time has exceeded the time allowed.toString()
-
Constructor Details
-
QueryTimeoutImpl
public QueryTimeoutImpl(long timeAllowed) Sets the time at which to time out by adding the given timeAllowed to the current time.- Parameters:
timeAllowed
- Number of milliseconds after which to time out. UseLong.MAX_VALUE
to effectively never time out.
-
-
Method Details
-
getTimeoutAt
Returns time at which to time out, in nanoseconds relative to the (JVM-specific) epoch forSystem.nanoTime()
, to compare with the value returned bynanoTime()
. -
shouldExit
public boolean shouldExit()Return true ifreset()
has not been called and the elapsed time has exceeded the time allowed.- Specified by:
shouldExit
in interfaceQueryTimeout
- Returns:
- true if the query should stop, false otherwise
-
reset
public void reset()Reset the timeout value. -
toString
-