Skip to content

Commit

Permalink
Merge pull request #14200 from dzafman/wip-18533-again
Browse files Browse the repository at this point in the history
Fixes: http://tracker.ceph.com/issues/19391

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
  • Loading branch information
dzafman committed Mar 28, 2017
2 parents 98a87fa + 2d66846 commit 55444ce
Show file tree
Hide file tree
Showing 7 changed files with 761 additions and 218 deletions.
18 changes: 16 additions & 2 deletions src/os/ObjectMap.h
Expand Up @@ -124,20 +124,34 @@ class ObjectMap {
) = 0;


/// Clone keys efficiently from oid map to target map
/// Clone keys from oid map to target map
virtual int clone(
const ghobject_t &oid, ///< [in] object containing map
const ghobject_t &target, ///< [in] target of clone
const SequencerPosition *spos=0 ///< [in] sequencer position
) { return 0; }

/// Rename map because of name change
virtual int rename(
const ghobject_t &from, ///< [in] object containing map
const ghobject_t &to, ///< [in] new name
const SequencerPosition *spos=0 ///< [in] sequencer position
) { return 0; }

/// For testing clone keys from oid map to target map using faster but more complex method
virtual int legacy_clone(
const ghobject_t &oid, ///< [in] object containing map
const ghobject_t &target, ///< [in] target of clone
const SequencerPosition *spos=0 ///< [in] sequencer position
) { return 0; }

/// Ensure all previous writes are durable
virtual int sync(
const ghobject_t *oid=0, ///< [in] object
const SequencerPosition *spos=0 ///< [in] Sequencer
) { return 0; }

virtual bool check(std::ostream &out) { return true; }
virtual int check(std::ostream &out, bool repair = false) { return 0; }

typedef KeyValueDB::GenericIteratorImpl ObjectMapIteratorImpl;
typedef ceph::shared_ptr<ObjectMapIteratorImpl> ObjectMapIterator;
Expand Down

0 comments on commit 55444ce

Please sign in to comment.