mds: require config list to be sorted#59088
Conversation
|
jenkins test api |
1 similar comment
|
jenkins test api |
|
jenkins test api |
😮 |
|
jenkins test api |
|
This PR is under test in https://tracker.ceph.com/issues/67516. |
src/common/make_array.h
Outdated
| template<typename CT, typename... Args> | ||
| constexpr auto make_array(Args&&... args) | ||
| { | ||
| return std::array<CT, sizeof...(Args)>{std::forward<CT>(args)...}; |
There was a problem hiding this comment.
Shouldn't we be forwarding args with type Args?
| return std::array<CT, sizeof...(Args)>{std::forward<CT>(args)...}; | |
| return std::array<CT, sizeof...(Args)>{std::forward<Args>(args)...}; |
There was a problem hiding this comment.
I've since found std::to_array so this code no longer exists.
But to answer your question: I think so.
Keeps the neurons firing :) Anyway, I'm fine with having this constraint in place. Follow up question unrelated to this change: Is it possible to auto-generate this list of keys from mds.yaml..in by any chance? |
Signed-off-by: Patrick Donnelly <[email protected]>
This helps keeps related options near each other. Signed-off-by: Patrick Donnelly <[email protected]>
40c45da to
5c3dddf
Compare
I think the idea of this interface was to prevent unnecessary "config change" deliveries to the daemon. I personally don't see the issue unless you are acquiring expensive locks but that can be avoided usually. So to answer your question: I think that adding all the keys from |
Oh, I meant something in compile/build time that creates a cc source with keys from mds.yaml.in. |
I'm not sure I follow what you're trying to accomplish by doing so? |
Trying to have a single place where we specify config options and then automagically have the list of keys in MDS source. Never mind - that's my obsessive mind working late evenings. |
ahhh, that would be interesting. Actually, you could just pull the list of configs with the Edit: and you'd want to indicate which RUNTIME configs are watched for which daemon. |
Agree. You don't have to do that in this PR though. I'll create a ticket for our enthusiasts :) |
|
jenkins test make check arm64 |
2 similar comments
|
jenkins test make check arm64 |
|
jenkins test make check arm64 |
|
This PR is under test in https://tracker.ceph.com/issues/67563. |
|
jenkins test make check arm64 |
* refs/pull/59088/head: mds: add compile time checks for sortedness mds: sort conf keys Reviewed-by: Dhairya Parmar <[email protected]>
Fun little programming project for the obsessive mind. I find it easier to have the configs grouped by component (part of the config name usually) so keeping the alphabetized is helpful. It also helps to avoid conflicts if everyone would otherwise be appending to the end of the array.
Contribution Guidelines
To sign and title your commits, please refer to Submitting Patches to Ceph.
If you are submitting a fix for a stable branch (e.g. "quincy"), please refer to Submitting Patches to Ceph - Backports for the proper workflow.
When filling out the below checklist, you may click boxes directly in the GitHub web UI. When entering or editing the entire PR message in the GitHub web UI editor, you may also select a checklist item by adding an
xbetween the brackets:[x]. Spaces and capitalization matter when checking off items this way.Checklist
Show available Jenkins commands
jenkins retest this pleasejenkins test classic perfjenkins test crimson perfjenkins test signedjenkins test make checkjenkins test make check arm64jenkins test submodulesjenkins test dashboardjenkins test dashboard cephadmjenkins test apijenkins test docsjenkins render docsjenkins test ceph-volume alljenkins test ceph-volume toxjenkins test windowsjenkins test rook e2e