Skip to content

squid: mgr/volumes: allow disabling async job thread#62433

Open
rishabh-d-dave wants to merge 8 commits intoceph:squidfrom
rishabh-d-dave:mgr-vol-no-del-squid
Open

squid: mgr/volumes: allow disabling async job thread#62433
rishabh-d-dave wants to merge 8 commits intoceph:squidfrom
rishabh-d-dave:mgr-vol-no-del-squid

Conversation

@rishabh-d-dave
Copy link
Contributor

@rishabh-d-dave rishabh-d-dave commented Mar 21, 2025

Original PR - #54396, #66213

Fixes: https://tracker.ceph.com/issues/70460
Parent tracker: https://tracker.ceph.com/issues/68630

Fixes: https://tracker.ceph.com/issues/70462
Parent tracker: https://tracker.ceph.com/issues/61903

Fixes: https://tracker.ceph.com/issues/74021
Parent tracker: https://tracker.ceph.com/issues/73811

Contribution Guidelines

  • To sign and title your commits, please refer to Submitting Patches to Ceph.

  • If you are submitting a fix for a stable branch (e.g. "quincy"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.

  • When filling out the below checklist, you may click boxes directly in the GitHub web UI. When entering or editing the entire PR message in the GitHub web UI editor, you may also select a checklist item by adding an x between the brackets: [x]. Spaces and capitalization matter when checking off items this way.

Checklist

  • Tracker (select at least one)
    • References tracker ticket
    • Very recent bug; references commit where it was introduced
    • New feature (ticket optional)
    • Doc update (no ticket needed)
    • Code cleanup (no ticket needed)
  • Component impact
    • Affects Dashboard, opened tracker ticket
    • Affects Orchestrator, opened tracker ticket
    • No impact that needs to be tracked
  • Documentation (select at least one)
    • Updates relevant documentation
    • No doc update is appropriate
  • Tests (select at least one)
Show available Jenkins commands

Add mechansim that allows pausing/resuming of the entire async job
machinery that queues, launches and picks next async job; both async
jobs, clones as well as purges.

And then add mgr/vol config option pause_purging and pause_cloning so
that both of these async jobs can be paused and resumed individually.

Fixes: https://tracker.ceph.com/issues/61903
Fixes: https://tracker.ceph.com/issues/68630
Signed-off-by: Rishabh Dave <ridave@redhat.com>
(cherry picked from commit 01d37d5)
Whitespace is not removed from the end of the stdout returned by the
method get_ceph_cmd_stdout(). Follow the same policy here since it is
better to not do so (this whitespace can be useful, when copying Ceph
auth keyrings from stdout to a file) and also for sake of uniformity of
interfaces.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
(cherry picked from commit 9582b9b)

Conflicts:
qa/tasks/cephfs/mount.py
- Method get_shell_stdout() was absent in mount.py, it has been added
  now in this very commit since it future commit from this PR need it.
Setting MGR config option mgr/volumes/pause_purging to true halts
all ongoing purges and allows no new purging to begin until this option
is changed to false. Add tests for this.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
(cherry picked from commit f38fcbc)

Conflicts:
qa/tasks/cephfs/test_volumes.py
- safe_while was already needed to be import on main branch but it is
  not in Squid branch which lead to the conflict. It has been imported
  now through this commit since tests in it need it.
- Some test methods right next to new test added by this commit are
  absent in Squid compared to main branch which lead
Trash directory for a volume is not created by default. If
_wait_for_trash_empty() in test_volumes.py encounters absence of trash
directory, return true.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
(cherry picked from commit 6d6be8b)
mgr/vol config option pause_cloning allows pausing of cloner threads.
Add tests for this.

Signed-off-by: Rishabh Dave <ridave@redhat.com>
(cherry picked from commit e7eb36e)
Update documentation for add information about mgr/vol config options
"pause_purging" and "pause_cloning".

Signed-off-by: Rishabh Dave <ridave@redhat.com>
(cherry picked from commit 1f0bfe1)
Added release notes for mgr/vol config option "pause_purging and
"pause_cloning".

Signed-off-by: Rishabh Dave <ridave@redhat.com>
(cherry picked from commit 03b90d5)
@joscollin
Copy link
Member

This PR is under test in https://tracker.ceph.com/issues/73331.

Fixes: https://tracker.ceph.com/issues/73811
Signed-off-by: Rishabh Dave <ridave@redhat.com>
(cherry picked from commit 3d76fb3)
@rishabh-d-dave
Copy link
Contributor Author

Added a doc commit for fixing a doc but that was written and merged recently in main. Since it's a doc fix, QA run results should remain unaffected by it.

@joscollin
Copy link
Member

jenkins test docs

Copy link
Contributor

@neesingh-rh neesingh-rh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@neesingh-rh
Copy link
Contributor

jenkins test docs

1 similar comment
@neesingh-rh
Copy link
Contributor

jenkins test docs

@joscollin
Copy link
Member

jenkins test docs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants