Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
J
jj-ceph-balancer
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
resplat-public
jj-ceph-balancer
Compare revisions
6c9f127289929b494c407db44f19b9b8aeaf11d4 to c423ed489d53162c2764e3e6f1c1e4d8364721f2
Compare revisions
Changes are shown as if the
source
revision was being merged into the
target
revision.
Learn more about comparing revisions.
Source
resplat-public/jj-ceph-balancer
Select target project
No results found
c423ed489d53162c2764e3e6f1c1e4d8364721f2
Select Git revision
Swap
Target
resplat-public/jj-ceph-balancer
Select target project
resplat-public/jj-ceph-balancer
1 result
6c9f127289929b494c407db44f19b9b8aeaf11d4
Select Git revision
Show changes
Only incoming changes from source
Include changes to target since source was created
Compare
Commits on Source (2)
Prevent pg movement on osds with no crushclasses
· fd5a30d1
William Xiong
authored
6 months ago
fd5a30d1
Merge branch 'bugfix_stuck_osds' into 'master'
· c423ed48
Justin Mammarella
authored
6 months ago
Prevent pg movement on osds with no crushclasses See merge request
!2
c423ed48
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
placementoptimizer.py
+18
-0
18 additions, 0 deletions
placementoptimizer.py
with
18 additions
and
0 deletions
placementoptimizer.py
View file @
c423ed48
...
...
@@ -4668,6 +4668,24 @@ def balance(args, cluster):
if osd_from not in source_osds:
continue
## WX BUGFIX --- Only utilize the osds with the right crushclass
#Iterate through valid crushclasses
for crushclass_name in pg_mappings.get_enabled_crushclasses():
osds_in_crushclass = cluster.get_crushclass_osds(crushclass_name)
#Skip balancing the OSD if it does not have the right crushclass
if osd_from not in osds_in_crushclass:
logging.info(f"-BUGFIX: WE ARE ONLY USING CRUSHCLASS: {crushclass_name}")
logging.info(f"-BUGFIX: OSD: {osd_from} HAS INVALID CRUSHCLASS - SKIPPING")
skip_osd=True
continue
else:
skip_osd=False
#Comment/uncomment this if statement to see effects of bugfix
if skip_osd:
continue
source_attempts += 1
if source_attempts > args.max_move_attempts:
...
...
This diff is collapsed.
Click to expand it.