dcache icon indicating copy to clipboard operation
dcache copied to clipboard

Use Caffeine instead of Guava for caching.

Open LukasMansour opened this issue 2 years ago • 3 comments
trafficstars

Motivation: Work towards #4087

Modification: Replace's Guava's caching with Caffeine. Caffeine is the google-supported alternative to guava's caches, that importantly uses CompletableFutures instead of ListenableFutures. Guava does not plan to ever add this support and only does bug-fixes for Guava's caches.

It's important to remember, that the 'async' terminology used in Guava/Caffeine varies from the JDK's 'async' terminology. As such some issues may arise during translation from one library to the other. But for most cases, one will see that the translation is very straight-forward.

I recommend this for the release after 9.2.

Result: Replaces all uses of Guava's cache with Caffeine's cache and #4087 is now feasible without having to wrap ListenableFutures in CompletableFutures. With these commits It's possible to completely remove any import on ListenableFuture, this is however not done yet in this commit.

Signed-off-by: Lukas Mansour [email protected]

LukasMansour avatar Sep 25 '23 07:09 LukasMansour

ok to test

kofemann avatar Oct 01 '23 18:10 kofemann

retest this please

kofemann avatar Oct 06 '23 13:10 kofemann

@LukasMansour could you please rebase to the current master

kofemann avatar Feb 29 '24 17:02 kofemann