Keystone Caching Layer Implementation.
keystone.common.cache.core.DistributedInvalidationStrategy(region_manager)[source]¶Bases: dogpile.cache.region.RegionInvalidationStrategy
invalidate(hard=None)[source]¶Region invalidation.
CacheRegion propagated call.
The default invalidation system works by setting
a current timestamp (using time.time()) to consider all older
timestamps effectively invalidated.
is_hard_invalidated(timestamp)[source]¶Check timestamp to determine if it was hard invalidated.
Boolean. True if timestamp is older than
the last region invalidation time and region is invalidated
in hard mode.
is_invalidated(timestamp)[source]¶Check timestamp to determine if it was invalidated.
Boolean. True if timestamp is older than
the last region invalidation time.
is_soft_invalidated(timestamp)[source]¶Check timestamp to determine if it was soft invalidated.
Boolean. True if timestamp is older than
the last region invalidation time and region is invalidated
in soft mode.
keystone.common.cache.core.RegionInvalidationManager(invalidation_region, region_name)[source]¶Bases: object
REGION_KEY_PREFIX = '<<<region>>>:'¶region_id¶keystone.common.cache.core.create_region(name)[source]¶Create a dopile region.
Wraps oslo_cache.core.create_region. This is used to ensure that the Region is properly patched and allows us to more easily specify a region name.
name (str) – The region name
The new region.
dogpile.cache.region.CacheRegion
keystone.common.cache.core.get_memoization_decorator(group, expiration_group=None, region=None)[source]¶keystone.common.cache.core.is_replay(region, key, expiration_time=None)[source]¶Return whether key has already been recorded in region.
Check this before honoring a one-time-use value (nonce, passcode,
receipt, …), then call mark_used() once it is consumed.
region – a configured dogpile CacheRegion.
key – the identifying string for the one-time-use value.
expiration_time – seconds to honor a recorded value for,
overriding the region’s own expiration_time. Pass the value’s
real validity window plus a margin, so protection isn’t at the
mercy of an operator’s general-purpose [cache] expiration_time.
True if key was already recorded (a replay).
keystone.common.cache.core.mark_used(region, key)[source]¶Record key in region for a later is_replay() check.
Expiration is enforced on the read side by is_replay().
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.