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
ConstructorsConstructorDescriptionQueryTimeoutImpl(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().voidreset()Reset the timeout value.booleanReturn 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_VALUEto 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:
shouldExitin interfaceQueryTimeout- Returns:
- true if the query should stop, false otherwise
-
reset
public void reset()Reset the timeout value. -
toString
-