docs(config): add configuration guides#6790
Open
317787106 wants to merge 8 commits into
Open
Conversation
…ectionIdleInMillis, maxConnectionAgeInMillis
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What does this PR do?
Rewrites
reference.confcomments — every parameter now has an inline comment describing its purpose, valid range, and unit. The file is the authoritative default-value reference for all node operators and contributors.Slims down
config.conf— removes the large duplicated comment blocks that belonged inreference.conf, leaving only the parameters whose shipped defaults intentionally differ fromreference.confand the minimal comments users need to act on.Fixes default values for three under-specified parameters:
node.rpc.maxConcurrentCallsPerConnection:Integer.MAX_VALUE→0(0 = no limit)node.rpc.maxConnectionIdleInMillis/maxConnectionAgeInMillis: changed to0(0 = no limit)node.dns.maxMergeSize:1→5;changeThreshold:0.8→0.1(align with actual recommended values)Adds two documentation files under
docs/:configuration.md— user-facing guide: explains thereference.conf/config.conftwo-layer system, how to start a node with a config file, and the most common configuration sections with examples.configuration-conventions.md— developer-facing guide: coversConfigBeanFactoryauto-binding rules, the camelCase naming requirement, nesting depth limits, the four-step checklist for adding a new parameter, special type handling (List<String>, human-readable sizes), and backward-compatibility patterns.Why are these changes required?
config.confpreviously duplicated most ofreference.conf's comment content, making it hard to maintain and causing users to question which file to trust. Meanwhilereference.conflacked inline documentation for many parameters. There was also no written guide explaining the two-layer config system or the conventions developers must follow when extending it, leading to inconsistencies (non-camelCase keys, missingreference.confentries, etc.).This PR has been tested by