5a52ff8560
This changeset implements a KVS interface that makes use of dogpile's backends. Included is an in-memory database (primarily to be used for testing) that isolates data from modification via liberal use of copy.deepcopy. The memcached backend is a manager pivot to allow the use of the various dogpile.cache memcache backends while maintaining a simplified interface. The KVS system implements a Distributed-Capable locking system that hooks into the dogpile.cache backend mutexes. Locking can be toggled at configuration time for a given KeyValueStore instantiation. The original kvs implementation has been moved to keystone.common.kvs.legacy. For compatibility all elements of the old keystone.common.kvs namespace have been made available at keystone.common.kvs. The legacy kvs implementation has been marked for deprecation after the release of ICEHOUSE. DocImpact bp: dogpile-kvs-backends Change-Id: I8af1adfcb181f9118a1f21aada2e000c6cc0c201 |
||
---|---|---|
.. | ||
backends | ||
__init__.py | ||
core.py | ||
legacy.py |