Redisson 3.29.0 发布,官方推荐的 Redis 客户端
Redisson 3.29.0 现已发布,这是一个 Java 编写的 Redis 客户端,具备驻内存数据网格(In-Memory Data Grid)功能,并获得了 Redis 的官方推荐。
此版本更新内容如下:
Feature
- 新增
NewObjectListener以跟踪创建的对象 - 可使用
RKeys.addListener()方法注册NewObjectListener和SetObjectListener subscribeOnElements()、subscribeOnLastElements() 和subscribeOnFirstElements() 方法在轮询下一个元素前会等待CompletionStage完成- 在 Cluster configuration 中添加了
shardedSubscriptionMode设置 RSemaphore.trySetPermits()方法添加了 ttl 参数-
在
RStreamAutoClaimResult对象中添加getDeletedIds()方法
Improvement
- 在
RRemoteService和RScheduledExecutorService中用 fine-grained entry locking 取代 responses map lock
Fixed
Stream.autoClaim()方法抛出 ClassCastExceptionRSearch聚合表达式应用错误- 如果本地缓存与
RTransaction一起使用,LocalCachedMapDisabledKey事件的解析不正确 - 如果
readMode = MASTER和subscribeMode = MASTER,集群模式中的从节点不能正确关闭(自 3.27.2 起的回归) - 集群拓扑更新期间的 race condition 会导致从属节点添加/删除事件
- OSGi MANIFEST 应定义可选依赖项的问题
- 如果
connectionMinimumIdleSize = 0,则会抛出TimeoutException - 如果 Redisson 实例不是 Reactive/Rx,在调用 Reactive/Rx RemoteService 时会抛出
ClassCastException - 在调用
RLocalCachedMap.clearLocalCache()方法后,semaphore 对象不会被删除 - 在
RSearch.aggregate()方法中使用AggregationOptions.groupBy()设置会导致异常(如果未定义 reducers) RSearch.aggregate()方法使用AggregationOptions.sortBy()设置会导致异常- 在事务中执行
RSet的多个包含操作时的资源泄漏错误 - maven-surefire-plugin 内的 jmockit 已升级至 1.52.0
更新说明:https://github.com/redisson/redisson/releases/tag/redisson-3.29.0