]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
librbd: send FLUSH_SOURCE_INTERNAL when do copy/deep_copy. 43659/head
authorJianpeng Ma <jianpeng.ma@intel.com>
Mon, 1 Nov 2021 00:33:23 +0000 (08:33 +0800)
committerJianpeng Ma <jianpeng.ma@intel.com>
Mon, 1 Nov 2021 00:33:23 +0000 (08:33 +0800)
commita2ae83f8aab18933eae77cf3034b740082a39e4f
tree10d20e3476e22cde8b37b68a5a8db13fbb5cb15c
parent9b3fdce0ab1c02dde23b7912d1b0cc7a087dcde8
librbd: send FLUSH_SOURCE_INTERNAL when do copy/deep_copy.

copy/deep_copy use object_map to judge whether object exist.
If w/ librbdo pwl cache, flush can't flush data to osd which
change objectmap state. So we should send flush w/ FLUSH_SOURCE_INTERNAL
to make data flush to osd.

Fixes:https://tracker.ceph.com/issues/53057
Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
src/librbd/api/Image.cc
src/librbd/internal.cc