-
Notifications
You must be signed in to change notification settings - Fork 0
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
fix(deps): update redisson.version to v3.38.1 #187
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 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
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
December 5, 2023 11:42
36bf755
to
5959f83
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.24.3
fix(deps): update redisson.version to v3.25.0
Dec 5, 2023
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
December 18, 2023 11:18
5959f83
to
565cc05
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.25.0
fix(deps): update redisson.version to v3.25.1
Dec 18, 2023
renovate
bot
changed the title
fix(deps): update redisson.version to v3.25.1
fix(deps): update redisson.version
Dec 20, 2023
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
December 20, 2023 15:53
565cc05
to
0856ba0
Compare
renovate
bot
changed the title
fix(deps): update redisson.version
fix(deps): update redisson.version to v3.25.2
Dec 20, 2023
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
January 16, 2024 09:26
0856ba0
to
b263d1d
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.25.2
fix(deps): update redisson.version to v3.26.0
Jan 16, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
February 12, 2024 09:44
b263d1d
to
1a441ce
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.26.0
fix(deps): update redisson.version to v3.26.1
Feb 12, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
February 20, 2024 10:20
1a441ce
to
e6f699f
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.26.1
fix(deps): update redisson.version to v3.27.0
Feb 20, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
February 28, 2024 11:22
e6f699f
to
8bcef65
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.27.0
fix(deps): update redisson.version to v3.27.1
Feb 28, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
March 12, 2024 07:51
8bcef65
to
e7cc862
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.27.1
fix(deps): update redisson.version to v3.27.2
Mar 12, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
April 10, 2024 14:35
e7cc862
to
d8f63d8
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.27.2
fix(deps): update redisson.version to v3.28.0
Apr 10, 2024
renovate
bot
changed the title
fix(deps): update redisson.version to v3.28.0
fix(deps): update redisson.version to v3.29.0
Apr 22, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
May 10, 2024 14:27
e594e00
to
d545e48
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.29.0
fix(deps): update redisson.version to v3.30.0
May 10, 2024
renovate
bot
changed the title
fix(deps): update redisson.version to v3.30.0
fix(deps): update redisson.version
May 31, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
May 31, 2024 10:24
d545e48
to
1da2e1f
Compare
renovate
bot
changed the title
fix(deps): update redisson.version
fix(deps): update redisson.version to v3.31.0
May 31, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
June 24, 2024 07:52
1da2e1f
to
d40859d
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.31.0
fix(deps): update redisson.version to v3.32.0
Jun 24, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
July 17, 2024 10:12
d40859d
to
ccd2cba
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.32.0
fix(deps): update redisson.version to v3.33.0
Jul 17, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
July 30, 2024 07:39
ccd2cba
to
646d030
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.33.0
fix(deps): update redisson.version to v3.34.0
Jul 30, 2024
renovate
bot
changed the title
fix(deps): update redisson.version to v3.34.0
fix(deps): update redisson.version
Jul 31, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
July 31, 2024 12:28
646d030
to
41a753a
Compare
renovate
bot
changed the title
fix(deps): update redisson.version
fix(deps): update redisson.version to v3.34.1
Jul 31, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
August 22, 2024 10:27
41a753a
to
c2c86f4
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.34.1
fix(deps): update redisson.version to v3.35.0
Aug 22, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
September 9, 2024 12:52
c2c86f4
to
92a44da
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.35.0
fix(deps): update redisson.version to v3.36.0
Sep 9, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
October 2, 2024 16:24
92a44da
to
779913e
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.36.0
fix(deps): update redisson.version to v3.37.0
Oct 2, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
October 30, 2024 14:43
779913e
to
4ab1027
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.37.0
fix(deps): update redisson.version to v3.38.0
Oct 30, 2024
renovate
bot
force-pushed
the
renovate/redisson.version
branch
from
October 31, 2024 09:21
4ab1027
to
7f0f04b
Compare
renovate
bot
changed the title
fix(deps): update redisson.version to v3.38.0
fix(deps): update redisson.version to v3.38.1
Oct 31, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
None yet
0 participants
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.38.1
3.17.7
->3.38.1
Release Notes
redisson/redisson (org.redisson:redisson-spring-data-21)
v3.38.1
Fixed - 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.0
Feature - 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=true
doesn'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 -
RJsonBucketReactive
andRJsonBucketRx
use Reactive Types as argumentsFixed -
ClassNotFoundException
is 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.0
Feature -
findCommon()
andfindCommonLength()
methods added toRBucket
objectFeature -
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 toRRateLimiter
objectFeature -
RKeys.getKeys()
method with type parameter addedImprovement -
RRemoteService
method 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 ofRSet
object 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 -
BiHashMap
usage removedFixed - 100% CPU usage by CommandsQueue in rare cases
Fixed -
ProtobufCodec
doesn't work withCompositeCodec
v3.36.0
Feature -
Kryo5Codec
useReferences
setting addedFeature -
RListMultimapCacheNative
andRSetMultimapCacheNative
objects added. Require Redis 7.4+Feature -
AggregationOptions.sortBy()
method withwithCount
parameter added (thanks to @pfyod)Feature -
allowedClasses
setting added toFuryCodec
Feature -
addIfAbsent(Map)
method added toRSetCache
object (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
CommandDecoder
Fixed -
RLiveObject
value shouldn't be deleted during index updateFixed -
RSetCache.addAllIfAbsent()
method doesn't workFixed - missed
getSetMultimapCache()
andgetListMultimapCache()
methods inRBatchReactive
objectFixed - missed
getMapCacheNative()
method inRBatch
objectFixed -
MapValueDecoder
throws NPEFixed -
EnumMap
type handling byKryo5Codec
Fixed -
Kryo5Codec
registrationRequired
setting replaced withallowedClasses
Fixed - JCache eviction task isn't removed on
close()
method invocationFixed - missed
destroy()
method forRListMultimapCache
andRSetMultimapCache
objectsv3.35.0
Feature -
INDEXEMPTY
option added to tag and text fields inRSearch.createIndex()
methodFeature -
INDEXMISSING
option added to all fields inRSearch.createIndex()
methodFeature -
StreamMessageId.LAST
option addedFeature -
copy()
andcopyAndReplace()
methods added toRObject
interfaceFeature - Apache Fury codec support
Feature -
RSetCache
object supportsTrackingListener
,SetAddListener
andSetRemoveListener
listenersFeature -
RClusteredMapCacheNative
object implemented. Requires Redis 7.4+Feature -
RLocalCachedMapCacheNative
object implemented. Requires Redis 7.4+Feature -
localcache_native
andclustered_native
implementations added to Quarkus module. Requires Redis 7.4+Feature -
RedissonClusteredCacheNative
andRedissonLocalCachedCacheNative
implementations added to MyBatis module. Requires Redis 7.4+Feature -
RedissonClusteredSpringCacheNativeManager
andRedissonSpringLocalCachedCacheNativeManager
implementations added to Spring Cache module. Requires Redis 7.4+Feature -
RedissonClusteredNativeRegionFactory
andRedissonLocalCachedNativeRegionFactory
added to Hibernate module. Requires Redis 7.4+Feature -
local-caches-native
andclustered-caches-native
implementations added to Micronaut module. Requires Redis 7.4+Improvement -
ProtobufCodec
memory 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-native
implementation 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.JSON
andRType.STREAM
can't be resolved byRKey.getType()
methodFixed -
RKeys.removeListener()
method doesn't removeNewObjectListener
andSetObjectListener
Fixed -
copy()
method doesn't works with db (thanks to @seakider)Fixed -
maven.compiler.release
setting isn't definedFixed -
RSearch.info()
method throwsNumberFormatException
(thanks to @iamtakingiteasy)Fixed - timeout parameters defined per object aren't applied to
RJsonBuckets
andRJsonBucket
objectsFixed - RedisException is thrown by
.removeAll()
and.indexOf()
methods ofRedissonSubList
object (thanks to @seakider)Fixed - wrong event keyspace name for
MapCacheNative
object (thanks to @larryTheCoder)Fixed - missed
rename()
andrenamenx()
methods implementation forRIdGenerator
,RMapCache
andRTimeSeries
objectsFixed -
Kryo5Codec
doesn't handleUnmodifiableCollection
,SynchronizedCollection
andCheckedCollection
Fixed -
RRateLimiter
incorrect rate count in the event of an attempt to exceed the limitFixed -
credentials-resolver
,failed-slave-node-detector
,command-mapper
,name-mapper
,nat-mapper
settings aren't recognized by Helidon and QuarkusFixed -
RMultimapCacheReactive.expireKey()
method returns Single instead of Reactor MonoFixed -
@RObjectField
annotation with codec option has no effectFixed - an exception is thrown if the
@RObjectField
annotation 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.1
Fixed - RObject.rename() method doesn't work in cluster
v3.34.0
Feature - RJsonBuckets object added (thanks to @seakider)
Feature -
remainTimeToLive(Set keys)
andclearExpire(Set keys)
methods added toRMapCacheNative
objectFeature -
eval()
andevalSha()
methods added toRScript
object 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.0
Feature - RJsonStore object added
Feature - RLocalCachedJsonStore object added
Feature -
RSearch.getIndexes()
method addedFeature -
RedissonRegionNativeFactory
added for Hibernate module. Requires Redis 7.4+Feature -
RedissonSpringCacheNativeManager
implemented. Requires Redis 7.4+Feature -
RedissonCacheNative
implementation added for Mybatis cache. Requires Redis 7.4+Feature -
caches-native
cache 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_nodes
keys (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.0
Feature - Quarkus Cache implementation added
Feature -
RMapCacheNative
implementation 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 -
RxJava3
request can't be canceledFixed -
RFairLock
doesn't calculate remaining ttl properly before next acquisition attemptFixed -
scanInterval
setting checkFixed -
ElementsSubscribeService.resubscribe()
method throwsRedissonShutdownException
Fixed -
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 -
RListMultimap
throws too many results to unpack errorFixed - entry shutdown during cluster slots migration check
v3.31.0
Feature - Spring Boot 3.3.0 integration
Feature - Spring Data Redis 3.3.0 integration
Feature - allow retry of
NOREPLICAS
error (thanks to @ghollies)Improvement -
SequentialDnsAddressResolverFactory
defaultconcurrencyLevel
set to 2Improvement -
ThreadLocalRandom
replaced withxoshiro256++
RNG to avoid collisionsFixed - cluster failover handling
Fixed - cluster topology scan shouldn't be stopped by any exception
Fixed -
RSetMultiMap
throwstoo many results to unpack
errorFixed - append commands error when using batch mode (thanks to @seakider)
Fixed -
ERR unknown command EVALSHA_RO
error shouldn't be loggedFixed -
TransactionalBucket#set(V, Duration)
PSETEX
command is called beforeMULTI
command (thanks to @seakider)Fixed -
CommandMapper
isn't applied to Lua scriptsFixed - incorrect connection release if
BatchOptions.executionMode
=REDIS_WRITE_ATOMIC
orREDIS_READ_ATOMIC
(thanks to @seakider)Fixed -
RFairLock
methods 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 -
RLockReactive
methods don't work in native imageFixed - Correctly update shutdown timeout after each step in connection manager shutdown (thanks to @MartinEkInsurely)
Fixed - broken tck
JCache
testsFixed - not all sentinels defined in the configuration are registered
v3.30.0
Feature -
sslKeystoreType
setting addedFeature -
RPatternTopic.getActiveTopic()
method added (thanks to @MasterShi)Feature -
RJsonBucket.merge()
method addedFeature - Async, Rx, Reactive interfaces implemented for
RBloomFilter
objectFeature - 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
RedissonSessionManager
Fixed - Sentinels discovery is applied at Redisson startup if
sentinelsDiscovery = true
Fixed - master node is used for read operations after slave node addition if
readMode = SLAVE
in replicated modeFixed - failover handling of blocking methods calls with defined timeout. RStream, RBlockingQueue objects
Fixed - multiple
RLocalCachedMap
objects 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 -
SentinelConnectionManager
stops scheduling topology change change / dns check after host resolution errorFixed -
RMapCache.fastPutIfExistsOperation()
method uses incorrect pubsub channelv3.29.0
Feature -
NewObjectListener
added to track created objectsFeature -
NewObjectListener
andSetObjectListener
can be registered withRKeys.addListener()
methodFeature -
subscribeOnElements()
,subscribeOnLastElements()
andsubscribeOnFirstElements()
methods wait forCompletionStage
to complete before polling the next elementFeature -
shardedSubscriptionMode
setting added in Cluster configurationFeature -
RSemaphore.trySetPermits()
method with ttl parameter addedFeature -
getDeletedIds()
method added toRStream
AutoClaimResult
objectImprovement - responses map lock replaced with fine-grained entry locking in
RRemoteService
andRScheduledExecutorService
Fixed -
RStream.autoClaim()
method throws ClassCastExceptionFixed -
RSearch
aggregate expression applied incorrectlyFixed -
LocalCachedMapDisabledKey
event is parsed incorrectly if local cache used withRTransaction
Fixed - Slave node in cluster mode isn't shutdown properly if
readMode = MASTER
andsubscribeMode = MASTER
(regression since 3.27.2)Fixed - race condition during cluster topology update causes slave added/removed events
Fixed - OSGi MANIFEST should define optional dependencies
Fixed -
TimeoutException
is thrown ifconnectionMinimumIdleSize = 0
Fixed -
ClassCastException
is thrown for Reactive/Rx RemoteService invocation if Redisson instance isn't Reactive/RxFixed - semaphore object is not deleted after
RLocalCachedMap.clearLocalCache()
method invocationFixed -
AggregationOptions.groupBy()
setting with reducers used inRSearch.aggregate()
method causes an exceptionFixed -
AggregationOptions.groupBy()
setting usage withRSearch.aggregate()
method causes an exception if reducers aren't definedFixed -
AggregationOptions.sortBy()
setting usage withRSearch.aggregate()
method causes an exceptionFixed - resource leak error when executing multiple contains operation of
RSet
in transaction (thanks to @wynn5a)Fixed - jmockit upgraded to 1.52.0 inside maven-surefire-plugin (thanks to @roharon)
v3.28.0
Feature - Multi Sentinel mode implementation
Feature -
RLocalCachedMapCacheV2
object implemented with effecient partitioning and advanced entry evictionFeature - graceful shutdown in quarkus (thanks to @naah69)
Improvement -
RLongAdder
andRDoubleAddder
should use sharded topic if possibleImprovement - reduced CPU and Memory consumption by
ClusterConnectionManager.getLastPartitonsByURI()
methodImprovement -
RedisURI.hashCode()
caching to reduce CPU consumptionImprovement - shutdown check added in
RTopic.removeListener()
methodFixed - incorrect detection of sharded pubsub support
Fixed -
RBatch
does not work with RKeys.randomKeyAsync() method (thanks to @wynn5a)Fixed - unresolved Redis node hostname in cluster mode affects cluster topology scan
Fixed -
MASTER
nodes aren't used ifreadMode = MASTER_SLAVE
Fixed -
RLock
,RFencedLock
,RReadWriteLock
miss unlock messages and wait a defined timeout before a next attempt or hangFixed -
RSemaphore
,RPermitExpirableSemaphore
miss release messages and wait a defined timeout before a next attempt or hangFixed - incorrect value of
RLongAdder.sum()
andRDoubleAddder.sum()
methods if multiple Adder instances for the same Redisson object are usedFixed -
CountDownLatch.await()
method may throw NPEFixed - ExecutionException handling in RExecutorService, RLock, RPermitExpirableSemaphore, RSemaphore objects
Fixed -
ConcurrentModificationException
is thrown on RedissonSession save method if readMode = MEMORYFixed - Spring Data Redis zPopMin() and zPopMax() methods don't work (thanks to @bimslab)
v3.27.2
Feature -
RShardedTopic.countSubscribers()
method implementedFeature -
RedissonMultiLock
implementsisHeldByThread()
andisHeldByCurrentThread()
methodsFixed - Multiple locking of RLock reset remainTimeToLive to config default
Fixed - exception thrown by
natMapper
is not shown in logsFixed - OSGi jdk.net package import should be optional
Fixed -
ServiceManager.resolveAll()
method throws NPEFixed -
RObject.addListenerAsync()
method throwsUnsupportedOperationException
Fixed -
StatusListener
doesn't work withRShardedTopic
Fixed - NPE is thrown in cluster mode if slave node added
Fixed - continuously reconnecting to a removed slave node in cluster mode
Fixed - incorrect handling of TrackingListener removal
Fixed -
FlushListener
receives duplicate eventsFixed -
SlotsDecoder
throws NPE on empty resultFixed - Clash between RedissonCache and Spring (6.1+) Cache interface methods
Fixed -
RedissonClient.shutdown()
method hangs atserviceManager.getShutdownLatch()
invocationFixed - "Failed to submit a listener notification task. Event loop shut down?" error caused by
PingConnectionHandler
Fixed -
JsonCodecWrapper
isn't cached properlyv3.27.1
Feature - added
TrackingListener
support toRList
,RQueue
,RDeque
,RBlockingQueue
,RBlockingDeque
,RDelayedQueue
,RRingBuffer
objectsFeature -
addListener()
,random()
methods added toRLexSortedSet
objectImprovement - show log warning "DNS TCP fallback on UDP query timeout disabled" if Netty version is lower 4.1.105
Improvement - ChannelName.toString() conversion optimization
Fixed -
retryInterval
andretryAttempts
settings aren't applied in case of 'READONLY You can't write against a read only replica.' errorFixed -
RRemoteService
may cause CPU spike after Master failoverFixed -
FlushListener
causesClassCastException
Fixed -
TrackingListener
causesClassCastException
Fixed -
RedissonSetCache.addIfAbsentAsync()
uses incorrect argument for zadd (thanks @fooooxxxx)v3.27.0
Feature - client tracking support.
TrackingListener
is available forRBucket
,RStream
,RScoredSortedSet
,RSet
,RMap
andRBucket
objectsFeature - added
RKeys.addListener()
method to register global listenersFeature -
FlushListener
added to track flushdb/flushall command invocationFeature -
Kryo5Codec
constructor withregistrationRequired
parameter addedFeature -
nettyExecutor
setting addedFeature - enable DNS TCP fallback when UDP query timeout for
RoundRobinDnsAddressResolverGroupFactory
andSequentialDnsAddressResolverFactory
Improvement - cache result of
INFO REPLICATION
command forRLock
objectsFixed - Spring Data Redis
ReactiveKeyCommands.pExpire()
method throws an exceptionFixed - NPE is thrown by
RedisExecutor.handleError()
methodFixed - sharded pubsub detection for
Apache Tomcat Session Manager
,RMapCache
andRLocalCachedMap
objectsFixed - Redisson's threads aren't shutdown if Redis node address isn't defined
Fixed - NPE is thrown while creating
RLocalCacheMap
object without WriteMode valueFixed - incorrect RESP3 protocol parsing causes
SlaveConnectionPool no available Redis entries
errorFixed - repeated new connections with AWS Elasticache serverless
Fixed - internal
LRUCacheMap
object throwsConcurrentModificationException
v3.26.1
Feature - enable DNS TCP fallback when UDP query timeout (thanks to @hellojukay)
Feature -
StreamMessageId.autogenerateSequenceId()
method added (thanks to @mrmx)Feature -
RLockReactive.isHeldByThread()
method added (thanks to @sanail)Fixed - missed implementation of Spring Data Redis
ReactiveStringCommands.bitField()
methodFixed - Spring Data Redis
opsForCluster().randomKey()
method throwsUnsupportedOperationException
Fixed -
JCache.close()
method throwsIllegalStateException
if statistics enabledFixed - doubled connections to the master node if
readMode = MASTER_SLAVE
or there are no slave nodesFixed -
RSearch.delDict()
andRSearch.addDict()
methods throw NPEFixed - connection ping handler doesn't use
commandTimeout
settingFixed - repeated new connections with AWS Elasticache serverless
Fixed -
RLock
throwsERR unknown command 'wait'
with AWS Elasticache serverlessFixed -
RSearchReactive.dropIndex()
method doesn't call onComplete() handlerv3.26.0
Feature - ability to specify
retryInterval
,retryAttempts
,timeout
settings per Redisson object. Please refer to the documentationFeature -
LocalCachedMapOptions.expirationEventPolicy
setting addedFeature -
StreamAddListener
,StreamCreateConsumerListener
,StreamCreateGroupListener
,StreamRemoveConsumerListener
,StreamRemoveGroupListener
,StreamRemoveListener
,StreamTrimListener
listeners added forRStream
objectFixed - Spring Data Redis
RedissonConnection.setCommands()
method returns nullFixed - continuously reconnecting to a removed slave node in cluster mode
Fixed -
EntryExpiredListener
isn't invoked byRMapCache
instance in Redis Cluster 7+ and ifnameMapper
is definedFixed -
Skipped slave up ...
error is thrown in Sentinel mode if nodes use IPv6Fixed - NPE is thrown when adding or removing shards in ElastiCache
Fixed -
RAtomicDouble
,RAtomicLong
,RMap
,RScoredSortedSet
,RSet
listeners aren't removed properlyFixed - connection isn't reconnected on
WRONGPASS
Redis errorFixed - connection timeout during Redisson start ignores connections amount
Fixed -
RSearch.search()
method doesn't execute query with aliases properlyFixed -
FCALL_RO
command isn't used whenRFunction
method called withFunctionMode.READ
parameterFixed -
IllegalReferenceCountException
is thrown when canceling a method callFixed - Redis scan cursor exceed
Long.MAX_VALUE
in AWS ElasticacheFixed - internal
ServiceManager.calcSHA()
method should use UTF-8 encoding by defaultv3.25.2
Fixed - SSL connection can't be established
v3.25.1
Improvement - JDK21 Virtual Threads compatibility
Fixed - EvictionTask keeps running even after
destroy()
method calledFixed - Sprint Data Redis throws
Subscription registration timeout exceeded
Fixed - Sprint Data Redis
RedisMessageListenerContainer.addMessageListener()
method hangs if called after container startFixed - NPE is thrown if
lazyInitialization = true
Fixed -
PriorityQueue
methods may hang due to unreleased lock after exceptionFixed -
RMap.getAll()
method throwsIndexOutOfBoundsException
Fixed - natMapper isn't applied to slaves and master nodes at start in Sentinel mode
Fixed - method invocation hangs after failover if
retryInterval = 0
Fixed - transactional Map and MapCache keySet method returns inconsistent state
Fixed - Multilock lock method doesn't work properly with non-MILLISECONDS TimeUnit
v3.25.0
Feature - RESP3 protocol support. protocol setting added
Feature - Spring Data Redis 3.2.0 implementation
Feature -
RSetCacheV2
,RSetV2
objects with more effecient partitioning in Cluster added in PRO versionImprovement - SLF4j updated to 2.0.9 version
Fixed - RFunction/RScript keys parameter accepts only String values
Fixed - IP address instead of hostname is used in sentinel mode with SSL connection
Fixed - Resources leak in
Version.logVersion()
methodFixed -
RLiveObjectService.persist()
method with varargs hangs in cluster modeFixed - Redisson connection process may hang at start in some cases
Fixed -
EntryExpiredListener
isn't invoked by RMapCache instance in Redis Cluster 7+Fixed - slave node in sentinel mode can't be recovered if it's a master node
Fixed -
JsonJacksonCodec
fails to serialize Throwable on Java17 (thanks to @tomjankes)Fixed -
RBlockingDeque.move()
throws an exception for empty resultFixed -
RScoredSortedSet.pollFirstEntries(count)
andpollLastEntries(count)
methods return wrong resultFixed -
BZMPOP
command timeout isn't appliedFixed -
getBlockingDeque()
,getDeque()
,getPriorityDeque()
,getPriorityBlockingDeque()
throwNoClassDefFoundError
if JDK version < 21Fixed -
RLocalCachedMap.containsKey()
method does not work properly ifstoreCacheMiss = true
Fixed -
RedissonRemoteService
exceptions handling (thanks to @mrmx)Fixed -
RSearch.info()
method throwsNumberFormatException
Fixed -
HttpSessionListener.sessionDestroyed()
method isn't called if Tomcat Session deleted by the node which didn't create itFixed -
LZ4CodecV2
isn't compatible withLZ4Codec
Fixed -
RSearch
GroupBy.reduce alias isn't applied (thanks to @arjunE1395)v3.24.3
Feature - Helidon 4.0 integration
Fixed -
ERR invalid expire time
error is thrown duringRLock.unlock()
call ifretryAttempts = 0
v3.24.2
Fixed -
IllegalArgument timeout...
error is throw during Redisson shutdownFixed - Intermittent Exception when creating
RLocalCachedMap
(regression since 3.24.1)Fixed -
RSearch.aggregate()
doesn't applywithCursor()
andsortBy()
options correctlyFixed -
MOVED redirection loop detected
error should be thrown only if both source and target addresses are equalv3.24.1
Feature -
writerRetryAttempts
andwriterRetryInterval
settings added toMapOptions
object (thanks to @zzhlhc)Feature -
RSortedSet
implementsRExpirable
Feature -
RBlockingQueue.pollFromAnyWithName()
method addedFeature -
org.redisson.codec.LZ4CodecV2
codec based on apache commons-compress addedFeature - Redis Cache async methods implementation introduced in Spring 6.1.0
Feature -
tcpKeepAliveCount
,tcpKeepAliveIdle
,tcpKeepAliveInterval
,tcpUserTimeout
settings addedFeature -
subscriptionTimeout
setting addedFixed -
RedissonClient.shutdown()
method should be completed within timeout (thanks @dgolombek)Fixed -
RBuckets.trySet()
,RBuckets.set()
,RBuckets.get()
,RKeys.touch()
,RKeys.unlink()
,RKeys.delete()
,RKeys.countExists()
methods may hang after failover in Redis clusterFixed - exceptions aren't wrapped in
CacheException
forcontainsKey()
,getAll()
andremoveAll()
methods ofJCache
Fixed - Command execution timeout for command: (PING)
Fixed -
RBucketReactive.delete()
method doesn't work in Quarkus Native mode (thanks to @DicksengA)Fixed - auto configuration with Spring Boot 2.7.x+
Fixed -
RSortedSet
doesn't work correctly ifNameMapper
object was specifiedFixed -
RPriorityQueue
has incorrect lock name ifNameMapper
object was specifiedFixed -
RMapCache.expireEntries()
andexpireEntry()
methods don't updatemaxIdle
parameter properlyFixed - non-volatile
RedisConnection.lastUsageTime
field may cause incorrect idle time calculationFixed -
attempt to unlock lock, not locked by current thread
error occurs in rare cases even ifRLock.unlock()
method called by lock owner threadFixed -
RCountDownLatch
only notifying the first async listener after countdown reaches 0 (thanks to @Sinbios)Fixed -
RStream.trim()
andtrimNonStrict()
methods don't work with Redis 6.2+Fixed -
RReadWriteLock.readLock().isLocked()
method returns incorrect result if acquired by writeLock owner threadFixed -
RedissonClient.getLiveObjectService()
method causes an attempt to connect to Redis iflazyInitialization = true
v3.23.5
Feature -
failedSlaveNodeDetector
setting added to Cluster, Sentinel, Replicated, Master/Slave modesFeature - module name added to redisson jar (thanks to @KrogerWalt)
Feature -
putAll()
method with TTL added to RMapCacheRx and RMapCacheReactive objectsFeature - Fallback to TCP in case of a UDP DNS truncation
Feature -
RMapCacheV2
, SpringRedissonSpringCacheV2Manager
and HibernateRedissonRegionV2Factory
objects with more effecient partitioning in Cluster added in PRO versionFixed - NPE is thrown by
RedissonAutoConfiguration
if Spring Boot 3.1+Fixed -
WeightedRoundRobinBalancer
doesn't support hostnamesFixed - NPE is thrown by CommandPubSubDecoder in rare cases
Fixed - during connection initialization a new attempt isn't made for Busy, ClusterDown, TryAgain and Wait Redis errors
Fixed -
RJsonBucket.getType()
method throws NPE if type is nullFixed -
IllegalStateException
is thrown ifRedisConnectionDetails
object registered in Spring Context with settings for Cluster or SentinelFixed -
RSearch
can not create Vector fieldFixed -
RSearch
vector field doesn't support aliasv3.23.4
Feature - methods for multiple permits support added to
RPermitExpirableSemaphore
object (thanks to @ikss)Feature -
ProtobufCodec
codec added (thanks to @dumbbell-5kg)Feature -
WAITAOF
command support throughBatchOptions.syncAOF()
settingFeature -
bgSave()
,scheduleBgSave()
,save()
,getLastSaveTime()
,bgRewriteAOF()
,size()
methods added toRedisNode
objectImprovement -
RSemaphore
andRLock
operations should have slave synchronization even ifreadMode = MASTER
andsubscriptionMode = MASTER
Fixed - wrong order call of RSearch's
FieldIndex
tagcaseSensitive()
andseparator()
settingsFixed -
RedisConnectionDetails
object isn't used for Redisson configuration in Spring Boot 3.1+Fixed - incorrect
slots added
,slots removed
messages in Redis Cluster modeFixed - Tomcat Manager "Session can't be found" message should have debug level
Fixed -
RBoundedBlockingQueue
can't be deleted ifnameMapper
was definedFixed -
RLock
isn't unlocked afterRTransaction.commit()
v3.23.3
Feature -
TransportMode.IO_URING
added (thanks to @sgammon)Feature -
LocalCachedMapOptions.useKeyEventsPattern()
setting introducedImprovement - Long as string cache in CommandEncoder (thanks to @tomerarazy)
Improvement - each
AddressResolver
created bySequentialDnsAddressResolverFactory
should share common DnsCache and DnsCnameCache instancesImprovement - RedisURI optimization (thanks to @ikss)
Fixed - codec errors during Quarkus native build
Fixed - extra subscription topic allocation by
RLocalCachedMap
object (regression since 3.23.2)v3.23.2
Feature - Micronaut 4.0 integration
Improvement - PubSub channels should be reconnected back to Slave from Master node if
SubscriptionMode = SLAVE
Fixed - Setting
retryAttempts
to 0 causes an exception (regression since 3.23.1)Fixed -
RTopic
subscribes only to a single master in cluster if__keyspace
or__keyevent
channel is definedFixed -
SlaveConnectionPool no available Redis entries
error may arise in some casesFixed - StackOverflowError is thrown by
AggregationOptions.groupBy()
methodFixed -
failedSlaveCheckInterval
value should be greater than zero before it can be appliedFixed -
RedissonLocalCachedMap.putAllOperation()
method throwsClassCastException
ifSyncStrategy = UPDATE
v3.23.1
Improvement - the scope of key event subscriptions reduced for
RLiveObjectService
object. Now it uses key-space channelImprovement - the scope of key event subscriptions reduced for
RLocalCachedMap
object. Now it uses key-space channelFixed - codecs defined via Spring Native application.properties file can't be recognized during application run
Fixed -
retryAttempt
setting isn't applied during Redisson startupFixed - Quarkus 2/3 native image can't be built
Fixed - unknown property
quarkus.redisson.*
warnings in quarkusFixed - Redisson settings defined in Quarkus application.properties file can't be used in native mode
v3.23.0
Feature - added
RBloomFilter
contains()
andadd()
methods with element collection supportFeature - RMapCache and RLocalCachedMap should use sharded pubsub in Redis Cluster 7.0+
Feature - lazyInitialization setting added
Feature -
expireEntryIfNotSet()
,expireEntries()
,expireEntry()
,expireEntriesIfNotSet()
methods added toRMapCache
objectFeature -
MapCacheOptions
object withremoveEmptyEvictionTask()
setting introduced. RemovesRMapCache
eviction task from memory if map is empty upon entries eviction process completionBreaking change - RMapCache and RLocalCachedMap should use sharded pubsub in Redis Cluster 7.0+
Breaking change - RMapCache object uses MapCacheOptions object
Improvement -
RMapCache
shouldn't emit events if no listeners addedFixed - canceling tasks that scheduled with cron expression does not interrupt the thread (thanks to @zcxsythenew)
Fixed -
RExecutorService
task response should be deleted if task was canceledFixed -
RedisConnection.close()
method has private visibilityFixed -
ConcurrentModificationException
occasionally thrown during batch executionFixed -
StringIndexOutOfBoundsException
is thrown if Redis port isn't defined in configurationFixed - missed methods implementation of Spring Data Redis module:
zRevRangeByLex()
,time(TimeUnit)
,zRemRangeByLex()
,zLexCount()
,rewriteConfig()
,zRangeStoreByLex()
,zRangeStoreRevByLex()
,zRangeStoreByScore()
,zRangeStoreRevByScore()
,flushDb()
,flushAll()
,replicaOf()
,replicaOfNoOne()
Fixed - transactional
RMap.fastRemove()
method throwsUnsupportedOperationException
Fixed -
RBloomFilter
contains()
andadd()
methods don't return accurate results if false probability is highFixed - incorrect handling "unknown command" response for
RTopic
operationsFixed -
RLiveObjectService.delete(class, id)
method doesn't delete indexesFixed -
RMultimapCache
throws an exception if entry removed before expiration momentFixed -
keepPubSubOrder
setting isn't appliedv3.22.1
Feature - Apache Tomcat Manager should use sharded pubsub in Redis Cluster 7.0+
Feature - Micronaut Session store should use sharded pubsub in Redis Cluster 7.0+
Feature - RClusteredScoredSortedSet object implemented
Feature -
maxDeletedEntryId
,entriesAdded
,recordedFirstEntryId
properties added toStreamInfo
objectFeature -
inactive
property added toStreamConsumer
objectFeature -
LocalCachedMapOptions.cacheSize = -1
should disable local cache storageBreaking change - Apache Tomcat Manager and Micronaut Session store now use sharded PubSub in Redis Cluster 7.0+
Fixed - map index entry isn't deleted when
RLiveObjectService
expiresFixed -
RMultimap.fastRemoveValue()
method doesn't delete entry completely if no values retainFixed - Default getCache method checks for Object class equality (thanks @agupta-hw)
Fixed -
RScoredSortedSet.distributedIterator()
doesn't work (regression since 3.21.0)Fixed - Memory leak if
RLocalCachedMap
created withstoreMode=LOCALCACHE
andsyncStrategy=UPDATE
paramsFixed - wait time handling in RedissonSpinLock (thanks @vladimirkl)
Fixed - java.lang.ClassCastException is thrown by RDequeReactive.pollLast() and RDequeReactive.pollFirst() methods (thanks @wynn5a)
Fixed -
RSearch.search()
method throws "Parameters must be specified in PARAM VALUE pairs" errorFixed -
RRateLimiter.setRate()
method does not behave as expected when RateType is pre_client (thanks @wynn5a)Fixed - collection fields aren't deleted when
RLiveObject
expires or is deletedv3.22.0
Feature - Spring Data Redis 3.1.0 implementation
Feature - Spring Boot 3.1.0 support
Feature -
lastEntry()
,firstEntry()
,pollLastEntries()
,pollFirstEntries()
,entryIterator()
,rankEntry()
,revRankEntry()
methods added toRScoredSortedSet
objectFeature -
RCountDownLatch
,RLock
,RPermitExpirableSemaphore
,RSemaphore
objects use sharded PubSub in Redis Cluster 7.0+Feature -
slavesSyncTimeout
,commandMapper
,sslCiphers
,sslTrustManagerFactory
,sslKeyManagerFactory
settings addedFeature -
RMultimap.fastRemoveValue()
method addedFeature -
allowedClasses
setting added toSerializationCodec
Feature -
entriesRead
andmakeStream
parameters added toRStream.createGroup()
methodBreaking change - RCountDownLatch, RLock, RPermitExpirableSemaphore, RSemaphore objects now use sharded PubSub in Redis Cluster 7.0+
Fixed - Expired LiveObjects with RIndex annotations retain indexed data
Fixed -
RRingBuffer
doesn't implementexpire()
,expireAt()
,delete()
,clearExpire()
methods properlyFixed -
RLocalCachedMap
local cache isn't cleared after instance expirationv3.21.3
Fixed - default retryInterval isn't applied to RBatch object
Fixed - RBatches no longer respect the default number of retries (regression since 3.21.1)
v3.21.2
Feature -
RBitSet.set(long[], boolean)
method added (thanks to @skasj)Fixed - Pattern Topic messages are missed/duplicated after failover in cluster if channel starts with
__keyspace
and__keyevent
andsubscriptionMode = SLAVE
Fixed - to many pubsub topics may cause memory leak
Fixed - RBatches no longer respect the default number of retries (regression since 3.21.1)
v3.21.1
Feature -
addIfAbsent()
,addIfExists()
,addIfGreater()
,addIfLess()
,addAll()
,addAllIfAbsent()
,addAllIfExist()
,addAllIfGreater()
,addAllIfLess()
methods added toRSetCache
objectFeature -
SetAddListener
,SetRemoveListener
,SetRemoveRandomListener
added toRSet
objectFeature -
ScoredSortedSetAddListener
,ScoredSortedSetRemoveListener
added toRScoredSortedSet
objectFeature -
MapPutListener
,MapRemoveListener
added toRMap
objectFeature -
IncrByListener
added toRAtomicDouble
andRAtomicLong
objectsFeature -
RMapCache.getAllWithTTLOnly()
method addedBreaking change - RedissonDelayedQueue internal data format changed
Breaking change - RedissonReliableTopic internal data format changed
Improvement -
RedissonReliableTopic
internal structure optimizationFixed -
RReliableTopic
data lossFixed - failover isn't handled correctly in some cases
Fixed -
BatchOptions.retryAttempts = 0
isn't applied toRBatch
objectFixed -
RMap.keySet()
throws NPE if CompositeCodec usedFixed - RediSearch NumericFilter shouldn't set exclusive range by default
Fixed - RediSearch NumericFilter throws NPE
Fixed -
RLocalCachedMap.removeListener()
method doesn't remove loca cache listenersv3.21.0
Feature - RediSearch module support
Feature - Tracing support
Feature -
RSetCache
extendsRSet
interfaceFeature -
RSemaphore
andRPermitExpirableSemaphore
objects wait for sync operations completionFeature - Quarkus 3 support
Feature -
LocalCacheUpdateListener
andLocalCacheInvalidateListener
listeners support added to RLocalCachedMap objectImprovement -
RRateLimiter
object uses 128-bit randomImprovement - EVAL script cache applied to
RBatch
executed inIN_MEMORY
modeImprovement -
RMap.keySet()
method shouldn't load map valuesImprovement -
SequentialDnsAddressResolverFactory
default concurrencyLevel set to 6Fixed -
RMapCache.fastPut()
method doesn't clear ttl and idleTime params if entry reinserted after expirationFixed - Unable to find session error arise if Tomcat session was deleted or expired
Fixed -
MasterSlaveEntry.getClient()
method may throw NPEFixed - initialize Decoders LinkedHashMap with correct initial size to avoid unnecessary resizing (thanks @theigl)
Fixed - failover handling may cause temporary connections spike
Fixed -
RedissonCache.invalidate()
method breaks cache configurationv3.20.1
Feature -
LoadBalancer.getEntry(List<ClientConnectionsEntry>, RedisCommand<?>)
method addedFeature - CommandsLoadBalancer added
Feature - NodeType parameter added to ConnectionListener methods
Improvement - command should be redirected to a master node if slave node returns LOADING error
Fixed -
NameMapper
is called twice when acquiring aRReadWriteLock
Fixed - closing idle connections causes connection listener to fire
Fixed -
Unable to init enough connections amount!
errorFixed - no retry attempts are made for
None of slaves were synced
errorFixed -
READONLY You can't write against a read only replica..
is thrown after failover in sentinel mode (thanks @alexworkgit)Fixed - continuously attempts of
INFO REPLICATION
command execution until attempts limit reached by RLock object after failoverFixed - Node hasn't been discovered yet error isn't resolved by a new attempt for RBatch and RLock objects
Fixed -
RedisClusterDownException
,RedisLoadingException
,RedisBusyException
,RedisTryAgainException
,RedisWaitException
are thrown by RBatch and RLock objects even if these errors disappeared after new attemptsFixed -
Unable to init enough connections amount! Only 0 of ... were initialized
error (thanks @alexworkgit)Fixed -
nameMapper
isn't applied to some methods ofRSet
andRScoredSortedSet
objectsFixed -
readUnion()
,readDiff()
andreadIntersection()
methods ofRSet
object don't use Redis slave nodesv3.20.0
Feature - new Multi cluster mode which supports AWS Redis Global Datastore and Azure Redis Cache active-passive replication
Feature - Proxy mode supports RLEC Active-Active databases
Feature - monitorIPChanges setting added for replicated servers mode
Feature - auto-detection of unavailable master in replicated mode (thanks @nicdard)
Fixed -
RLock
can only be obtained by single redisson node ifNone of slaves were synced
error occurredFixed -
RSetMultimapReactive.get()
method throwsClassCastException
Fixed - Redisson doesn't start in Spring Boot Native image
Fixed -
RedissonClient.shutdown(long, long, TimeUnit)
method isn't overridden by cluster, replicated and sentinel managersFixed - Node hasn't been discovered yet error isn't resolved by a new attempt for RBatch and RLock objects
Fixed -
RMapCache.addAndGet()
method doesn't handle Long type properlyFixed -
eventLoopGroup
,connectionListener
andexecutor
settings can't be defined through YAML configurationFixed -
keySet()
,values()
,entrySet()
methods ofRLocalCachedMap
return empty result ifstoreMode == LOCALCACHE
v3.19.3
Fixed - a new attempt should be made on WAIT error during failover
Fixed - Kryo5Codec fails to (de)serialize Object without no-args constructor (regression since 3.19.2)
v3.19.2
Fixed -
RLock
instance can acquire lock with previous leaseTime if it's not specifiedFixed -
RMap.computeAsync()
method causes deadlock if MapLoader is definedFixed -
RBoundedBlockingQueue.offer()
methods always use global codecFixed - Spring Boot
clientName
setting isn't usedFixed -
connectTimeout
setting is set incorrectly if Spring Boot 2.4.0+Fixed - command replies don't match if exception is thrown in CommandEncoder
Fixed - empty result of BLMPOP command causes IndexOutOfBoundsException
Fixed - canceled blocking operation isn't interrupted immediately in some cases
Fixed - RStream.read() and RStream.readGroup() methods are hang forever is timeout > 0 and < 1000 milliseconds
Fixed -
CacheLoader.loadAll()
method isn't called byJCache.getAll()
method if readThrough=trueFixed -
Kryo5Codec
Serializers don't work in GraalVM native image modeFixed -
LinkedHashMap
andLinkedHashSet
objects can't be decoded properly byKryo5Codec
Fixed -
NameMapper
isn't applied toRFunction
andRScript
objectsFixed -
RFunction.callAsync()
method called withRBatch
object throwsMOVED
errors in Redis cluster modeFixed -
RFunction.loadAndReplace()
method uses incorrect command parametersFixed -
codec
,nettyHook
,addressResolverGroupFactory
,connectionListener
settings can't be defined through Quarkus or Helidon configFixed -
RFunction.load()
method uses incorrect command parametersFixed - empty
RTopic
message handling (thanks @MooRoakee)[`v3.19.1
Configuration
📅 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.