Object watcher can't be deleted when primary goes to down

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all,

Currently, Object watcher just register timeout callback function
HandleWatchTimeout on primary OSD.
However, If primary OSD and rbd client becomes down at the time (If
virtual machine and ceph-osd is on the same physical server) ,  then
the replica OSD will leave the watcher there until the Object is
accessed and populate the watcher again. So eventually, if we want to
remove the unused image, it will return error saying image is still
busy because the watcher is still there.
Currently, if we want to find out the object containing watchers, we
need to scan all objects so that it is unreasonable to do that. But I
think it is reasonable to remove the watcher normally in this case,
otherwise client will get wrong information about whether the image is
busy. So we can record the watcher information in omap and retrieve
the information the cluster restart or something primary OSD is down?

Regards
Ning Yao
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux