In our application we are using Java futures to asynchronously retrieve data from an external Redis instance. The Redis library we use using is Lettuce which appears to be using CompletableFuture under-the-hood for its async commands. Ideally we would like to limit these so that queries time out after 500ms - this timeout value is extremely high as our commands typically only take a few ms.
Under high load it is expected that our application may have a GC stop-the-world time of around 1 second.
In this case would the GC pause extend the timeout period, or would it immediately throw a TimeoutException once processing begins again?