Redis 7.0.1 現(xiàn)已發(fā)布,包含了針對 7.0 版本中一些新功能的 behavior changes 以及重要的錯誤修復(fù);升級緊迫性為中等。具體更新內(nèi)容如下:
改進
- 為可疑的 slow system clocksource setting 添加警告添加 –check-system 命令行選項。(#10636)
- 在 CLIENT PAUSE WRITE 期間允許只讀腳本(*_RO 命令和帶有 no-writes flag 的) ( #10744)
- 在 COMMAND 命令中為 EVAL_RO、EVALSHA_RO 和 FCALL_RO 添加 readonlyflag ( #10728 )
- redis-server 命令行參數(shù)現(xiàn)在接受一個帶有空格的字符串用于多參數(shù)配置(#10660)
潛在的 Breaking Changes
- 在命令行參數(shù)中省略配置選項值不再有效 ( #10660 )
- 隱藏 COMMAND 命令響應(yīng)中的 may_replicateflag ( #10744 )
Redis 7.0 新功能的潛在 Breaking Changes
- CLUSTER SHARDS 返回 slots 為 RESP 整數(shù),而不是字符串 ( #10683 )
- 在只讀腳本中阻止 PFCOUNT 和 PUBLISH(#10744)
CLI 工具的變化
- redis-cli –bigkeys、–memkeys、–hotkeys、–scan。在 Ctrl+C 之后很好地完成 ( #10736 )
平臺 / 工具鏈支持相關(guān)改進
- 支持 MacOs 上的 tcp-keepalive 配置間隔 ( #10667 )
- 支持 Haiku OS 上的 RSS 指標 ( #10687 )
INFO fields and introspection changes
- 添加用于復(fù)制的 isolated network metrics。(#10062,#10810)
Module API changes
- 向 RM_Call 腳本模式添加兩個新檢查 ( #10786 )
- 添加新的 RM_Call 標志讓 Redis 自動拒絕 deny-oom 命令 ( #10786 )
- 添加模塊 API RM_MallocUsableSize ( #10795 )
- 添加缺少的 REDISMODULE_NOTIFY_NEW ( #10688 )
- 修復(fù) RedisModuleScanCursor 中的游標類型以處理超過 2^31 個元素 ( #10698 )
- 修復(fù) RM_Yield 錯誤和 RM_Call (“EVAL”) OOM 檢查錯誤 ( #10786 )
- 修復(fù)枚舉配置中具有重疊位標志的錯誤 ( #10661 )
Bug 修復(fù)
- FLUSHALL 正確重置 rdb_changes_since_last_save INFO 字段 ( #10691 )
- FLUSHDB 現(xiàn)在傳播到 replicas/AOF,即使數(shù)據(jù)庫是空的 ( #10691 )
- 如果主服務(wù)器無響應(yīng),Replica 將失敗并重試 PSYNC ( #10726 )
- 修復(fù) zset_max_listpack_entries 為 0 時 ZRANGESTORE 崩潰(#10767)
修復(fù)了 Redis 7.0 之前候選版本中的問題
- CONFIG REWRITE 可能會導(dǎo)致 aliased configs 的 config change 被丟棄(#10811)
- CONFIG REWRITE 將省略 rename-command 并包含行 ( #10761 )注意:使用 Redis 7.0.0 重寫其配置文件的受影響用戶應(yīng)查看并修復(fù)該文件。
- 修復(fù) MISCONF (persistence) 錯誤后損壞的協(xié)議 ( #10786 )
- 修復(fù) –save 命令行回歸 ( #10690 )
- 修復(fù)圍繞 TLS 配置更改的可能回歸。即使文件名沒有改變,也要重新加載文件。(#10713)
- 重新添加 SENTINEL SLAVES 命令,在 redis 7.0 中缺失 ( #10723 )
- 修復(fù) XADD 和 XTRIM 中可能存在的內(nèi)存泄漏 ( #10753 )
更多詳情可查看:https://github.com/redis/redis/releases/tag/7.0.1