Project

General

Profile

Actions

Bug #22300

closed

ceph osd reweightn command seems to change weight value

Added by Jean-Charles Lopez over 6 years ago. Updated about 6 years ago.

Status:
Rejected
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

Source:
Community (user)
Tags:
reweightn ceph osd cli
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Component(RADOS):
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

Hi,

on 12.2.2, when using the ceph osd reweightn command it looks like the weight value gets changed to an unexpected value.

Here is the tree for my test cluster:

[root@luminous system]# ceph osd tree
ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF
-1 0.05800 root default
-3 0.05800 host luminous
0 hdd 0.01900 osd.0 up 1.00000 1.00000
1 hdd 0.01900 osd.1 up 1.00000 1.00000
2 hdd 0.01900 osd.2 up 1.00000 1.00000

If I attempt to change a weight for one or more OSDs, a value of 1.0 gets changed to 0.00002:

[root@luminous system]# ceph osd reweightn "{'0':'1.000000'}"
[root@luminous system]# ceph osd tree
ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF
-1 0.05800 root default
-3 0.05800 host luminous
0 hdd 0.01900 osd.0 up 0.00002 1.00000
1 hdd 0.01900 osd.1 up 1.00000 1.00000
2 hdd 0.01900 osd.2 up 1.00000 1.00000

If I attempt to change a weight for one or more OSDs, a value of 2.0 gets changed to 0.00003:

[root@luminous system]# ceph osd reweightn "{'0':'2.000000'}"
[root@luminous system]# ceph osd tree
ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF
-1 0.05800 root default
-3 0.05800 host luminous
0 hdd 0.01900 osd.0 up 0.00003 1.00000
1 hdd 0.01900 osd.1 up 1.00000 1.00000
2 hdd 0.01900 osd.2 up 1.00000 1.00000

To get out of this situation you have to resort to the old ceph osd reweight command that works OSd per PSD.

[root@luminous system]# ceph osd reweight 0 1
reweighted osd.0 to 1 (10000)
[root@luminous system]# ceph osd tree
ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF
-1 0.05800 root default
-3 0.05800 host luminous
0 hdd 0.01900 osd.0 up 1.00000 1.00000
1 hdd 0.01900 osd.1 up 1.00000 1.00000
2 hdd 0.01900 osd.2 up 1.00000 1.00000

I don't know if the problem comes from my syntax being wrong or if this is a real problem.

Thanks
JC

Actions #1

Updated by Patrick Donnelly over 6 years ago

  • Project changed from Ceph to RADOS
  • Category deleted (ceph cli)
Actions #2

Updated by Kefu Chai about 6 years ago

  • Status changed from New to Rejected

the parameter of reweigtn is an array of fixed point integers. and the integers are int(weight * 0x10000), where weight is the expected weight of the corresponding osd. probably, instead, we should improve the document of reweightn.

Actions

Also available in: Atom PDF