2023.1 系列发布说明¶
2023.1-eom-2¶
错误修复¶
如果 tls_enabled=true,memcache_pool 已切换为使用 bmemcached。
3.1.0¶
新特性¶
添加了对 olso.cache 支持 SASL 的功能,以提高认证机构的安全性。
2.10.0¶
新特性¶
添加新的选项 (
hashclient_retry_attempts,hashclient_retry_delay,dead_timeout) 以允许通过 dogpile.cache 的 pymemcache 后端配置 pymemcache 的 HashClient 使用。这些选项公开了 pymemcache 参数,允许配置 memcached 集群的故障转移。
添加新的选项 (
enable_retry_client,retry_attempts,retry_delay) 以向 pymemcache 后端添加重试机制。
新的选项 (
enable_socket_keepalive,socket_keepalive_idle,socket_keepalive_interval,socket_keepalive_count) 允许使用和配置 pymemcache 的 socket keepalive 功能。
2.7.0¶
新特性¶
添加了一个新的 memcached 驱动程序,它通过 dogpile.cache 使用 pymemcache。
添加了配置选项
memcache_pool_flush_on_reconnect以控制在重新连接后是否向 memcached 服务器发送 flush 命令。
错误修复¶
[bug 1888394] 如果一个 memcache 服务器消失然后重新连接,当使用多个 memcache 服务器时(特定于基于 python-memcached 的后端),服务器可能包含过时的数据。为了避免这种情况,代码中使用了 param flush_on_reconnect。
但不幸的是,这个选项导致了另一个问题。如果 memcache 服务器消失,或者客户端与 memcache 服务器的连接中断,客户端将在重新连接时开始刷新服务器。
这意味着网络连接将变为 UP,并且可能导致服务器过载,直到 memcache 变得无响应。
简单地说,这个选项可能会导致刷新循环和过载的 memcached 服务器。此更改将可选参数
flush_on_reconnect移动到 oslo.cache 配置。
2.2.0¶
错误修复¶
通过切换到基于 pymemcache 的客户端来修复 oslo.cache 版本 2.1.0 中损坏的 memcache_pool 后端。重新引入基于 python-memcached 的客户端作为 memcache_pool dogpile 后端的默认客户端。
2.1.0¶
错误修复¶
从 python-memcached 切换到 pymemcache 用于 memcache_pool。这避免了 thread.local 使用问题并修复了继承中遇到的错误。这仅适用于 dogpile.cache memcached 后端。
2.0.0¶
升级说明¶
已停止支持 Python 2.7。oslo.cache 现在支持的 Python 最低版本是 Python 3.6。
1.37.0¶
升级说明¶
已将
memcache_socket_timeout的默认值从 3 秒降低到 1 秒。这种积极影响可以在下游 更改 中找到。如果您的部署明确依赖于 3 秒的超时时间,请在您的配置中设置该覆盖。
1.34.0¶
错误修复¶
[bug 1819957] 如果一个 memcache 服务器消失然后重新连接,当使用多个 memcache 服务器时(特定于基于 python-memcached 的后端),服务器可能包含过时的数据。默认情况下,现在是将可选参数
flush_on_reconnect提供给后端。这意味着当服务连接到 memcache 服务器时,它将刷新服务器中的所有缓存数据。此更改仅影响池后端,因为它是最有可能(大量使用 greenlet)受到此问题影响,并且是推荐的生产配置。请参阅 python-memcached 的帮助
- @param flush_on_reconnect: 可选标志,可防止
可能导致读取过时数据的场景:如果存在多个 memcached 服务器并且与其中一个的连接中断,映射到该服务器的键将被重新分配到另一个服务器。如果第一个服务器恢复,这些键将再次映射到它。如果它仍然保留其数据,get() 可能会读取在另一个服务器上覆盖的过时数据。默认情况下,此标志关闭以保持向后兼容性。
1.31.1¶
其他说明¶
[bug 1743036] 配置 memcache 时 url 的 backend_argument 值无法正确处理多个服务器。这是因为 URL 作为字符串(逗号分隔)传递给 memcache 库/客户端,而不是列表。现在,url 参数是特殊处理的,并且将在逗号上拆分字符串,以便镜像 memcache_servers 选项使用的 ListOpt 行为。
1.30.0¶
新特性¶
memcache_socket_timeout 已更改为浮点数,给定了相同的默认值“3.0”。
1.22.0¶
新特性¶
添加了一个新的 etcd3gw 驱动程序,它使用 etcd 3.x grpc-gateway HTTP “/v3alpha” API 来缓存键/值对。
1.9.0¶
其他说明¶
切换到 reno 来管理发布说明。