]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
os: add prototype KineticStore 2091/head
authorJosh Durgin <josh.durgin@inktank.com>
Thu, 29 May 2014 19:23:30 +0000 (12:23 -0700)
committerJosh Durgin <josh.durgin@inktank.com>
Thu, 10 Jul 2014 20:23:35 +0000 (13:23 -0700)
commit59c00e5fd06c0ea012b6d93dd6abf8629298711d
tree0862ff12cdb09cf87d60fddc5032542de9c69aca
parentf51f162ebd6da4457399fcc7d8714cd3a6256aa9
os: add prototype KineticStore

Implement the KeyValueDB interface using libkinetic_client,
and allow it to be configured as the backend for the KeyValueStore,
running the entire OSD on it.

This prototype implementation has no transaction safety, and is
only suitable as a proof of concept. Since the libkinetic_client
API does not provide reverse iteration over keys without also reading
the value off disk, it implements iterators in a very slow but correct way.
These are used heavily by the KeyValueDB callers, so this is a bottleneck
in performance.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
configure.ac
src/common/config_opts.h
src/os/KeyValueStore.cc
src/os/KeyValueStore.h
src/os/KineticStore.cc [new file with mode: 0644]
src/os/KineticStore.h [new file with mode: 0644]
src/os/Makefile.am
src/osd/Makefile.am