2

释出报告

 2 years ago
source link: https://blog.huangz.me/2022/redis7-rc2.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Redis 7.0 RC2 释出报告

Redis 核心团队最近释出了 7.0 版本的第 2 个 RC ,并在释出报告中罗列了该版本的变化,本文是该报告的中文翻译。

新特性

  • 为流消费者组添加了延迟追踪和报告功能(#9127)
  • 为函数 API 和 Lua 脚本添加了显式检查 ACL 权限的功能(#10220)

新用户命令以及命令参数

  • 新增 COMMAND GETKEYSANDFLAGS 子命令(#10237)
  • INFO 命令现在能够接受多个部分(section)作为参数(#6891)
  • XGROUP CREATESETID 添加了新的 ENTRIESREAD 可选项(#9127)
  • XSETID 添加了新的 ENTRIESADDEDMAXDELETEDID 可选项(#9127)

回复被扩展了的命令

  • XINFO 命令现在会汇报消费者组的延迟以及其他一些字段(#9127)
  • XAUTOCLAIM 命令现在会返回一个由被删除 ID 组成的列表 (#10227)

可能会破环兼容的修改

  • X[AUTO]CLAIM 现在会跳过被移除的节点而不是返回 Nil ,并从等待节点列表中移除这些已被移除的节点(#10227)
  • 修正了 EVAL 脚本返回混乱的错误代码的问题(#10218, #10329)
  • COMMAND INFO 命令将“键描述” CHANNEL 标志修改成了 NOT_KEY 标志(#10299)

性能和资源利用改进

  • 减少了客户端在回复时用到的系统调用和小体积包(#9934)
  • 减少了陈旧(stale)客户端的内存占用(#9822)
  • 修正了 Reids 6.2 引入的, Z[REV]RANGE 命令在按排名排序时产生的回归问题(#10337)

命令行工具的修改

  • 改造 redis-check-aof 工具以便让它适应新的分段式 AOF(#10061)
  • redis-benchmark 开始使用 RESP3 协议模式(#10335)

平台/工具链的相关改进

  • 修正 OpenSSL 3.0.x 相关的问题(#10291)

INFO 字段以及内省修改

  • COMMAND INFO 键描述现在有了新的 variable_flags 标志 (#10237, #10148)
  • INFO 状态:添加了 aof_rewrites and rdb_snapshots 计数器(#10178)
  • INFO 状态:添加了 reply_buffer_shrinks 以及 reply_buffer_expends 字段 (#9822)
  • INFO 模块:添加了 no-implicit-signal-modified 模块可选项(#10284)

模块 API 修改

  • Add RM_SetCommandInfo API to set command metadata for the new COMMAND introspection features and ACL key permissions (#10108)
  • Add RM_KeyAtPosWithFlags and RM_GetCommandKeysWithFlags APIs (#10237)
  • Add getchannels-api command flag and RM_IsChannelsPositionRequest, RM_ChannelAtPosWithFlags APIs (#10299)
  • Change RM_ACLCheckChannelPermissions and RM_ACLCheckKeyPermissions APIs (released in RC1) to take different flags (#10299)
  • Fix RM_SetModuleOptions flag collision. Bug in 7.0 RC1 header file, modules that used OPTIONS_HANDLE_REPL_ASYNC_LOAD will mess up key invalidations (#10284)

BUG 修复

  • Modules: Fix thread safety violation when a module thread adds an error reply, broken in 6.2 (#10278)
  • Lua: Fix Eval scripts active defrag, broken 7.0 in RC1 (#10271)
  • Fix geo search bounding box check causing missing results (#10018)
  • Lua: Add checks for min-slave-* configs when evaluating Lua scripts and Functions (#10160)
  • Modules: Prevent crashes and memory leaks when MODULE UNLOAD is used on module with a pending timer (#10187)
  • Fix error stats and failed command stats for blocked clients (#10309)
  • Lua/Modules: Fix missing and duplicate error stats for scripts and modules (#10329, #10278)
  • Check target node is a primary during CLUSTER SETSLOT (#10277)
  • Fix key deletion not to invalidate WATCH when used on a logically expired key (#10256)
  • Sentinel: return an error if configuration save fails (#10151)
  • Sentinel: fix a free-after-use issue re-registering Sentinels (#10333)
Redis 核心团队

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK