commit f1d9c54ef07c61cb80def5779802cc4daf45f4cb
Author: David Stanek <email address hidden>
Date: Mon Aug 1 21:06:50 2016 +0000
Distributed cache namespace to invalidate regions
dogpile.cache's region invalidation is not designed to work across
processes. This patch enables distributed invalidation of keys in a
region.
Instead of using a static cache key, we use the original cache key
and append a dynamic value to it. This value is looked up in
memcached using the region name as a key. So anytime the value of
the region key changes the cache keys in that region are
effectively invalidated.
Conflicts:
keystone/assignment/core.py: imports were fixed
keystone/catalog/core.py: imports were fixed
keystone/common/cache/core.py: dogpile.cache doesn't have invalidation strategies in 0.5.8. Because of that, call to region.invalidate was redefined.
keystone/identity/core.py: there is no per-region cache in id_mapping_api in Mitaka
keystone/revoke/core.py: there is no per-region cache in revocations in Mitaka
keystone/server/backends.py: removed configuration of regions which were added only in Newton
keystone/tests/unit/test_v3_assignment.py: conflict due to freezegun being used in Newton and not used in Mitaka
keystone/token/provider.py: there is no per-region cache in token providers in Mitaka
Closes-Bug: #1590779
Change-Id: Ib80d41d43ef815b37282d72ad68e7aa8e1ff354e
(cherry picked from commit 42eda48c78f1153081b4c193dc13c88561409fd3)
Reviewed: https:/ /review. openstack. org/369618 /git.openstack. org/cgit/ openstack/ keystone/ commit/ ?id=f1d9c54ef07 c61cb80def57798 02cc4daf45f4cb
Committed: https:/
Submitter: Jenkins
Branch: stable/mitaka
commit f1d9c54ef07c61c b80def5779802cc 4daf45f4cb
Author: David Stanek <email address hidden>
Date: Mon Aug 1 21:06:50 2016 +0000
Distributed cache namespace to invalidate regions
dogpile.cache's region invalidation is not designed to work across
processes. This patch enables distributed invalidation of keys in a
region.
Instead of using a static cache key, we use the original cache key
and append a dynamic value to it. This value is looked up in
memcached using the region name as a key. So anytime the value of
the region key changes the cache keys in that region are
effectively invalidated.
Conflicts: assignment/ core.py: imports were fixed catalog/ core.py: imports were fixed common/ cache/core. py:
dogpile. cache doesn't have invalidation strategies
in 0.5.8. Because of that, call to
region. invalidate was redefined. identity/ core.py:
there is no per-region cache in id_mapping_api
in Mitaka revoke/ core.py:
there is no per-region cache in revocations
in Mitaka server/ backends. py:
removed configuration of regions which were added
only in Newton tests/unit/ test_v3_ assignment. py:
conflict due to freezegun being used in Newton and
not used in Mitaka token/provider. py:
there is no per-region cache in token providers
in Mitaka
keystone/
keystone/
keystone/
keystone/
keystone/
keystone/
keystone/
keystone/
Closes-Bug: #1590779 b37282d72ad68e7 aa8e1ff354e 081b4c193dc13c8 8561409fd3)
Change-Id: Ib80d41d43ef815
(cherry picked from commit 42eda48c78f1153