Actions
Bug #57700
closedmgr/telemetry: ValueError: too many values to unpack (expected 2) in get_mempool
% Done:
0%
Source:
Development
Tags:
Backport:
quincy
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):
Description
A ValueError occurs when generating mempool stats in the perf channel:
This is 17.2.4 RC: ceph version 17.2.3-770-g7f52e260 (7f52e260191d7656bf7a362048705c3e36370dad) quincy (stable)
Error EINVAL: Traceback (most recent call last): File "/usr/share/ceph/mgr/mgr_module.py", line 1757, in _handle_command return CLICommand.COMMANDS[cmd['prefix']].call(self, cmd, inbuf) File "/usr/share/ceph/mgr/mgr_module.py", line 462, in call return self.func(mgr, **kwargs) File "/usr/share/ceph/mgr/telemetry/module.py", line 1815, in show report = self.get_report_locked(channels=channels) File "/usr/share/ceph/mgr/telemetry/module.py", line 1965, in get_report_locked return self.get_report(report_type, channels) File "/usr/share/ceph/mgr/telemetry/module.py", line 1971, in get_report return self.compile_report(channels=channels) File "/usr/share/ceph/mgr/telemetry/module.py", line 1272, in compile_report report['mempool'] = self.get_mempool('separated') File "/usr/share/ceph/mgr/telemetry/module.py", line 571, in get_mempool daemon_type, daemon_id = daemon.split('.') ValueError: too many values to unpack (expected 2)
Updated by Laura Flores over 1 year ago
Telemetry expects the daemon to be formatted like "mds.a", where there is 1 value before the '.', and one value after the '.'.
However, this crash has picked up a case where the daemon has a more complex daemon id.
I reproduced this on the LRC:
lflores@reesi003:~$ sudo ceph telemetry show perf
Error EINVAL: Traceback (most recent call last):
File "/usr/share/ceph/mgr/mgr_module.py", line 1757, in _handle_command
return CLICommand.COMMANDS[cmd['prefix']].call(self, cmd, inbuf)
File "/usr/share/ceph/mgr/mgr_module.py", line 462, in call
return self.func(mgr, **kwargs)
File "/usr/share/ceph/mgr/telemetry/module.py", line 1815, in show
report = self.get_report_locked(channels=channels)
File "/usr/share/ceph/mgr/telemetry/module.py", line 1965, in get_report_locked
return self.get_report(report_type, channels)
File "/usr/share/ceph/mgr/telemetry/module.py", line 1971, in get_report
return self.compile_report(channels=channels)
File "/usr/share/ceph/mgr/telemetry/module.py", line 1272, in compile_report
report['mempool'] = self.get_mempool('separated')
File "/usr/share/ceph/mgr/telemetry/module.py", line 571, in get_mempool
daemon_type, daemon_id = daemon.split('.')
ValueError: too many values to unpack (expected 2)
The issue does not reproduce on the gibba cluster, because it has daemons with simple daemon ids, i.e. "mon.a".
Updated by Laura Flores over 1 year ago
- Status changed from New to Fix Under Review
- Pull request ID set to 48282
Updated by Laura Flores over 1 year ago
- Related to Tasks #57709: Handle complex role names in teuthology tests added
Updated by Laura Flores over 1 year ago
- Status changed from Fix Under Review to Resolved
Actions