Skip to content

Releases: redisson/redisson

redisson-3.50.0

17 Jun 12:55
Compare
Choose a tag to compare

Feature - Apache Tomcat SSO integration (thanks to @cogniware and @iamrakesh)
Feature - Valkey and Redis url may contain password only (thanks to @noxvost)

Fixed - Redisson can't connect to Azure Managed Redis Cluster (thanks to @beetlebugorg)
Fixed - commons-codec and json-smart libs updated
Fixed - IllegalArgumentException: tickDuration : 0 (expected: > 0) error is thrown

redisson-3.49.0

04 Jun 08:49
Compare
Choose a tag to compare

Feature - RClusteredScoredSortedSetRx, RClusteredScoredSortedSetReactive interfaces added for RClusteredScoredSortedSet object
Feature - iteratorAsync() methods added to RSet object (thanks to @seakider)
Feature - readAllKeySetAsync(pattern), readAllValuesAsync(pattern) and readAllEntrySetAsync() methods added to RMap interface (thanks to @seakider)
Feature - Redisson PRO license key can be defined through redisson.pro.key key stored in Valkey or Redis

Fixed - local cache update in putIfAbsent(), fastPutIfExists() and fastPutIfAbsent() methods of RLocalCachedMapCache and RClusteredLocalCachedMapCache objects
Fixed - RLocalCachedMapCacheNative object in storeMode = LOCALCACHE may allocate extra connections and miss updates if syncStrategy = UPDATE
Fixed - RLocalCachedMapCacheNative.putIfAbsent() method doesn't update local cache
Fixed - RClusteredLocalCachedMapCacheNative object in storeMode = LOCALCACHE may allocate extra connections and miss updates if syncStrategy = UPDATE
Fixed - RClusteredLocalCachedMapCacheNative.putIfAbsent() method doesn't update local cache
Fixed - RClusteredLocalCachedMapCache object in storeMode = LOCALCACHE may allocate extra connections and miss updates if syncStrategy = UPDATE
Fixed - RLocalCachedMapCache object in storeMode = LOCALCACHE may allocate extra connections and miss updates if syncStrategy = UPDATE
Fixed - put(), fastPutIfAbsent(), putIfAbsent() methods of RLocalCachedMapCacheV2 in storeMode = LOCALCACHE may allocate extra connections and miss updates if syncStrategy = UPDATE
Fixed - RLocalCachedJsonStore object in storeMode = LOCALCACHE may allocate extra connections and miss updates if syncStrategy = UPDATE
Fixed - missed classes added to the Hibernate 7 module
Fixed - retryAttempts setting value limit (thanks to @seakider)
Fixed - RObject.rename() method doesn't work in batch mode if the new and old name slots match
Fixed - minTimeout value calculation for HashedWheelTimer object
Fixed - codec, loader and writer settings can't be parsed in Micronaut cache yaml configuration
Fixed - environment variables for Redisson configuration can't be used with Micronaut 4

redisson-3.48.0

27 May 10:38
Compare
Choose a tag to compare

Feature - retryDelay and reconnectionDelay settings added, allowing to define a delay strategy. Available implementations: FullJitterDelay, EqualJitterDelay, DecorrelatedJitterDelay and ConstantDelay. Default is EqualJitterDelay
Feature - Vector Set object added
Feature - Spring Data Redis 3.5.0 implementation
Feature - Hibernate 7 support added

Improvement - RClusteredMapCache eviction process optimization

Fixed - RLocalCachedMap with storeMode = LOCALCACHE may allocate extra connections and miss updates if syncStrategy = UPDATE
Fixed - RClusteredLocalCachedMap with storeMode = LOCALCACHE may allocate extra connections and miss updates if syncStrategy = UPDATE
Fixed - RLocalCachedMapCacheV2 with storeMode = LOCALCACHE may allocate extra connections and miss updates if syncStrategy = UPDATE
Fixed - RLocalCachedMapCacheV2 local cache updates
Fixed - QueueTransferTask throws NPE
Fixed - unknown command error is thrown if RLock object is used on Valkey Serverless deployment
Fixed - the count parameter of RMap.valuesAsync() method should not affect result
Fixed - NOSCRIPT error is thrown after failover by RLock methods
Fixed - RESP3 boolean value parsing

redisson-3.47.0

21 May 09:44
Compare
Choose a tag to compare

Feature - ReliableFanout object added
Feature - processingMode setting added to RReliableQueue config
Feature - listeners added to RReliableQueue object
Feature - metrics added to RReliableQueue object
Feature - disableOperation() and enableOperation() methods added to RReliableQueue object
Feature - get() and getAll() methods added to RReliableQueue object
Feature - pollBatchSize, visibilityTimeout, negativeAcknowledgeDelay consumer settings added to Spring Cloud Stream Binder
Feature - RReliableQueue implements RDestroyable interface
Feature - readDiffEntries(), readIntersectionEntries(), readUnionEntries() methods added to RScoredSortedSet (thanks to @seakider)
Feature - valkeyCapabilities setting added

Improvement - script logging in error message if useScriptCache = true
Improvement - RReliableQueue data structure optimization

Fixed - RClusteredLocalCachedMap.fastPut() method causes netty buffer leak if storeMode = LOCALCACHE
Fixed - RReliableQueue.size() method result shouldn't include delayed messages amount
Fixed - Spring Cache.getNativeCache() returns incorrect instance
Fixed - exessive connections creation for RClusteredLocalCachedMap and RClusteredLocalCachedMapCache if 'reconnectionStrategy = LOAD'
Fixed - readUnion(), readIntersection(), readDiff() methods of RSetCache throw exception
Fixed - New connection opened for each write operation after failover in Sentinel mode (thanks to @seakider)
Fixed - Micronaut 4.x connects only to a single node
Fixed - RedisURI(String) constructor doesn't set the hashCode
Fixed - Spring Data Redis addMessageListener() method hangs if multiple listeners added to the same topic or pattern
Fixed - detection of WAIT and WAITAOF commands availability
Fixed - JCacheManager does not remove cache instance from map when calling closeCache() (thanks to @seakider)
Fixed - starvation of pub/sub connections may cause a memory leak
Fixed - RMap.loadAll() method may hang in Cluster
Fixed - None of slaves were synced exception is thrown
Fixed - Spring Data Redis ReactiveZSetCommands.zadd() default param (thanks to @lookroot)

redisson-3.46.0

29 Apr 11:37
Compare
Choose a tag to compare

Feature - Reliable Queue object added. RDelayedQueue and RBoundedBlockingQueue have been deprecated
Feature - fairLockWaitTimeout Redisson setting added (thanks to @seakider)
Feature - credentialsReapplyInterval Redisson setting added (thanks to @seakider)
Feature - support for JDK Atomic objects in Kryo5Codec (thanks to @bergander)
Feature - WorkerOptions.tasksInjector setting added (thanks to @zzhlhc)

Breaking change - Spring Cloud Stream Binder queue implementation replaced with RReliableQueue object
Breaking change - RedisPubSubConnection.removeListener() and RedisPubSubConnection.addListener() methods signature changed

Improvement - useScriptCache setting is true by default
Improvement - Add check for keepAliveTime and rateInterval in RRateLimiter (thanks to @shrink)

Fixed - data leak in RReliableTopic (thanks to @Chengzhi1803472613)
Fixed - PubSub stops working after Redis restart in sentinel mode (thanks to @seakider)
Fixed - CommandAsyncService.syncedEval() method doesn't update correctly available secondary nodes
Fixed - expire-after-write and expire-after-access settings aren't applied to async Micronaut Cache
Fixed - RBatch exception object doesn't contain suppressed exceptions
Fixed - RRemoteService fails to operate if codec defined as an anonymous inner class
Fixed - Watchdog fails to renew on reentry locks (thanks to @seakider)
Fixed - RKeys.unlinkByPattern() and RKeys.deleteByPattern() methods don't handle keys with non-ASCII characters
Fixed - RenewalTask throws IndexOutOfBoundsException

redisson-3.45.1

18 Mar 07:00
Compare
Choose a tag to compare

Fixed - Issue with asynchronous Micronaut @Cacheable methods (thanks to @seakider)
Fixed - RExecutorService.submitAsync() throws a script error (thanks to @seakider)
Fixed - isSlaveNotUsed() method isn't called if a new slave node added to Redis Cluster (thanks to @seakider)
Fixed - error thrown by RLiveObject running with AWS ElastiCache Serverless Valkey
Fixed - RLocalCachedMap SYNC strategy doesn't work with fastPutIfExists(), fastPutIfAbsent() methods (thanks to @seakider)
Fixed - RDelayedQueue object cannot get anything when server run a long time (thanks to @seakider)
Fixed - LockEntry throws NPE
Fixed - Hibernate region_prefix configuration doesn't apply to key redisson-hibernate-timestamp (thanks to @seakider)
Fixed - MasterConnectionPool might throw an NPE
Fixed - Inconsistent MaxInactiveInterval Setting in Sessions in multi-node (thanks to @seakider)
Fixed - Out of Memory error
Fixed - a new attempt should be made on ERR WAIT error during failover (thanks to @seakider)

redisson-3.45.0

21 Feb 07:09
Compare
Choose a tag to compare

Feature - added max-size setting for Quarkus Cache
Feature - RedissonSpringCacheV2Manager and RedissonSpringLocalCachedCacheV2Manager support maxSize setting
Feature - RedissonRegionV2Factory and RedissonLocalCachedV2RegionFactory in Hibernate support eviction.max_entries setting
Feature - RedissonCacheV2 and RedissonLocalCachedCacheV2 in MyBatis support maxSize settings
Feature - maxSize setting support by redisson.caches-v2.* and redisson.local-caches-v2.* cache configurations in Micronaut
Feature - RMapCacheV2.setMaxSize() method added
Feature - RClusteredLocalCachedMapCacheNative object added with data partitioning, local cache and native eviction
Feature - RedissonClusteredSpringLocalCachedCacheNativeManager object added with data partitioning, local cache and native eviction
Feature - added Micronaut redisson.clustered-local-caches-native.* cache with data partitioning, local cache and native eviction
Feature - added Hibernate RedissonClusteredLocalCachedNativeRegionFactory cache with data partitioning, local cache and native eviction
Feature - added Quarkus CLUSTERED_LOCALCACHE_NATIVE cache with data partitioning, local cache and native eviction
Feature - added MyBatis RedissonClusteredLocalCachedCacheNative cache with data partitioning, local cache and native eviction
Feature - added JCache implementation with local cache and advanced eviction
Feature - added JCache implementation with local cache and native eviction
Feature - added JCache implementation with data partitioning, local cache and native eviction
Feature - ability to set eviction mode via Spring CacheConfig object (thanks to @JKord)
Feature - RBitSet.get(long...) method added (thanks to @seakider)
Feature - RBlockingQueue.pollLastFromAnyWithName() method added (thanks to @seakider)
Feature - getReferenceCount(), getAccessFrequency(), getInternalEncoding() methods added to RObject interface (thanks to @seakider)
Feature - RExecutorService.deregisterWorkers() method added
Feature - valuesAsync() and entrySetAsync methods added to RMap interface (thanks to @seakider)

Improvement - validate PARAMS in RSearch.search() method (thanks to @seakider)

Fixed - delete() method doesn't work in non-clustered mode for RLocalCachedJsonStore, RLocalCachedMapCacheV2 objects
Fixed - clustered local cached JCache doesn't use storeCacheMiss setting
Fixed - JCache with native and advanced eviction don't work in cluster mode
Fixed - clustered local cached JCache.put() method may throw a CROSSLOT error
Fixed - put() method of local cached JCache instance may not update local cache
Fixed - remove() and removeAll() methods of local cached JCache instance don't update the local cache of other instances
Fixed - putAll() and clear() methods of JCacheV2 may not work
Fixed - RedissonClusteredSpringCacheNativeManager properties validation
Fixed - RedissonSpringLocalCachedCacheV2Manager properties validation
Fixed - RedissonSpringLocalCachedCacheNativeManager can't be created using a yaml configuration file
Fixed - RedissonSpringLocalCachedCacheNativeManager throws an ClassCastException if cache wasn't defined in the configuration
Fixed - RLocalCachedMapCache.getAll() method may return an incorrect result
Fixed - RLocalCachedMapCacheNative.getAll() method may return an incorrect result
Fixed - missed implementation of expireEntriesIfNotSet(), expireEntriesIfLess() and expireEntriesIfGreater() methods of RClusteredMapCacheNative
Fixed - missed implementation of expireEntriesIfLess() and expireEntriesIfGreater() methods of RLocalCachedMapCacheNative
Fixed - RJsonStore.isExists() method doesn't work
Fixed - JCacheV2 entry name generation fixed
Fixed - RMapCacheV2.isExists() method optimization
Fixed - RedissonSpringLocalCachedCacheV2Manager throws an ClassCastException if cache wasn't defined in the configuration
Fixed - RedissonSpringLocalCachedCacheV2Manager can't be created using a yaml configuration file
Fixed - RLocalCachedMapCacheV2, RLocalCachedJsonStore, RSetV2, RSetCacheV2, JCacheV2, RMapCacheV2 don't work if useScriptCache = true
Fixed - LUA error when RedissonMapCache.putAll(Map) is invoked with listeners (thanks to @max.huang)
Fixed - ProtobufCodec compatibility with the latest protobuf version (thanks to @zzhlhc)
Fixed - RFairLock attempt to compare nil with number (thanks to @seakider)
Fixed - incorrect parsing of PubSubType.UNSUBSCRIBE command with non-English locale
Fixed - RRemoteExecutorService expiration sorted set is growing indefinitely (thanks to @seakider)
Fixed - Quarkus shutdown process fails if version 3.18 or higher
Fixed - notifyUpdate() and notifyInvalidate() methods of LocalCacheListener might throw NPE
Fixed - RBatchRx may work incorrectly if useScriptCache = true

redisson-3.44.0

27 Jan 11:19
Compare
Choose a tag to compare

Feature - native eviction implemented for JCache API
Feature - advanced eviction implemented for JCache API
Feature - RKeyAsync.getKeysAsync() method added (thanks to @seakider)
Feature - added commandsMap setting to CommandsLoadBalancer object
Feature - added regex setting to RandomLoadBalancer and RoundRobinLoadBalancer objects to filter nodes
Feature - Unix Domain Socket (UDS) support for a single mode through "redis+uds://" or "valkey+uds://" scheme
Feature - lockWatchdogBatchSize setting added

Fixed - RBuckets.get() method doesn't use nameMapper in single mode
Fixed - valkeys scheme can't be used in Sentinel mode
Fixed - closed channel detection during connection ping process
Fixed - RSearch throws an error if nocontent param defined (thanks to @seakider)
Fixed - RemovedListener is invoked incorrectly by JCache.getAll() method
Fixed - synthetic class shouldn't be allowed to be used as a comparator for RPriorityQueue objects
Fixed - master node address isn't resolved through NatMapper object in Sentinel mode (tnanks @aramperes)
Fixed - STOPWORDS 0 can't be defined during RSearch index creation
Fixed - RScript.evalSha() method doesn't work in cluster mode
Fixed - task id duplication check added to RScheduledExecutorService methods
Fixed - failover handling in Sentinel mode
Fixed - Micronaut Session.put() method doesn't remove an entry if value = null
Fixed - RReadWriteLock.unlock() method doesn't respect the lock owner
Fixed - lock watchdog doesn't renew RLock if an expection has been thrown

redisson-3.43.0

13 Jan 10:03
Compare
Choose a tag to compare

Feature - RObservable interface for listeners added for RLock objects (thanks to @seakider)

Fixed - RExecutorService workers stop working (regression since 3.42.0) (thanks to @seakider)
Fixed - RLocalCacheMap.remove() method hangs if called inside a transaction
Fixed - poll methods of RTimeSeries and RScoredSortedSet objects return null instead of empty lists
Fixed - RSet.containsEach() method returns null instead of empty list
Fixed - RLocalCachedMap.fastRemove() method may throw NPE if storeMode = LOCALCACHE

redisson-3.42.0

07 Jan 11:41
Compare
Choose a tag to compare

Feature - listeners support in Spring's CacheConfig object (thanks to @seakider)
Feature - CLIENT LIST command support for Spring Data (thanks to @seakider)
Feature - cluster nodes state added in node ... hasn't been discovered yet error
Feature - onConnectFailed() and onPingFailed() methods with an error argument added to FailedNodeDetector object
Feature - support of "valkey" and "valkeys" schemes in urls

Fixed - RScheduledExecutorService tasks might not be canceled (thanks to @seakider)
Fixed - MASTERDOWN error handling
Fixed - RBloomFilter.contains() should return false if the filter doesn't exist (thanks to @seakider)
Fixed - RRemoteService calls do not throw RemoteServiceTimeoutException, leaving threads stuck (thanks to @seakider)
Fixed - RMap.addAndGet() method doesn't work with MapWriter
Fixed - RScheduledExecutorService tasks are not running on the next executor if the app was killed (thanks to @seakider)
Fixed - RListMultimapReactive.get() and RSetMultimapReactive.get() methods return object with methods which throw exceptions
Fixed - RPriorityBlockingQueue.take() method consumes an element even after the calling thread has been interrupted
Fixed - RExecutorService result futures might be never completed
Fixed - RRemoteService shouldn't allocate a new worker if requestQueue is empty
Fixed - RListMultimapReactive.get() method doesn't work (thanks to @kramer)
Fixed - RListMultimapRx.get() method doesn't work
Fixed - destroy() method doesn't work if called immediately after creation of RDelayedQueue object

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy