[SERVER-57609] Print additional log line during startup showing all non-default parameters and values Created: 10/Jun/21 Updated: 29/Oct/23 Resolved: 24/Feb/22 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Diagnostics |
| Affects Version/s: | None |
| Fix Version/s: | 6.0.0-rc0 |
| Type: | New Feature | Priority: | Major - P3 |
| Reporter: | Dmitry Agranat | Assignee: | Billy Donahue |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | auto-reverted, needs-triage, servicearch-wfbf-day | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||
| Sprint: | Service Arch 2022-1-10, Service Arch 2022-1-24, Service Arch 2022-2-21, Service Arch 2022-03-07 | ||||||||||||
| Participants: | |||||||||||||
| Linked BF Score: | 135 | ||||||||||||
| Story Points: | 4 | ||||||||||||
| Description |
|
Today, it is very difficult to troubleshoot issues when their cause is related to the use of a non-default server parameter or values. It would be useful to have an additional log line highlighting everything non-default. Just by looking at this line can give us a hint where the issue might be originating. Today, it is also not possible to understand if currently-printed values are default or not. One would have to go to documentation and validate each and every value to understand this. This would also help to avoid issues when some previously used parameter/value is being unintentionally dragged into the newer version. |
| Comments |
| Comment by Githook User [ 24/Feb/22 ] | |||
|
Author: {'name': 'Billy Donahue', 'email': 'billy.donahue@mongodb.com', 'username': 'BillyDonahue'}Message: | |||
| Comment by Billy Donahue [ 24/Feb/22 ] | |||
|
KeystoreSchemaVersionServerParameter dereferences a null opCtx pointer. | |||
| Comment by Billy Donahue [ 20/Feb/22 ] | |||
|
A parameter in enterprise, when told to append itself to an obj builder under a certain field name, just didn't do anything at all. | |||
| Comment by Githook User [ 20/Feb/22 ] | |||
|
Author: {'name': 'Billy Donahue', 'email': 'billy.donahue@mongodb.com', 'username': 'BillyDonahue'}Message: This reverts commit e54ce1af26d960c085115fa500b43acb64d37542. | |||
| Comment by xgen-buildbaron-user [ 19/Feb/22 ] | |||
|
Ticket re-opened due to revert. ese began a consistent failure of src/mongo/db/modules/enterprise/jstests/encryptdb/database_key_upgrade.js | |||
| Comment by Githook User [ 19/Feb/22 ] | |||
|
Author: {'name': 'auto-revert-processor', 'email': 'dev-prod-dag@mongodb.com'}Message: Revert " This reverts commit 2716c8012c2c21c5e3c9f695d4d6a0751aff01ba. | |||
| Comment by Billy Donahue [ 18/Feb/22 ] | |||
|
It sounds like you will need to write more tickets for the items you're interested in and narrow it down. I can't really quantify what everything non-default in the process would mean. If you want to set non-default RSConfig options that's probably a Repl team ticket. | |||
| Comment by Githook User [ 18/Feb/22 ] | |||
|
Author: {'name': 'Billy Donahue', 'email': 'billy.donahue@mongodb.com', 'username': 'BillyDonahue'}Message: | |||
| Comment by Billy Donahue [ 16/Feb/22 ] | |||
|
For your example, electionTimeoutMillis is a property of a replica set, not a serverParameter. Printing all the non-default serverParameters at startup wouldn't help there. It's not available through getParameter either. Was it just a bad example? I'm not sure what I can do to help with that. maxBSONDepth is more obviously applicable. That is a ServerParameter only settable at startup. If they change after startup, do we need to track that change and report it? Would it be sufficient to ServerParameter setters log something to show the changes as they happen? I'm trying to figure out whether there is a need to expose these default values through getParameter at any time after startup has completed. It sounds like showing them at startup may be sufficient. | |||
| Comment by Dmitry Agranat [ 16/Feb/22 ] | |||
|
Hi billy.donahue, consider the following:
How do I know that the electionTimeoutMillis (or other parameters) is set to its default?
How do I know that the maxBSONDepth's value is not set to default and what the default is? Ideally, what I want is an easy way to see something like:
|