Bug #37532
closedmon: expected_num_objects warning triggers on bluestore-only setups
0%
Description
Follow up for the mailing list thread http://lists.ceph.com/pipermail/ceph-users-ceph.com/2018-December/031711.html
To reproduce:
Runceph osd pool create test3 1024 1024 replicated
on a cluster consisting of only BlueStore OSDs.
Result:Error ERANGE: For better initial performance on pools expected to store a large number of objects, consider supplying the expected_num_objects parameter when creating the pool.
Problems:
- The error message is confusing; there is no indication on how to set this option
- The man page
ceph
also does not contain this option (For anyone who encounters this problem and finds this post: the full syntax isceph osd pool create <name> <pgs> <pgs> replicated <crush rule name (default: replicated_rule)> <expected_num_objects>
) - It is a FileStore-specific option and should not show up at all when I don't have any Filestore OSDs
- It should only be a warning, not an error since it says "consider supplying"
The bug was introduced here: https://github.com/ceph/ceph/pull/23072/commits/69fb2293c4d38012e7c4781aaa39a47596125bbb
It checks the osd_objectstore config option to determine if it's a filestore cluster, which is incorrect. The option seems only to be used to somehow set the default type of an OSD if its lacking the "type" file ~ceph/osd/ceph-<id>/type
. The option defaults to filestore which is probably a good choice for a deprecated option in case any weirdly deployed OSD relies on it, it's certainly quite old and therefore filestore.
I'm not sure how/where this gets converted to an ERANGE error though.
A proper fix would be to scan the cluster for filestore OSDs and then show the warning with a more helpful message.
But I'd just propose to remove this warning entirely since it's filestore-specific and really confusing? All new clusters will be bluestore anyways so it's not needed. And older installations not yet converted to Bluestore probably encountered the split issues before and know about it?