Stein 系列发布说明¶
1.33.3¶
错误修复¶
[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 行为。