View a markdown version of this page

Valkey 的主要版本行為和相容性差異 - Amazon ElastiCache

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Valkey 的主要版本行為和相容性差異

升級至新的主要 Valkey 版本時,請檢閱可能影響應用程式的下列行為變更。

Valkey 9.0

與 Valkey 8.x 相比,Valkey 9.0 引入了下列可能中斷的行為變更:

  • 身分驗證檢查會在命令驗證之前執行。未驗證的用戶端現在會收到身分驗證錯誤,而不是「未知命令」。(#1475)

  • 交易中的錯誤訊息包含完整命令名稱 (例如,CLIENT SETNAME而非 client)。(#2286)

  • GEOSEARCH 形狀錯誤訊息現在顯示「BYRADIUS、BYBOX 和 BYPOLYGON」。(#1809)

如需 Valkey 9.0 版本的詳細資訊,請參閱 Valkey 9.0 版本備註。

Valkey 8.1

與 Valkey 8.0 相比,Valkey 8.1 引入零可能中斷的行為變更。

如需 Valkey 8.1 版本的詳細資訊,請參閱 Valkey 8.1 版本備註。

Valkey 8.0

與 Valkey 7.2 相比,Valkey 8.0 引入了下列可能中斷的行為變更:

  • 巢狀MULTI或交易WATCH內部現在會中止交易。先前已無提示地忽略 。(#723)

  • SCAN 不會再傳回延遲過期的金鑰。(#501)

  • BITCOUNT 對於不存在的索引鍵上的無效引數, 和 會BITPOS傳回錯誤,而不是零。(Redis#11734)

  • 預設repl-backlog-size增加 1 MB → 10 MB。(#911)

  • 串流每個項目使用 8 個額外的位元組。(#688)

  • 錯誤訊息不再包含 "Redis" 品牌。(#206)

如需 Valkey 8.0 版本的詳細資訊,請參閱 Valkey 8.0 版本備註。

Valkey 7.2

Valkey 7.2.6 與舊版 Redis OSS 7.2.4 有類似的相容性差異。以下是 Valkey 7.2 和 Redis OSS 7.1 (或 7.0) 之間可能中斷的行為變更:

  • 凍結時間取樣會在命令執行期間和指令碼中發生。

  • 當金鑰不再存在時所釋出的封鎖串流命令,會帶有不同的錯誤代碼 (-NOGROUP 或 -WRONGTYPE,而不是 -UNBLOCKED)。

  • 指令碼的用戶端追蹤現在會追蹤指令碼讀取的金鑰,而不是 EVAL / FCALL 發起人宣告的金鑰。

如需 Valkey 7.2 版本的詳細資訊,請參閱 GitHub 上 Redis OSS 7.2.4 版本備註 (Valkey 7.2 包含 Redis OSS 至 7.2.4 版的所有變更) 和 Valkey 7.2 版本備註