TTLCacheQ is built on top of
System/currentTimeMillis which is not monotonic, the behavior of the cache could be affected by clock adjustments (ex NTP). My suggestion was to change it to
System/nanoTime which is monotonic and therefore more consistent to calculate the elapsed time.
If this clock adjustments effect is desired on the ttl cache maybe it should become another cache strategy with a doc on this behavior.
PS: I've created a .patch to fix this, signed the CA but I don't know where to ask for a JIRA account to open an issue.