FS#73314 - [ceph] ceph-mon: PY_SSIZE_T_CLEAN error in status

Attached to Project: Community Packages
Opened by Paul Stemmet (pbazaah) - Sunday, 09 January 2022, 18:19 GMT
Last edited by Sven-Hendrik Haase (Svenstaro) - Sunday, 20 February 2022, 03:59 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Thore Bödecker (foxxx0)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

When running a system with python >=3.10 installed, it appears that a macro is not defined
early enough in the upstream's compile, which leads to the standard methods of querying a
ceph cluster's status (ceph -s, ceph health [detail]) to fail with the following message:

'''
HEALTH_ERR Module 'devicehealth' has failed: PY_SSIZE_T_CLEAN macro must be defined for '#' formats
[ERR] MGR_MODULE_ERROR: Module 'devicehealth' has failed: PY_SSIZE_T_CLEAN macro must be defined for '#' formats
Module 'devicehealth' has failed: PY_SSIZE_T_CLEAN macro must be defined for '#' formats
'''

There is a single issue open in the upstream for a related error in the build process[1]
which will likely fix this if/when it's backported to 15.x, but it appears that generally,
the upstream developers do not use or test against python >3.9, which is why I'm opening this
here, as a distro bug rather than against the upstream directly.

Feel free to close it, as _this does not appear to impact ceph itself,_ merely monitoring capacities.
I did feel like the maintainers should be aware of this issue, and did not see it mentioned on the forums
or elsewhere in this bug tracker.

Thanks.

Additional info:
* package version(s)

'''
$ pacman -Qi ceph | head -n2
Name : ceph
Version : 15.2.14-5
'''

* Monitor logs w/ error

'''
2022-01-09T17:50:00+0000 <host> ceph-mon[585]: <time> 7f56c7615640 -1 log_channel(cluster) log [ERR] : overall HEALTH_ERR Module 'devicehealth' has failed: PY_SSIZE_T_CLEAN macro must be defined for '#' formats
2022-01-09T18:00:00+0000 <host> ceph-mon[585]: <time> 7f56c7615640 -1 log_channel(cluster) log [ERR] : overall HEALTH_ERR Module 'devicehealth' has failed: PY_SSIZE_T_CLEAN macro must be defined for '#' formats
2022-01-09T18:10:00+0000 <host> ceph-mon[585]: <time> 7f56c7615640 -1 log_channel(cluster) log [ERR] : overall HEALTH_ERR Module 'devicehealth' has failed: PY_SSIZE_T_CLEAN macro must be defined for '#' formats
'''

Steps to reproduce:
1. Fresh archlinux install
2. Install ceph == 15.2.14-5
3. Start a local cluster
4. Observe the output of either 'ceph -s' or 'ceph health'

Links:

[1] https://tracker.ceph.com/issues/53441
This task depends upon

Closed by  Sven-Hendrik Haase (Svenstaro)
Sunday, 20 February 2022, 03:59 GMT
Reason for closing:  Duplicate
Additional comments about closing:  https://bugs.archlinux.org/task/73335
Comment by Paul Stemmet (pbazaah) - Saturday, 19 February 2022, 22:19 GMT
There are now two bugs open for the same underlying issue, I recommend closing this one in favor of the other: https://bugs.archlinux.org/task/73335

Loading...