]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
mon: MonitorDBStore: add store iterators to obtain chunks for sync
authorJoao Eduardo Luis <joao.luis@inktank.com>
Wed, 15 Aug 2012 14:35:39 +0000 (15:35 +0100)
committerJoao Eduardo Luis <joao.luis@inktank.com>
Thu, 21 Feb 2013 18:02:22 +0000 (18:02 +0000)
commitd8a5cf6b4f74142151c493aea1adcd38ad9d8a9d
tree06d2b888774323e31b08a225fe19ede52ceaecaa
parentb33d4eacaadd84eb765df55772dc9d11cbc6e36e
mon: MonitorDBStore: add store iterators to obtain chunks for sync

We created an interface specific to the MonitorDBStore, which can be used
to create iterators to obtain chunks for sync.

Two different iterators were defined: one that will iterate over the whole
store, focusing on the specified set of prefixes; another that will
iterate over only one specific prefix.

These two different iterators allow us build the sync process in two
distinct phases: 1) obtain all key/value pairs for paxos and all paxos
services, bundle them in chunks and send them over the wire; and 2) obtain
all the paxos versions, bundle them in chunks and send them over the wire.

Also, we are currently considering a chunk to be (at most) 1 MB worth of
data, although it can be tuned using 'mon_sync_max_payload_size' option.

mon: MonitorDBStore: add crc support when --mon-sync-debug is set

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
src/common/config_opts.h
src/mon/MonitorDBStore.h