cache2k v1.3.2.Alpha Release Notes
Release Date: 2020-08-07 // over 3 years ago-
๐ This is a preview release for evaluation purposes and should not be used in production.
๐ New and Noteworthy
- ๐ Synchronous execution of expiry listener
Possible Breakages
๐
Cache2kBuilder.addListener
will execute anEntryExpiredLister
synchronously. In version
1.2 an expiry listener was always executed asynchronously. This is an potentially incompatible
๐ change, in case expiry listeners are used. Review the existing client code and
๐ make sure that addAsyncListeners is used for anEntryExpiredLister
if that is wanted.API Changes
- ๐ Deprecated IntCache and LongCache
๐ Fixes and Improvements
- โช Revert deprecation of
ExceptionPropagator
introduced in version 1.3.1 - Internal: Improvement and simplification of
ExceptionPropagator
handling - ๐ fix missing expiry listener call after a created listener call, in case expiry during the insert
expiry
,expireAfterWrite
,refresAhead
: Fix race condition of aCache.put
and the
termination of the probation period after a refresh.Cache.invoke
/EntryProcessor
: Internal improvements when using listeners: avoid unnecessary entry reads- ๐ race of refresh and delete: if an entry is deleted via
Cache.remove
it was not
reappearing when refreshed concurrently - internal cleanup: use common code for refresh in different cache variants
- eviction efficiency fix for a few special short traces