Open
Description
Describe the bug
Cache does not expire, if .withBackOff(Duration.ofSeconds(30), Duration.ofMinutes(1)) is used after the retry command. Without it, everything works as expected.
Expected behavior
Cache shoud be expired after 5s. The rest client response should replace the old value.
Actual behavior
Cache value is not expired after 5s. Still getting the old value.
How to Reproduce?
application.properties
quarkus.cache.caffeine.expire-after-access=5S
@Path("/somePath")
@RegisterRestClient
public interface RestClient {
@CacheResult(cacheName = "foo-query")
@POST
Uni<FooModel> sendQuery(String query);
}
@ApplicationScoped
public class Application {
@RestClient
RestClient restClient;
void foo() {
restClient.sendQuery("some query")
//.onFailure().retry().indefinitely() // *** works fine ***
.onFailure().retry().withBackOff(Duration.ofSeconds(30), Duration.ofMinutes(1)).indefinitely()
.subscribe()
.with(i -> {
System.out.println(i);
});
}
}
Output of uname -a
or ver
Linux work 5.19.0-46-generic #47~22.04.1-Ubuntu
Output of java -version
20.0.1 2023-04-18
GraalVM version (if different from Java)
No response
Quarkus version or git rev
3.2.0.Final
Build tool (ie. output of mvnw --version
or gradlew --version
)
3.9.1
Additional information
No response