New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
quincy: rbd-mirror: fix race preventing local image deletion #52626
Conversation
On primary image deletion, a race between InstanceReplayer::release_image() (which calls ImageReplayer::stop())and ImageReplayer::handle_bootstrap() may prevent the non-primary image from being deleted. Because ImageReplayer::handle_bootstrap() checks if the start has been canceled before processing -ENOLINK, m_delete_requested is not set to true and the local image is not deleted. This commit sets m_delete_requested to true before checking if the start has been canceled to ensure that the image is deleted during shut_down, and updates ImageReplayer::bootstrap() to cancel the BootstrapRequest and prevent a potentially long time spent in an image sync if ImageReplayer stop is requested. Fixes: https://tracker.ceph.com/issues/61672 Signed-off-by: N Balachandran <nibalach@redhat.com> (cherry picked from commit 1df7921)
Build blocked on https://tracker.ceph.com/issues/62097. |
jenkins test make check |
jenkins test api |
jenkins test make check |
|
@ljflores It looks you were the one who pinned @nizamial09 Any idea where google-auth dependency is coming from and why this issue isn't hit in main or reef? |
|
i'll be on vacation from today onwards, so it might be good if someone kept an eye on the PR. |
jenkins test make check |
Yup, that was it, thanks @nizamial09! |
backport tracker: https://tracker.ceph.com/issues/62112
backport of #52057
parent tracker: https://tracker.ceph.com/issues/61672
this backport was staged using ceph-backport.sh version 16.0.0.6848
find the latest version at https://github.com/ceph/ceph/blob/main/src/script/ceph-backport.sh