-
Notifications
You must be signed in to change notification settings - Fork 6.1k
Fix dedup pool perms #65118
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
Draft
benhanokh
wants to merge
1,079
commits into
ceph:main
Choose a base branch
from
benhanokh:fix_dedup_pool_perms
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Fix dedup pool perms #65118
+316,220
−82,007
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Create a new file staging.py to reduce the size of handler.py and organize this a bit more. The staging.py file will be responsible for the special staging area store as well as functions that work directly on the staging store like the cross-check of resources. This change is nearly a straight more except for renaming some functions from _foo to foo. Signed-off-by: John Mulligan <[email protected]> (cherry picked from commit 978e92f)
The previous code relied on a cascading block of if-isintance statements that was dense and somwehat error prone as I found out during an experiment to add a new top level resource type. Refactor the cross check function to use singledispatch: https://docs.python.org/3.9/library/functools.html#functools.singledispatch Now instead of correctly adding check function(s) and updating the if-block, only new check functions using the register decorator is needed. Note that making this checking more generic is difficult as each different resource type really has different cross checking needs. Signed-off-by: John Mulligan <[email protected]> (cherry picked from commit f0ffb26)
Signed-off-by: John Mulligan <[email protected]> (cherry picked from commit ee6b29b)
The prune function was tightly linked to the staging store. Re-implement it as more generic operation on the staging store. Continue shrinking handler.py a bit and preparing to make it simpler to add future SMBResource types. Signed-off-by: John Mulligan <[email protected]> (cherry picked from commit 3633bfb)
tentacle: rgw/dedup: full object dedup Reviewed-by: Casey Bodley <[email protected]>
…cier/Tape endpoint Restoration of objects from certain cloud services (like Glacier/Tape) could take significant amount of time (even days). Hence store the state of such restore requests and periodically process them. Brief summary of changes * Refactored existing restore code to consolidate and move all restore processing into rgw_restore* file/class * RGWRestore class is defined to manage the restoration of objects. * Lastly, for SAL_RADOS, FIFO is used to store and read restore entries. Currently, this PR handles storing state of restore requests sent to cloud-glacier tier-type which need async processing. The changes are tested with AWS Glacier Flexible Retrieval with tier_type Expedited and Standard. Reviewed-by: Matt Benjamin <[email protected]> Reviewed-by: Adam Emerson <[email protected]> Reviewed-by: Jiffin Tony Thottan <[email protected]> Reviewed-by: Daniel Gryniewicz <[email protected]> Signed-off-by: Soumya Koduri <[email protected]> (cherry picked from commit ef96bb0)
In case adding restore entry to FIFO fails, reset the `restore_status` of that object as "RestoreFailed" so that restore process can be retried from the end S3 user. Reviewed-by: Adam Emerson <[email protected]> Reviewed-by: Jiffin Tony Thottan <[email protected]> Signed-off-by: Soumya Koduri <[email protected]> (cherry picked from commit 9974f51)
In addition, added some more debug statements and done code cleanup Reviewed-by: Adam Emerson <[email protected]> Reviewed-by: Jiffin Tony Thottan <[email protected]> Signed-off-by: Soumya Koduri <[email protected]> (cherry picked from commit f00ac7c)
Reviewed-by: Adam Emerson <[email protected]> Reviewed-by: Matt Benjamin <[email protected]> Signed-off-by: Soumya Koduri <[email protected]> (cherry picked from commit b3c867a)
tentacle: rgw: make keystone work without admin token(service ac requirement) Reviewed-by: Adam Emerson <[email protected]>
tentacle: rgw: make sure max_objs_per_shard is appropriate in debugging scenarios Reviewed-by: Casey Bodley <[email protected]>
Use new neorados/FIFO routines to store restore state. Note: Old librados ioctx is also still retained as it is needed by RestoreRadosSerializer. Signed-off-by: Soumya Koduri <[email protected]> (cherry picked from commit faf06bc)
Signed-off-by: Soumya Koduri <[email protected]> (cherry picked from commit a981b4c)
Fix the version of `restore_pool` and `dedup_pool` to be compatible with earlier releases. Signed-off-by: Soumya Koduri <[email protected]> (cherry picked from commit b6fc0be)
Fixes: https://tracker.ceph.com/issues/70441 Signed-off-by: Jos Collin <[email protected]> (cherry picked from commit a86f6a6)
tentacle: mon/MgrStatMonitor.cc: cleanup pool_availability
distutils was deprecated in python 3.10 and removed in 3.12 which we need to support for ubuntu 24.04 Fixes: https://tracker.ceph.com/issues/72020 Signed-off-by: Casey Bodley <[email protected]> (cherry picked from commit 3fb3f89)
[rgw][tentacle] Add Restore support from Glacier/Tape cloud endpoints Reviewed-by: Casey Bodley <[email protected]>
…rt-64164-to-tentacle tentacle: mgr/dashboard: Fix inline markup warning in API documentation Reviewed-by: Afreen Misbah <[email protected]>
…_key and missing params for host add Signed-off-by: Tomer Haskalovitch <[email protected]> (cherry picked from commit eaab5a0)
tentacle: mgr/dashboard: add missing commands for subsystem: change_key and del… Reviewed-by: Afreen Misbah <[email protected]>
Signed-off-by: Anthony D'Atri <[email protected]> (cherry picked from commit 329ee7b)
Try to improve the language by completely rewriting some sentences. Attempt to format the document more like the rest of the docs. Fix several errors in punctuation, capitalization, spaces etc. Use blocks with bash prompts for CLI commands instead of hardcoded prompts. Fix section hierarchy and section title underline lengths. Use admonition. Signed-off-by: Ville Ojamo <[email protected]> (cherry picked from commit 6e836f8)
…rt-63080-to-tentacle tentacle: doc/radosgw: Improve rgw-cache.rst
…rt-64462-to-tentacle tentacle: doc/cephfs: Improve mount-using-fuse.rst
Signed-off-by: Anthony D'Atri <[email protected]> (cherry picked from commit 89eabfc)
…rt-64374-to-tentacle tentacle: doc: Clarify the status of MS Windows client support
Add note admonitions when discussing client package support in the context of OS Recommendations in the following two files: - doc/cephfs/ceph-dokan.rst - doc/rbd/rbd-windows.rst This addresses a change requested by Ilya Dryomov in ceph#64374 (comment). Signed-off-by: Zac Dover <[email protected]> (cherry picked from commit 69d641f)
…rt-64483-to-tentacle tentacle: doc: add note admonitions in two files
Add material to doc/rados/operations/cache-tiering.rst, as suggested by Anthony D'Atri in ceph#63745 (comment). Signed-off-by: Zac Dover <[email protected]> (cherry picked from commit d3c4682)
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.
1079 commits? Rebase hiccup?
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
api-change
bluestore
build/ops
ceph-volume
cephadm
cephfs
Ceph File System
CI
Continuous Integration
common
config-change
core
crimson
dashboard
documentation
mgr
mon
monitoring
needs-rebase
nfs
nvmeof
orchestrator
pybind
rbd
rgw
rook
script
telemetry
tests
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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
Show available Jenkins commands
jenkins test classic perf
Jenkins Job | Jenkins Job Definitionjenkins test crimson perf
Jenkins Job | Jenkins Job Definitionjenkins test signed
Jenkins Job | Jenkins Job Definitionjenkins test make check
Jenkins Job | Jenkins Job Definitionjenkins test make check arm64
Jenkins Job | Jenkins Job Definitionjenkins test submodules
Jenkins Job | Jenkins Job Definitionjenkins test dashboard
Jenkins Job | Jenkins Job Definitionjenkins test dashboard cephadm
Jenkins Job | Jenkins Job Definitionjenkins test api
Jenkins Job | Jenkins Job Definitionjenkins test docs
ReadTheDocs | Github Workflow Definitionjenkins test ceph-volume all
Jenkins Jobs | Jenkins Jobs Definitionjenkins test windows
Jenkins Job | Jenkins Job Definitionjenkins test rook e2e
Jenkins Job | Jenkins Job Definition