oslo.cache/releasenotes/notes/bug-1888394-5a53e7a9cb25375b.yaml
Michal Arbet a437b219ac Do not hardcode flush_on_reconnect, move to oslo.cache config
Param flush_on_reconnect is very risky to use on production
deployments. It can cause exponential raising of connections
to memcached servers. Moreover this option makes sense only
in keystone's oslo.cache config.

This patch is moving flush_on_reconnect from code to oslo.cache
config block to be configurable.

Co-Authored-By: Hervé Beraud <hberaud@redhat.com>
Change-Id: I8e6826bfb2c85e7ceed03e1667bd6a06b3dff469
Closes-Bug: #1888394
2021-01-18 13:59:55 +01:00

23 lines
1020 B
YAML

---
fixes:
- |
[`bug 1888394 <https://bugs.launchpad.net/oslo.cache/+bug/1888394>`_]
If a memcache server disappears and then reconnects when multiple memcache
servers are used (specific to the python-memcached based backends) it is
possible that the server will contain stale data. To avoid this, param
flush_on_reconnect was used in code.
But unfortunatelly this option is causing another issue.
If memcache server disappears, or client had broken connection to memcache server,
clients start to flush server on reconnect.
This means that network connections will go UP and can cause server to be overloaded
until memcache will be unresponsive.
Simply said this option can cause loop of flushs and overloaded memcached servers.
This change is moving optional parameter `flush_on_reconnect` to oslo.cache config.
features:
- Configuration option ``memcache_pool_flush_on_reconnect`` added to control
if flush will be sent to memcached server after reconnect.