Lettuce 5.1.0.M1 发布,带来 5 大功能特性变更

栏目: 软件资讯 · 发布时间: 6年前

内容简介:Lettuce 5.1.0.M1 发布,这是 Lettuce 5.1 发布的第一个预览版本,包含改进和错误修复。Lettuce 5.1.0.M1 需要 Java 8,Java 9 或 Java 10 环境。 此次比较显著的变化有: Redis Streams 的 API 预览 异步池实现 ...

Lettuce 5.1.0.M1 发布,这是 Lettuce 5.1 发布的第一个预览版本,包含改进和错误修复。Lettuce 5.1.0.M1 需要 Java 8,Java 9 或 Java 10 环境。

此次比较显著的变化有:

  • Redis Streams 的 API 预览

  • 异步池实现

  • SCAN 流和初始化

  • 全局命令超时(默认情况下禁用)

  • 主/从和 Sentinel 的异步连接方法

具体更新内容如下:

Commands

  • Add AUTH option to MIGRATE command #733

  • Add MASTER type to KillArgs #760

Enhancements

  • Support for command timeouts (async, reactive) #435

  • Use object pooling for collections inside a single method and Command/CommandArgs with a small scope #459

  • Add support for Redis streams #606

  • Introduce dedicated exceptions for NOSCRIPT and BUSY responses #620 (Thanks to @DaichiUeura)

  • Non-blocking connection pooling #631

  • Introduce fast-path publishing in RedisPublisher #637

  • Add reactive scanning #638

  • Asynchronous connection initialization #640

  • Create reusable abstraction for non-blocking and keyed connection provider #642

  • Expose asynchronous connect method for Master/Slave connections #643

  • Add SocketAddressOutput to directly parse SENTINEL get-master-addr-by-name output #644

  • Misleading wasRolledBack method #662 (Thanks to @graineri)

  • Read from random slave preferred #676 (Thanks to @petetanton)

  • Introduce exception to represent Redis LOADING response #682

  • Do not fail if COMMAND command fails on startup #685 (Thanks to @pujian1984)

  • CommandHandler.write() is O(N^2) #709 (Thanks to @gszpak)

  • Cluster topology lookup should not replaces self-node details with host and port from RedisURI when RedisURI is load balancer #712 (Thanks to @warrenzhu25)

  • Optimize Partitions/RedisClusterNode representation #715

  • Unnecessary copying of byteBuf in CommandHandler.decode() #725 (Thanks to @gszpak)

  • Add unknown node as trigger for adaptive refresh #732

Fixes

  • PING responses are not decoded properly if Pub/Sub connection is subscribed #579

  • Lettuce doesn't fail early & cleanly with a host in protected mode #608 (Thanks to @exercitussolus)

  • CommandHandler.rebuildQueue() causes long locks #615 (Thanks to @nikolayspb)

  • Request queue size is not cleared on reconnect #616 (Thanks to @nikolayspb)

  • BITPOS should allow to just specify start. #623 (Thanks to @christophstrobl)

  • HMGET proxy not working as expected #627 (Thanks to @moores-expedia)

  • Consider binary arguments using command interfaces as keys using binary codecs #628

  • Command.isDone() not consistent with CompletableFuture.isDone() #629

  • Race condition in RedisPublisher DEMAND.request() and DEMAND.onDataAvailable() #634 (Thanks to @mayamoon)

  • RedisPublisher.request(-1) does not fail #635

  • Capture subscription state before logging in RedisPublisher #636

  • Provide Javadoc path for Project Reactor #641

  • Debug logging of ConnectionWatchdog has wrong prefix after reconnect. #645 (Thanks to @mlex)

  • Cannot close connection when refreshing topology #656 (Thanks to @dangtranhoang)

  • Weights param should be ignored if it is empty #657 (Thanks to @garfeildma)

  • MasterSlave getNodeSpecificViews NPE with sync API #659 (Thanks to @boughtonp)

  • RandomServerHandler can respond zero bytes #660

  • ConcurrentModificationException when connecting a RedisClusterClient #663 (Thanks to @blahblahasdf)

  • Switch RedisSubscription.subscriber to volatile #664

  • Recovered Sentinels in Master/Slave not reconnected #668

  • Handling dead Sentinel slaves #669 (Thanks to @vleushin)

  • Move SocketAddressResolver resolution back to calling thread #670

  • Support SLAVE_PREFERRED at valueOf method #671 (Thanks to @be-hase)

  • RedisCommandTimeoutException after two subsequent MULTI calls without executing the transaction #673 (Thanks to @destitutus)

  • Fix ConnectionWatchDog won't reconnect problem in edge case #679 (Thanks to @kojilin)

  • At least once mode keeps requeueing commands on non-recoverable errors #680 (Thanks to @mrvisser)

  • Retain ssl/tls config from seed uris in Master/Slave context #684 (Thanks to @acmcelwee)

  • NOAUTH after full queue and reconnect #691

  • RedisURI.create("localhost") causes NPE #694

  • Async connect methods report original cause #708

  • Mono returned by RedisPubSubReactiveCommands#subscribe does not return result #717 (Thanks to @ywtsang)

  • RuntimeExceptions thrown by implementations of RedisCodec do not fail TransactionCommands #719 (Thanks to @blahblahasdf)

  • Connection Leak in Cluster Topology Refresh #721 (Thanks to @cweitend)

  • Ensure Master/Slave topology refresh connections are closed #723

  • RedisPubSubAdapter.message() being called with wrong channel #724 (Thanks to @adimarco)

  • Batched commands may time out although data was received #729

  • DefaultEndpoint future listener recycle lose command context on requeue failures #734 (Thanks to @gszpak)

  • AsyncPool, AsyncConnectionPoolSupport are nowhere to be found #739 (Thanks to @fabienrenaud)

  • firstResponseLatency is always negative #740 (Thanks to @nickvollmar)

  • EXEC does not fail on EXECABORT #743 (Thanks to @dmandalidis)

  • Warning when refreshing topology #756 (Thanks to @theliro)

  • DefaultEndpoint.QUEUE_SIZE becomes out of sync, preventing command queueing #764 (Thanks to @nivekastoreth)

  • DefaultEndpoint contains System.out.println(…) #765

  • Do not retry completed commands through RetryListener #767

Other

  • Upgrade to netty 4.0.53.Final/4.1.17.Final #646

  • Upgrade to Reactor Bismuth SR4 #647

  • Upgrade to Spring Framework 4.3.12 #648

  • Upgrade to Commons Pool 2.4.3 #650

  • Upgrade to RxJava 1.3.3 #651

  • Upgrade to RxJava2 2.1.6 #652

  • Upgrade to HdrHistogram 2.1.10 #653

  • Upgrade Redis versions on TravisCI #655

  • Upgrade to Reactor Bismuth SR5 #698

  • Upgrade to netty 4.1.21.Final #699

  • Upgrade to RxJava 1.3.6 #700

  • Upgrade to RxJava 2.1.9 #701

  • Upgrade to Reactor Bismuth SR6 #704

  • Upgrade to Netty 4.1.22 #744

  • Upgrade to RxJava 1.3.7 #745

  • Upgrade to Spring Framework 4.3.14 #746

  • Upgrade to Mockito 2.17 #747

  • Upgrade to AssertJ 3.9.1 #748

  • Upgrade to Log4j 2.11.0 #749

  • Upgrade to commons-lang3 3.7 #750

  • Upgrade to netty 4.1.23.Final #755

  • Upgrade to Reactor Bismuth SR8 #758

  • Upgrade to RxJava 1.3.8 #759

  • Extend documentation for argument objects #761

  • Upgrade to JavaParser 3.6.3 #769

  • Upgrade to netty 4.1.24.Final #770

  • Upgrade to RxJava 2.1.13 #771

详情见发布公告

下载地址


【声明】文章转载自:开源中国社区 [http://www.oschina.net]


以上所述就是小编给大家介绍的《Lettuce 5.1.0.M1 发布,带来 5 大功能特性变更》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

About Face 2.0

About Face 2.0

Alan Cooper、Robert M. Reimann / Wiley / March 17, 2003 / USD 35.00

First published seven years ago-just before the World Wide Web exploded into dominance in the software world-About Face rapidly became a bestseller. While the ideas and principles in the original book......一起来看看 《About Face 2.0》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

MD5 加密
MD5 加密

MD5 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换