-
Notifications
You must be signed in to change notification settings - Fork 0
fix(deps): update redisson.version to v3.52.0 #187
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
renovate
wants to merge
1
commit into
master
Choose a base branch
from
renovate/redisson.version
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
36bf755 to
5959f83
Compare
5959f83 to
565cc05
Compare
565cc05 to
0856ba0
Compare
0856ba0 to
b263d1d
Compare
b263d1d to
1a441ce
Compare
1a441ce to
e6f699f
Compare
e6f699f to
8bcef65
Compare
8bcef65 to
e7cc862
Compare
e7cc862 to
d8f63d8
Compare
e594e00 to
d545e48
Compare
d545e48 to
1da2e1f
Compare
1da2e1f to
d40859d
Compare
d40859d to
ccd2cba
Compare
ccd2cba to
646d030
Compare
2f0759d to
11305a3
Compare
11305a3 to
06d2129
Compare
06d2129 to
2224a7e
Compare
2224a7e to
6ff37a2
Compare
6ff37a2 to
c809f40
Compare
c809f40 to
555eca9
Compare
555eca9 to
cf43f26
Compare
cf43f26 to
75d384e
Compare
75d384e to
3e6c83a
Compare
3e6c83a to
e4e46a0
Compare
e4e46a0 to
51d0015
Compare
51d0015 to
3d28b25
Compare
3d28b25 to
c58fe96
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
3.17.7→3.52.03.17.7→3.52.0Release Notes
redisson/redisson (org.redisson:redisson-spring-data-21)
v3.52.0Feature -
loadCoalescingConcurrencysetting added toRClusteredLocalCachedMapCacheobjectFeature - implemented
EntraIdCredentialsResolverfor authentication using Microsoft Entra IDFeature - added support of RStream
XDELEXcommand (thanks to @seakider)Feature - added support of RStream
XACKDELcommand (thanks to @seakider)Feature - Apache Fory -
ForyCodecaddedFeature - added
RMapCache.compute()method with ttl parameter (thanks to @seakider)Feature - added
pollFirst()&pollLast()methods toRSortedSet(thanks to @seakider)Feature - password can be specified in config endpoint url for Valkey or Redis cluster
Feature - added
WITHATTRIBSandEPSILONparameters forVSIMcommand inRVectorSetobject (thanks to @seakider)Feature -
RRateLimiter.release()method added (thanks to @moil-xm)Feature -
CredentialsResolver.nextRenewal()method addedBreaking change - VectorSimilarArgs.effort() method renamed to VectorSimilarArgs.explorationFactor()
Breaking change - VectorSimilarArgs.effort() method renamed to VectorSimilarArgs.explorationFactor()
Breaking change - VectorAddArgs.effort() method renamed to VectorAddArgs.explorationFactor()
Breaking change - VectorAddArgs.element() renamed to VectorAddArgs.name()
Breaking change - credentialsReapplyInterval setting removed and replaced with CredentialsResolver#nextRenewal()
Fixed -
Attempt to unlock lock, not locked by current thread by node iderror (thanks to @seakider)Fixed - cluster failover handling for
RBatchobjectFixed - inconsistent Command Result Filtering in Spring Data Redis Transactions/Pipelines (thanks to @pengyongqiang)
Fixed - Spring Data Reactive module:
XPENDINGmissing group (syntax error) and NPE on empty pending summary (thanks to @seakider)Fixed - NameMapper isn't applied properly for
RFairLockobject (thanks to @seakider)Fixed - Connection pool should prioritize recently used connections to allow idle connection discard
Fixed - QUIT command shouldn't be used
Fixed - ERR unknown command WAITAOF error
Fixed -
RLockobject doesn't work in MultiCluster modeFixed - redisson.license.expiration-year, redisson.license.expiration-month, redisson.license.expiration-day metrics output NaN
v3.51.0Feature -
RBitSet.diff(),diffInverse(),andOr(),setExclusive()methods addedFeature -
FieldIndex.svsVamanaVector()vector indexing added (thanks to @seakider)Feature -
checkMasterLinkStatussetting added for Cluster mode (thanks to @seakider)Feature -
RKeys.migrate()method added with auth support (thanks to @lyrric)Feature - added support of KEEPREF, DELREF and ACKED options to
RStream.trim()method (thanks to @seakider)Feature - added support of KEEPREF, DELREF and ACKED options to
RStream.add()method (thanks to @seakider)Feature - new FIRST_PRIMARY_PUBSUB_NOTIFICATION mode added to Multi Cluster
primaryDiscoveryModesettingFeature - new metrics "responses.busy", "responses.wait", "responses.tryagain", "responses.loading", "responses.ask", "responses.moved" added
Improvement -
AbstractCacheMap.removeExpiredEntries()method optimization (thanks to @lyrric)Improvement - equals/hashcode implementation added to TransactionOptions
Improvement - Cluster manager uses IP if hostname can't be resolved (thanks to @seakider)
Improvement - new API for
RStream.range(),RStream.rangeReversed()andRStream.listPending()methods (thanks to @seakider)Fixed -
RReliableQueuemessage reached delivery limit isn't removed and moved todeadLetterQueueFixed - visibility setting isn't applied if defined in
RReliableQueuequeue configFixed - license key can't be read if defined as JVM option
Fixed -
RClusteredLocalCachedMapCache.putIfAbsent()method sends incorrect local cache update date (regression since 3.49.0)Fixed -
RLocalCachedMapCacheV2.fastPutIfExists()method doesn't work (regression since 3.49.0)Fixed -
SyncStrategy.UPDATEdoesn't work forRLocalCachedJsonStoreFixed -
RClusteredLocalCachedMap.putIfAbsent()andfastPutIfAbsent()methods don't update the local cache ifstoreCacheMiss = trueFixed -
RClusteredLocalCachedMap.putIfExists()method doesn't update the local cache ifstoreCacheMiss = trueFixed -
RClusteredLocalCachedMapCache.putIfExists()andputIfAbsent()methods doesn't update the local cache ifstoreCacheMiss = trueFixed -
RClusteredLocalCachedMapCache.fastPutIfExists(),putIfExists(),putIfAbsent()andfastPutIfAbsent()methods don't update the local cache ifstoreCacheMiss = trueFixed -
RClusteredLocalCachedMapCacheNative.fastPutIfExists(),putIfExists(),putIfAbsent()andfastPutIfAbsent()methods don't update the local cache ifstoreCacheMiss = trueFixed -
RReliableQueue.get(Codec, String)method doesn't workFixed - Multi Cluster mode doesn't detect failed clusters
Fixed - null is printed in logs during connection in Cluster mode
Fixed -
RBitSet.and(),not(),or(),xor()methods return void instead of numberFixed -
RScheduledExecutorService.deregisterWorkers()method throws an exception (thanks to @seakider)Fixed -
RLocalCachedMap.putIfExists()method doesn't update the local cache ifstoreCacheMiss = trueFixed -
RLocalCachedMap.putIfAbsent()method doesn't update the local cache ifstoreCacheMiss = trueFixed -
IllegalReferenceCountExceptionis thrown when usingRClientSideCaching(thanks to @seakider)Fixed - failed Slave at Redisson start moment can't be discovered later in Cluster mode
Fixed -
INFO REPLICATIONcommand timeout loggingFixed - graalvm: Classes that should be initialized at run time got initialized during image building (thanks to @seakider)
Fixed -
DNSMonitorlogs a warning (thanks to @seakider)Fixed - race condition during elements eviction in LFU cache (thanks to @lyrric)
Fixed - when acquire by RPermitExpirableSemaphore it may fail in some case (thanks to @lyrric)
Fixed - Direct byte buffer leak when using
RLocalCachedMapwithStoreMode.LOCALCACHEforreadAllValues(),readAllMap()andreadAllEntrySet()methods (thanks to @lyrric)Fixed - DataInputStream closing to prevent resource leak in
RedissonExecutorService.getClassBody()method (thanks to @backstraw)Fixed - added missed setters and getters for Config object in
RedissonSessionManager(thanks to @jglapa)Fixed -
RPermitExpirableSemaphore.tryAcquire()doesn't work when acquiring > 1 permit (thanks to @lyrric)Fixed -
CommandMapperisn't applied properly toRScriptobject (thanks to @lyrric)Fixed - synchronization of remote and local Tomcat SSO cache (thanks to @cogniware)
Fixed -
FT.SEARCHcommand is executed only on master nodes (thanks to @pfyod)v3.50.0Feature - 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 thrownv3.49.0Feature -
RClusteredScoredSortedSetRx,RClusteredScoredSortedSetReactiveinterfaces added forRClusteredScoredSortedSetobjectFeature -
iteratorAsync()methods added toRSetobject (thanks to @seakider)Feature -
readAllKeySetAsync(pattern),readAllValuesAsync(pattern)andreadAllEntrySetAsync()methods added to RMap interface (thanks to @seakider)Feature - Redisson PRO license key can be defined through
redisson.pro.keykey stored in Valkey or RedisFixed - local cache update in
putIfAbsent(),fastPutIfExists()andfastPutIfAbsent()methods ofRLocalCachedMapCacheandRClusteredLocalCachedMapCacheobjectsFixed -
RLocalCachedMapCacheNativeobject instoreMode = LOCALCACHEmay allocate extra connections and miss updates ifsyncStrategy = UPDATEFixed -
RLocalCachedMapCacheNative.putIfAbsent()method doesn't update local cacheFixed -
RClusteredLocalCachedMapCacheNativeobject instoreMode = LOCALCACHEmay allocate extra connections and miss updates ifsyncStrategy = UPDATEFixed -
RClusteredLocalCachedMapCacheNative.putIfAbsent()method doesn't update local cacheFixed -
RClusteredLocalCachedMapCacheobject instoreMode = LOCALCACHEmay allocate extra connections and miss updates ifsyncStrategy = UPDATEFixed -
RLocalCachedMapCacheobject instoreMode = LOCALCACHEmay allocate extra connections and miss updates ifsyncStrategy = UPDATEFixed -
put(),fastPutIfAbsent(),putIfAbsent()methods ofRLocalCachedMapCacheV2instoreMode = LOCALCACHEmay allocate extra connections and miss updates ifsyncStrategy = UPDATEFixed -
RLocalCachedJsonStoreobject instoreMode = LOCALCACHEmay allocate extra connections and miss updates ifsyncStrategy = UPDATEFixed - missed classes added to the Hibernate 7 module
Fixed -
retryAttemptssetting value limit (thanks to @seakider)Fixed -
RObject.rename()method doesn't work in batch mode if the new and old name slots matchFixed - minTimeout value calculation for HashedWheelTimer object
Fixed -
codec,loaderandwritersettings can't be parsed in Micronaut cache yaml configurationFixed - environment variables for Redisson configuration can't be used with Micronaut 4
v3.48.0Feature -
retryDelayandreconnectionDelaysettings added, allowing to define a delay strategy. Available implementations:FullJitterDelay,EqualJitterDelay,DecorrelatedJitterDelayandConstantDelay. Default isEqualJitterDelayFeature - Vector Set object added
Feature - Spring Data Redis 3.5.0 implementation
Feature - Hibernate 7 support added
Improvement -
RClusteredMapCacheeviction process optimizationFixed -
RLocalCachedMapwithstoreMode = LOCALCACHEmay allocate extra connections and miss updates ifsyncStrategy = UPDATEFixed -
RClusteredLocalCachedMapwithstoreMode = LOCALCACHEmay allocate extra connections and miss updates ifsyncStrategy = UPDATEFixed -
RLocalCachedMapCacheV2withstoreMode = LOCALCACHEmay allocate extra connections and miss updates ifsyncStrategy = UPDATEFixed -
RLocalCachedMapCacheV2local cache updatesFixed -
QueueTransferTaskthrows NPEFixed - unknown command error is thrown if
RLockobject is used on Valkey Serverless deploymentFixed - the count parameter of
RMap.valuesAsync()method should not affect resultFixed -
NOSCRIPTerror is thrown after failover byRLockmethodsFixed - RESP3 boolean value parsing
v3.47.0Feature - ReliableFanout object added
Feature - processingMode setting added to
RReliableQueueconfigFeature - listeners added to
RReliableQueueobjectFeature - metrics added to
RReliableQueueobjectFeature -
disableOperation()andenableOperation()methods added toRReliableQueueobjectFeature -
get()andgetAll()methods added toRReliableQueueobjectFeature -
pollBatchSize,visibilityTimeout,negativeAcknowledgeDelayconsumer settings added to Spring Cloud Stream BinderFeature -
RReliableQueueimplementsRDestroyableinterfaceFeature -
readDiffEntries(),readIntersectionEntries(),readUnionEntries()methods added to RScoredSortedSet (thanks to @seakider)Feature -
valkeyCapabilitiessetting addedImprovement - script logging in error message if useScriptCache = true
Improvement -
RReliableQueuedata structure optimizationFixed - RClusteredLocalCachedMap.fastPut() method causes netty buffer leak if
storeMode = LOCALCACHEFixed -
RReliableQueue.size()method result shouldn't include delayed messages amountFixed - 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 patternFixed - detection of
WAITandWAITAOFcommands availabilityFixed - 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 ClusterFixed -
None of slaves were syncedexception is thrownFixed - Spring Data Redis
ReactiveZSetCommands.zadd()default param (thanks to @lookroot)v3.46.0Feature - Reliable Queue object added.
RDelayedQueueandRBoundedBlockingQueuehave been deprecatedFeature -
fairLockWaitTimeoutRedisson setting added (thanks to @seakider)Feature -
credentialsReapplyIntervalRedisson setting added (thanks to @seakider)Feature - support for JDK Atomic objects in Kryo5Codec (thanks to @bergander)
Feature -
WorkerOptions.tasksInjectorsetting added (thanks to @zzhlhc)Breaking change - Spring Cloud Stream Binder queue implementation replaced with
RReliableQueueobjectBreaking change - RedisPubSubConnection.removeListener() and RedisPubSubConnection.addListener() methods signature changed
Improvement -
useScriptCachesetting is true by defaultImprovement - Add check for
keepAliveTimeandrateIntervalin 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 nodesFixed -
expire-after-writeandexpire-after-accesssettings aren't applied to async Micronaut CacheFixed -
RBatchexception object doesn't contain suppressed exceptionsFixed -
RRemoteServicefails to operate if codec defined as an anonymous inner classFixed - Watchdog fails to renew on reentry locks (thanks to @seakider)
Fixed -
RKeys.unlinkByPattern()andRKeys.deleteByPattern()methods don't handle keys with non-ASCII charactersFixed -
RenewalTaskthrowsIndexOutOfBoundsExceptionv3.45.1Fixed - 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 -
RLocalCachedMapSYNC strategy doesn't work withfastPutIfExists(),fastPutIfAbsent()methods (thanks to @seakider)Fixed -
RDelayedQueueobject cannot get anything when server run a long time (thanks to @seakider)Fixed - LockEntry throws NPE
Fixed - Hibernate
region_prefixconfiguration doesn't apply to keyredisson-hibernate-timestamp(thanks to @seakider)Fixed -
MasterConnectionPoolmight throw an NPEFixed - 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 WAITerror during failover (thanks to @seakider)v3.45.0Feature - added
max-sizesetting for Quarkus CacheFeature -
RedissonSpringCacheV2ManagerandRedissonSpringLocalCachedCacheV2Managersupport maxSize settingFeature -
RedissonRegionV2FactoryandRedissonLocalCachedV2RegionFactoryin Hibernate support eviction.max_entries settingFeature -
RedissonCacheV2andRedissonLocalCachedCacheV2in MyBatis supportmaxSizesettingsFeature -
maxSizesetting support byredisson.caches-v2.*andredisson.local-caches-v2.*cache configurations in MicronautFeature -
RMapCacheV2.setMaxSize()method addedFeature -
RClusteredLocalCachedMapCacheNativeobject added with data partitioning, local cache and native evictionFeature -
RedissonClusteredSpringLocalCachedCacheNativeManagerobject added with data partitioning, local cache and native evictionFeature - added Micronaut
redisson.clustered-local-caches-native.*cache with data partitioning, local cache and native evictionFeature - added Hibernate
RedissonClusteredLocalCachedNativeRegionFactorycache with data partitioning, local cache and native evictionFeature - added Quarkus
CLUSTERED_LOCALCACHE_NATIVEcache with data partitioning, local cache and native evictionFeature - added MyBatis
RedissonClusteredLocalCachedCacheNativecache with data partitioning, local cache and native evictionFeature - 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
CacheConfigobject (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()andentrySetAsyncmethods added toRMapinterface (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,RLocalCachedMapCacheV2objectsFixed - clustered local cached JCache doesn't use
storeCacheMisssettingFixed - JCache with native and advanced eviction don't work in cluster mode
Fixed - clustered local cached
JCache.put()method may throw a CROSSLOT errorFixed -
put()method of local cached JCache instance may not update local cacheFixed -
remove()andremoveAll()methods of local cached JCache instance don't update the local cache of other instancesFixed -
putAll()andclear()methods of JCacheV2 may not workFixed -
RedissonClusteredSpringCacheNativeManagerproperties validationFixed -
RedissonSpringLocalCachedCacheV2Managerproperties validationFixed -
RedissonSpringLocalCachedCacheNativeManagercan't be created using a yaml configuration fileFixed -
RedissonSpringLocalCachedCacheNativeManagerthrows anClassCastExceptionif cache wasn't defined in the configurationFixed -
RLocalCachedMapCache.getAll()method may return an incorrect resultFixed -
RLocalCachedMapCacheNative.getAll()method may return an incorrect resultFixed - missed implementation of
expireEntriesIfNotSet(),expireEntriesIfLess()andexpireEntriesIfGreater()methods of RClusteredMapCacheNativeFixed - missed implementation of
expireEntriesIfLess()andexpireEntriesIfGreater()methods of RLocalCachedMapCacheNativeFixed -
RJsonStore.isExists()method doesn't workFixed - JCacheV2 entry name generation fixed
Fixed -
RMapCacheV2.isExists()method optimizationFixed -
RedissonSpringLocalCachedCacheV2Managerthrows an ClassCastException if cache wasn't defined in the configurationFixed -
RedissonSpringLocalCachedCacheV2Managercan't be created using a yaml configuration fileFixed -
RLocalCachedMapCacheV2,RLocalCachedJsonStore,RSetV2,RSetCacheV2,JCacheV2,RMapCacheV2don't work ifuseScriptCache = trueFixed - LUA error when
RedissonMapCache.putAll(Map)is invoked with listeners (thanks to @max.huang)Fixed -
ProtobufCodeccompatibility with the latest protobuf version (thanks to @zzhlhc)Fixed -
RFairLockattempt to compare nil with number (thanks to @seakider)Fixed - incorrect parsing of
PubSubType.UNSUBSCRIBEcommand with non-English localeFixed -
RRemoteExecutorServiceexpirationsorted set is growing indefinitely (thanks to @seakider)Fixed - Quarkus shutdown process fails if version 3.18 or higher
Fixed -
notifyUpdate()andnotifyInvalidate()methods ofLocalCacheListenermight throw NPEFixed -
RBatchRxmay work incorrectly ifuseScriptCache = truev3.44.0Feature - native eviction implemented for JCache API
Feature - advanced eviction implemented for JCache API
Feature -
RKeyAsync.getKeysAsync()method added (thanks to @seakider)Feature - added
commandsMapsetting toCommandsLoadBalancerobjectFeature - added
regexsetting toRandomLoadBalancerandRoundRobinLoadBalancerobjects to filter nodesFeature - Unix Domain Socket (UDS) support for a single mode through "redis+uds://" or "valkey+uds://" scheme
Feature -
lockWatchdogBatchSizesetting addedFixed -
RBuckets.get()method doesn't use nameMapper in single modeFixed -
valkeysscheme can't be used in Sentinel modeFixed - closed channel detection during connection ping process
Fixed - RSearch throws an error if nocontent param defined (thanks to @seakider)
Fixed -
RemovedListeneris invoked incorrectly byJCache.getAll()methodFixed - synthetic class shouldn't be allowed to be used as a comparator for
RPriorityQueueobjectsFixed - 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 modeFixed - task id duplication check added to
RScheduledExecutorServicemethodsFixed - failover handling in Sentinel mode
Fixed - Micronaut
Session.put()method doesn't remove an entry if value = nullFixed -
RReadWriteLock.unlock()method doesn't respect the lock ownerFixed - lock watchdog doesn't renew RLock if an expection has been thrown
v3.43.0Feature -
RObservableinterface for listeners added for RLock objects (thanks to @seakider)Fixed -
RExecutorServiceworkers stop working (regression since 3.42.0) (thanks to @seakider)Fixed -
RLocalCacheMap.remove()method hangs if called inside a transactionFixed - poll methods of
RTimeSeriesandRScoredSortedSetobjects return null instead of empty listsFixed -
RSet.containsEach()method returns null instead of empty listFixed -
RLocalCachedMap.fastRemove()method may throw NPE ifstoreMode = LOCALCACHEv3.42.0Feature - 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 yeterrorFeature -
onConnectFailed()andonPingFailed()methods with an error argument added toFailedNodeDetectorobjectFeature - support of "valkey" and "valkeys" schemes in urls
Fixed -
RScheduledExecutorServicetasks might not be canceled (thanks to @seakider)Fixed -
MASTERDOWNerror handlingFixed -
RBloomFilter.contains()should return false if the filter doesn't exist (thanks to @seakider)Fixed -
RRemoteServicecalls do not throw RemoteServiceTimeoutException, leaving threads stuck (thanks to @seakider)Fixed -
RMap.addAndGet()method doesn't work with MapWriterFixed -
RScheduledExecutorServicetasks are not running on the next executor if the app was killed (thanks to @seakider)Fixed -
RListMultimapReactive.get()andRSetMultimapReactive.get()methods return object with methods which throw exceptionsFixed -
RPriorityBlockingQueue.take()method consumes an element even after the calling thread has been interruptedFixed -
RExecutorServiceresult futures might be never completedFixed -
RRemoteServiceshouldn't allocate a new worker if requestQueue is emptyFixed -
RListMultimapReactive.get()method doesn't work (thanks to @kramer)Fixed -
RListMultimapRx.get()method doesn't workFixed -
destroy()method doesn't work if called immediately after creation ofRDelayedQueueobjectv3.41.0Feature -
RPermitExpirableSemaphore.getLeaseTime()method added (thanks to @seakider)Feature -
sslVerificationModesetting addedFixed -
RPermitExpirableSemaphore.release(java.util.List)shouldn't release permits if one of them doesn't exist (thanks to @seakider)Fixed -
RTopiclisteners leak if they are defined as a lambdaFixed -
RPriorityBlockingQueue.draintTo()method shouldn't resend command on response timeoutFixed -
RandomXoshiro256PlusPlusmight block Redisson initializationv3.40.2Improvement - optimization LRUCacheMap speed by up to 200x
Fixed - Quarkus config parsing with sentinel nodes (thanks to @blacksails)
Fixed - starvation of pub/sub connections may cause a memory leak
v3.40.1Improvement - Netty pending tasks amount report in timeout exceptions
Fixed - Redis or Valkey hostname parsing
Fixed -
NoClassDefFoundErroris thrown during run with Spring Boot 3.4.0 in GraalVM native modeFixed -
RTopicandRShardedTopicfail to resubscribe after node's DNS record change (regression since 3.27.0)v3.40.0Feature - metrics added to
RClusteredTopic,RReliableTopic,RClusteredReliableTopic,RShardedTopic,RJsonStoreandRLocalCachedJsonStoreobjectsFeature - Spring Data Redis 3.4.x module added
Feature - Spring Boot upgraded to 3.4.0
Feature -
setIfLess()andsetIfGreater()methods added toRAtomicDoubleandRAtomicLongobjects (thanks to @seakider)Feature -
RMultimap.fastReplaceValues()method added (thanks to @davidreis97)Fixed - IPV6 uris with braces are parsed incorrectly
Fixed - minCleanUpDelay setting isn't applied during the first run of the EvictionTask
Fixed - master node shouldn't be changed on new ip addition for AWS Serverless endpoint
Fixed - Quarkus native build requires Snappy library
Fixed - Quarkus 3.14+ compatibility
Fixed -
RBitSet.length()method returns unexpected value and caused RedisException in some case (thanks to @seakider)Fixed -
TypedJsonJacksonCodecdoesn't catch Exception (thanks to @lyrric)v3.39.0Feature - partitioning implementation for
RTopicobjectFeature - partitioning implementation for
RShardedTopicobjectFeature - partitioning implementation for
RReliableTopicobjectFeature - ZStandard compression codec added (ZStdCodec)
Feature - ability to register listeners for
RListMultimapandRSetMultimapobjectsFeature - ability to register listeners for
RTimeSeriesobjectFixed - possible race-condition in
RMapCache.computeIfAbsent()methodFixed - possible race-condition in
computeIfAbsent(),computeIfPresent()methods of RMap objectFixed -
RMapCache.computeIfAbsentAsync()method isn't implementedFixed - use CursorId in ScanIteration to avoid long overflow in Spring Data 3.3 implementation (thanks to @vlastikcz)
Fixed - unable to cancel a task created by
RExecutorService.scheduleAtFixedRate()method (thanks to @zcxsythenew)Fixed - potential LocalCache memory leak if useObjectAsCacheKey = true (thanks to @lehuuthanh5)
Fixed - EntryListener is not working on Turkish language Windows 10
Fixed - Redisson shutdown exception is thrown during background process of expired Tomcat sessions
Fixed - some methods of Reactive and RxJava API don't work in GraalVM native image
Fixed -
RTransactionRxandRTransactionReactivedon't work in GraalVM native imageFixed -
JsonJacksonCodecdoesn't work in GraalVM native imageFixed - NPE is thrown if
RExecutorServicetask submitted in GraalVM native imageFixed -
RObject.rename()method does not replace an existing structure in cluster modev3.38.1Fixed - Kryo codec upgraded to 5.6.2 for JDK 8 compatibility (thanks to @Wujiaxuan007)
Fixed - pollAsync() and removeAsync() methods of RPriorityQueue and RPriorityDeque objects aren't guarded properly with lock
Fixed - Spring Cache
Cacheable(sync)annotation loads value multiple times for reactive types or completableFuturev3.38.0Feature - Local cache for Live Object Service support
Feature - RClientSideCaching object added. Client side caching through RESP3 protocol
Feature - Tomcat 11 support
Feature -
RBatch.getSearch()method added (thanks to @pfyod)Feature -
RedissonClient.getMultiLock()method added for locking on objects (thanks to @lyrric)Feature -
RPatternTopic.removeListener()accepts multiple idsFeature -
LocalCachedMapOptions.useTopicPattern()setting addedFeature - InetAddress and SocketAddress serialization added to Kryo5Codec
Breaking change - RLongAdder and RDoubleAdder topic channel name has been renamed
Improvement - timeToLive parameter renamed to keepAliveTime for RRateLimiter.
trySetRate()andsetRate()methods (thanks to @lyrric)Improvement - Add check, The parameter timeToLive should be greater than or equal to rateInterval (thanks to @lyrric)
Fixed -
lazyInitialization=truedoesn't work in cluster mode (regression since 3.27.0)Fixed - Spring Cache @Cacheable(sync) doesn't work with reactive types or completableFuture
Fixed - Pub/Sub connections randomly disconnecting (regression since 3.26.0) (thanks to @Wujiaxuan007)
Fixed -
RLiveObjectService.persist()andmerge()methods, when called with multiple arguments, return detached objectsFixed -
RJsonBucketReactiveandRJsonBucketRxuse Reactive Types as argumentsFixed -
ClassNotFoundExceptionis thrown when a LiveObject expiresFixed - Micronaut native image build
Fixed - Quarkus native image build
Fixed -
RSearch.info()method throws an exception on infinity values (thanks to @iamtakingiteasy)v3.37.0Feature -
findCommon()andfindCommonLength()methods added toRBucketobjectFeature -
RMapCache.computeIfAbsent()method with TTL parameter added (thanks to @lyrric)Feature - Apache Tomcat
RedissonSessionManager.setConfig()method added (thanks to @jglapa)Feature -
LocalCachedMapOptions.useObjectAsCacheKey()setting added (thanks to @lehuuthanh5)Feature -
trySetRate()andsetRate()methods with TTL parameter added toRRateLimiterobjectFeature -
RKeys.getKeys()method with type parameter addedImprovement -
RRemoteServicemethod calls optimizationFixed - Spring Data Redis method
RedisSetCommands.isMember()doesn't workFixed - Spring Data Redis
xcaim()andxClaimJustId()methods don't use getMinIdleTime() parameter (thanks to @jinia91)Fixed -
retainAll()andcontainsAll()methods ofRSetobject throw "too many results to unpack" errorFixed -
ServiceManager.execute()method may hang in case of exceptionFixed -
RedissonNode.shutdown()method doesn't stop executorsFixed - listeners reattach process should be stopped on Redisson shutdown
Fixed -
BiHashMapusage removedFixed - 100% CPU usage by CommandsQueue in rare cases
Fixed -
ProtobufCodecdoesn't work withCompositeCodecv3.36.0Feature -
Kryo5CodecuseReferencessetting addedFeature -
RListMultimapCacheNativeandRSetMultimapCacheNativeobjects added. Require Redis 7.4+Feature -
AggregationOptions.sortBy()method withwithCountparameter added (thanks to @pfyod)Feature -
allowedClassessetting added toFuryCodecFeature -
addIfAbsent(Map)method added toRSetCacheobject (thanks to @lyrric)Improvement - 'hmget' should be instead of 'hget' in
RMapCache.getAllWithTTLOnly()methodFixed - RedisExecutor throws "Failed to submit a listener notification task" error during shutdown
Fixed - Keep the jmockit version in the plugin consistent with that in the dependencies (thanks to @lyrric)
Fixed - hostname after comma in Redis Cluster topology isn't parsed
Fixed -
drainToAsync()method returns an incorrect value (thanks to @seakider)Fixed - numeric cast in
CommandDecoderFixed -
RLiveObjectvalue shouldn't be deleted during index updateFixed -
RSetCache.addAllIfAbsent()method doesn't workFixed - missed
getSetMultimapCache()andgetListMultimapCache()methods inRBatchReactiveobjectFixed - missed
getMapCacheNative()method inRBatchobjectFixed -
MapValueDecoderthrows NPEFixed -
EnumMaptype handling byKryo5CodecFixed -
Kryo5CodecregistrationRequiredsetting replaced withallowedClassesFixed - JCache eviction task isn't removed on
close()method invocationFixed - missed
destroy()method forRListMultimapCacheandRSetMultimapCacheobjectsv3.35.0Feature -
INDEXEMPTYoption added to tag and text fields inRSearch.createIndex()methodFeature -
INDEXMISSINGoption added to all fields inRSearch.createIndex()methodFeature -
StreamMessageId.LASToption addedFeature -
copy()andcopyAndReplace()methods added toRObjectinterfaceFeature - Apache Fury codec support
Feature -
RSetCacheobject supportsTrackingListener,SetAddListenerandSetRemoveListenerlistenersFeature -
RClusteredMapCacheNativeobject implemented. Requires Redis 7.4+Feature -
RLocalCachedMapCacheNativeobject implemented. Requires Redis 7.4+Feature -
localcache_nativeandclustered_nativeimplementations added to Quarkus module. Requires Redis 7.4+Feature -
RedissonClusteredCacheNativeandRedissonLocalCachedCacheNativeimplementations added to MyBatis module. Requires Redis 7.4+Feature -
RedissonClusteredSpringCacheNativeManagerandRedissonSpringLocalCachedCacheNativeManagerimplementations added to Spring Cache module. Requires Redis 7.4+Feature -
RedissonClusteredNativeRegionFactoryandRedissonLocalCachedNativeRegionFactoryadded to Hibernate module. Requires Redis 7.4+Feature -
local-caches-nativeandclustered-caches-nativeimplementations added to Micronaut module. Requires Redis 7.4+Improvement -
ProtobufCodecmemory allocation optimizationImprovement - Apache Fury codec optimization (thanks to @chaokunyang)
Improvement - quarkus should make an attempt to read config file using Thread's ContextClassLoader
Improvement - quarkus should make an attempt to read config file using Thread's ContextClassLoader (thanks to @seakider)
Improvement - don't take lock for
RMap.computeIfAbsent()if only get is needed (thanks to @shreyas-sprinklr)Fixed - writer, writeMode, writerAsync, writeBehindDelay, writeBehindBatchSize, loader, loaderAsync settings aren't applied to caches-native in Micronaut module
Fixed - missed
caches-nativeimplementation for Micronaut 3.x and Micronaut 2.xFixed - a new retry attempt to the same node isn't made for INFO_REPLICATION, SENTINEL_GET_MASTER_ADDR_BY_NAME, SENTINEL_SENTINELS, SENTINEL_SLAVES and CLUSTER_NODES commands
Fixed -
RType.JSONandRType.STREAMcan't be resolved byRKey.getType()methodFixed -
RKeys.removeListener()method doesn't removeNewObjectListenerandSetObjectListenerFixed -
copy()method doesn't works with db (thanks to @seakider)Fixed -
maven.compiler.releasesetting isn't definedFixed -
RSearch.info()method throwsNumberFormatException(thanks to @iamtakingiteasy)Fixed - timeout parameters defined per object aren't applied to
RJsonBucketsandRJsonBucketobjectsFixed - RedisException is thrown by
.removeAll()and.indexOf()methods ofRedissonSubListobject (thanks to @seakider)Fixed - wrong event keyspace name for
MapCacheNativeobject (thanks to @larryTheCoder)Fixed - missed
rename()andrenamenx()methods implementation forRIdGenerator,RMapCacheandRTimeSeriesobjectsFixed -
Kryo5Codecdoesn't handleUnmodifiableCollection,SynchronizedCollectionandCheckedCollectionFixed -
RRateLimiterincorrect rate count in the event of an attempt to exceed the limitFixed -
credentials-resolver,failed-slave-node-detector,command-mapper,name-mapper,nat-mappersettings aren't recognized by Helidon and QuarkusFixed -
RMultimapCacheReactive.expireKey()method returns Single instead of Reactor MonoFixed -
@RObjectFieldannotation with codec option has no effectFixed - an exception is thrown if the
@RObjectFieldannotation is defined on a fieldFixed -
RDestroyable.destroy()method doesn't remove listenersFixed - FailedSlaveNodeDetector's parameters by can't be defined in YAML config
v3.34.1Fixed - RObject.rename() method doesn't work in cluster
v3.34.0Feature - RJsonBuckets object added (thanks to @seakider)
Feature -
remainTimeToLive(Set keys)andclearExpire(Set keys)methods added toRMapCacheNativeobjectFeature -
eval()andevalSha()methods added toRScriptobject for execution on all nodes in Redis ClusterImprovement - performance optimization for Apache Tomcat Session management
Improvement - default value of quietPeriod set to 0 in
RedissonClient.shutdown()methodImprovement - upgrade protobuf from 3.16.3 to 4.27.2 (thanks to @zzhlhc)
Fixed - Apache Tomcat Session Manager throws CROSSSLOT Keys in request don't hash to the same slot (regression since 3.32.0)
Fixed - empty partitions shouldn't be skipped in cluster topology scan
Fixed -
ClusterConnectionManager.checkSlotsMigration()method throws NPEFixed - RSearch IndexInfoDecoder may throw NPE
Fixed - local cached Map implementations don't emit cache clear event on
clear()ordelete()methods callFixed -
RObject.rename()method doesn't work in clusterFixed - a new attempt to send a command should be made right after channel reconnection
Fixed - 'race condition' while calling RLock.tryLock() method (thanks to @pad-master82)
Fixed - Can't connect to servers error doesn't show exception reported during connection
Fixed -
SeekableByteChannel.truncate()method (thanks to @seakider)Fixed -
RMap.computeAsync()method doesn't handle empty keys properly (thanks to @phrone)v3.33.0Feature - RJsonStore object added
Feature - RLocalCachedJsonStore object added
Feature -
RSearch.getIndexes()method addedFeature -
RedissonRegionNativeFactoryadded for Hibernate module. Requires Redis 7.4+Feature -
RedissonSpringCacheNativeManagerimplemented. Requires Redis 7.4+Feature -
RedissonCacheNativeimplementation added for Mybatis cache. Requires Redis 7.4+Feature -
caches-nativecache type added to Micronaut module. Requires Redis 7.4+Improvement - Spring Cache
RedissonCache.put()method optimizationBreaking change - JsonCodec interface refactoring
Fixed - re-added master node isn't updated in Cluster topology
Fixed - expiration time isn't set for Apacht Tomcat Manager
redisson:tomcat_notified_nodeskeys (thanks to @ehardy)Fixed - RSearch
AggregationOptions.loadAll()setting isn't appliedFixed - containsAll() method of RList, RQueue, RMultimap objects returns incorrect result (thanks to @seakider)
Fixed - too many requests with small threads amount may cause OOM
Fixed - connection leak during high load with few connections
Fixed - RingBuffer#setCapacity, trim list incorrect (thanks to @seakider)
Fixed - password shouldn't be printed in logs
Fixed - encoded user/password in URL aren't accepted
v3.32.0Feature - Quarkus Cache implementation added
Feature -
RMapCacheNativeimplementation which uses Redis 7.4+ commandsFeature - unlinkByPattern() method added to RKeys interface (thanks to @seakider)
Fixed - Apache Tomcat request.changeSessionId() method does not change the session id in Redis (thanks to @bclay2116)
Fixed - RSearch parse params error (thanks to @seakider)
Fixed - RSearch.info() throws
NumberFormatException(thanks to @seakider)Fixed - cluster failover handling
Fixed - last master node shouldn't be removed in cluster topology
Fixed - duplicated master/slave added log output in sentinel mode
Fixed - connection leak if master change operation failed during failover
Fixed -
RxJava3request can't be canceledFixed -
RFairLockdoesn't calculate remaining ttl properly before next acquisition attemptFixed -
scanIntervalsetting checkFixed -
ElementsSubscribeService.resubscribe()method throwsRedissonShutdownExceptionFixed -
RMap.getAll()method throws an exception if result ofRMap.keySet()method passed as an argumentFixed - Redis node random selection doesn't work properly
Fixed - concurrency problem during RLock expiration renewal (thanks to @seakider)
Fixed -
RListMultimapthrows too many results to unpack errorFixed - entry shutdown during cluster slots migration check
v3.31.0Feature - Spring Boot 3.3.0 integration
Feature - Spring Data Redis 3.3.0 integration
Feature - allow retry of
NOREPLICASerror (thanks to @ghollies)Improvement -
SequentialDnsAddressResolverFactorydefaultconcurrencyLevelset to 2Improvement -
ThreadLocalRandomreplaced withxoshiro256++RNG to avoid collisionsFixed - cluster failover handling
Fixed - cluster topology scan shouldn't be stopped by any exception
Fixed -
RSetMultiMapthrowstoo many results to unpackerrorFixed - append commands error when using batch mode (thanks to @seakider)
Fixed -
ERR unknown command EVALSHA_ROerror shouldn't be loggedFixed -
TransactionalBucket#set(V, Duration)PSETEXcommand is called beforeMULTIcommand (thanks to @seakider)Fixed -
CommandMapperisn't applied to Lua scriptsFixed - incorrect connection release if
BatchOptions.executionMode=REDIS_WRITE_ATOMICorREDIS_READ_ATOMIC(thanks to @seakider)Fixed -
RFairLockmethods throw 'attempt to compare nil with number' errorFixed - Spring Data Redis
RedissonConnectionFactory.getSentinelConnection()method throws error on the first offline sentinelFixed - read mode = SLAVE isn't applied for
RSet.random()methodsFixed - Keyspace notifications should be listened only on master nodes
Fixed -
RListMultimap.removeAll()method always deletes link to listFixed -
RLockReactivemethods don't work in native imageFixed - Correctly update shutdown timeout after each step in connection manager shutdown (thanks to @MartinEkInsurely)
Fixed - broken tck
JCachetestsFixed - not all sentinels defined in the configuration are registered
v3.30.0Feature -
sslKeystoreTypesetting addedFeature -
RPatternTopic.getActiveTopic()method added (thanks to @MasterShi)Feature -
RJsonBucket.merge()method addedFeature - Async, Rx, Reactive interfaces implemented for
RBloomFilterobjectFeature - fallback mode for JCache
Feature - passwords encryption support
Feature - Spring Cloud Stream integration
Improvement - configuration variable defined as Java system property overrides environment variable
Fixed - io.projectreactor package should be defined as optional in OSGi Manifest
Fixed - Spring Data Redis
StreamPollTask.deserializeAndEmitRecords()method throws NPE after failoverFixed - Spring Data Redis blocking poll commands can't be reattached after failover
Fixed - Unable to find session error reported by
RedissonSessionManagerFixed - Sentinels discovery is applied at Redisson startup if
sentinelsDiscovery = trueFixed - master node is used for read operations after slave node addition if
readMode = SLAVEin replicated modeFixed - failover handling of blocking methods calls with defined timeout. RStream, RBlockingQueue objects
Fixed - multiple
RLocalCachedMapobjects don't work in the same RTransaction (thanks to @vlad-ogol @RajaJaisankar)Fixed - codec setting isn't applied in
redisson.getMap(MapOptions)methodFixed - Live Object field can't set to null value
Fixed -
SentinelConnectionManagerstops scheduling topology change change / dns check after host resolution errorFixed -
RMapCache.fastPutIfExistsOperation()method uses incorrect pubsub channelv3.29.0Feature -
NewObjectListeneradded to track created objectsFeature -
NewObjectListenerandSetObjectListenercan be registered withRKeys.addListener()methodFeature -
subscribeOnElements(),subscribeOnLastElements()andsubscribeOnFirstElements()methods wait forCompletionStageto complete before polling the next elementFeature -
shardedSubscriptionModesetting added in Cluster configurationFeature -
RSemaphore.trySetPermits()method with ttl parameter addedFeature -
getDeletedIds()method added toRStreamAutoClaimResultobjectImprovement - responses map lock replaced with fine-grained entry locking in
RRemoteServiceandRScheduledExecutorServiceFixed -
RStream.autoClaim()method throws ClassCastExceptionFixed -
RSearchaggregate expression applied incorrectlyFixed -
LocalCachedMapDisabledKeyevent is parsed incorrectly if local cache used withRTransactionFixed - Slave node in cluster mode isn't shutdown properly if
readMode = MASTERandsubscribeMode = MASTER(regression since 3.27.2Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate. View the repository job log.