This patch specifies a set of options required to setup the
socket keepalive of the dogpile.cache's pymemcache
backend [1][2]. This setup from those options can later on
be passed to this backend.
This patch also sets up the socket keepalive object based on
the configuration options passed via oslo.config and adds it
as an argument to be passed to the selected oslo.cache backend.
Dogpile.cache will be used as an interface between oslo.cache and
pymemcache [3].
This patch is needed to fix a TLS issue on stable branches introduced by
pymemcache (since train), where if a cluster node disappear the client
will fail without retrying to reconnect or to switch to an other node of
the cluster.
Reviewed: https:/ /review. opendev. org/c/openstack /oslo.cache/ +/826569 /opendev. org/openstack/ oslo.cache/ commit/ 2ad2d52f4ecb63d 9edfe3ae64cd9b7 dece5330a0
Committed: https:/
Submitter: "Zuul (22348)"
Branch: stable/xena
commit 2ad2d52f4ecb63d 9edfe3ae64cd9b7 dece5330a0
Author: Hervé Beraud <email address hidden>
Date: Fri Aug 6 11:49:17 2021 +0200
Add socket keepalive options to oslo.cache
This patch specifies a set of options required to setup the
socket keepalive of the dogpile.cache's pymemcache
backend [1][2]. This setup from those options can later on
be passed to this backend.
This patch also sets up the socket keepalive object based on
the configuration options passed via oslo.config and adds it
as an argument to be passed to the selected oslo.cache backend.
Dogpile.cache will be used as an interface between oslo.cache and
pymemcache [3].
This patch is needed to fix a TLS issue on stable branches introduced by
pymemcache (since train), where if a cluster node disappear the client
will fail without retrying to reconnect or to switch to an other node of
the cluster.
[1] https:/ /github. com/sqlalchemy/ dogpile. cache/pull/ 205 /github. com/pinterest/ pymemcache/ commit/ b289c87bb89b3ab 477bd5d92c8951a b42c923923 /dogpilecache. sqlalchemy. org/en/ latest/ api.html? highlight= keepalive# dogpile. cache.backends. memcached. PyMemcacheBacke nd.params. socket_ keepalive
[2]
https:/
[3]
https:/
Partial-Bug: #1959562 4e094c08046e215 0405dcf371e 3a8f4f9e63c5a57 dbcd2d1166)
Change-Id: I501100e1a48cdd
(cherry picked from commit f4fa6aa6fa2aca2