-
Couldn't load subscription status.
- Fork 580
rbd: prevent restarting mirror resync when the mirror is syncing already #5279
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
Conversation
|
Lots of CI jobs failed, that should be fixed once #5281 is merged. |
acaaf11 to
01df18d
Compare
|
Thanks @nixpanic this PR looks good to me. I will be waiting for Ilya to review it as per the discussion going on in jira. |
👍 , I agree this set of change is good to have regardless. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks
|
@Mergifyio queue |
✅ The pull request has been merged automaticallyThe pull request has been merged automatically at 86576b4 |
By introducing a SyncInfo interface, the `getLastSyncInfo` function can be removed from the csi-addons/rbd package. Getting details from an RBD mirror status, should be part of the main internal/rbd package, the CSI-Addons components should only use the internal API, and not add any parsing logic. This makes it easier to enhance the SyncInfo interface in the future. Signed-off-by: Niels de Vos <[email protected]>
Signed-off-by: Niels de Vos <[email protected]>
Signed-off-by: Niels de Vos <[email protected]>
It may take some time for the RBD-mirror daemon to start syncing the image. After the resync operation is executed, the status of the resync is checked with a small delay to prevent subsequent resync calls from re-starting the resync quickly after each other. Signed-off-by: Niels de Vos <[email protected]>
01df18d to
4a29952
Compare
|
/test ci/centos/upgrade-tests-cephfs |
|
/test ci/centos/k8s-e2e-external-storage/1.31 |
|
/test ci/centos/upgrade-tests-rbd |
|
/test ci/centos/k8s-e2e-external-storage/1.32 |
|
/test ci/centos/mini-e2e-helm/k8s-1.31 |
|
/test ci/centos/mini-e2e-helm/k8s-1.32 |
|
/test ci/centos/k8s-e2e-external-storage/1.30 |
|
/test ci/centos/mini-e2e/k8s-1.31 |
|
/test ci/centos/mini-e2e/k8s-1.32 |
|
/test ci/centos/mini-e2e-helm/k8s-1.30 |
|
/test ci/centos/mini-e2e/k8s-1.30 |
There have been occasional reports where syncing an image never completes. The cause seems to come from Ceph-CSI, as it may call
mirror.Resync()even when the image is in asyncingstate. Every time Ceph-CSI callsmirror.Resync(), the resync is started from scratch. If this is called often enough, the resync is never able to complete.This PR introduces two improvements:
There are a few cleanups done as well, these make it simpler to implement the proposed changes.
Show available bot commands
These commands are normally not required, but in case of issues, leave any of
the following bot commands in an otherwise empty comment in this PR:
/retest ci/centos/<job-name>: retest the<job-name>after unrelatedfailure (please report the failure too!)