feat(config): sync all config files with java-tron upstream#117
Closed
warku123 wants to merge 1 commit intotronprotocol:mainfrom
Closed
feat(config): sync all config files with java-tron upstream#117warku123 wants to merge 1 commit intotronprotocol:mainfrom
warku123 wants to merge 1 commit intotronprotocol:mainfrom
Conversation
Align all 5 tron-docker config files with java-tron's latest config.conf
structure. This ensures tron-docker stays consistent with upstream and
reduces config drift.
Changes:
- Add missing sections: net {}, node.metrics.influxdb {}, rate.limiter.p2p {}
- Add new fields: storage.dbSettings.maxOpenFiles, node.jsonrpc.maxBlockFilterNum,
event.subscribe.enable, trx.reference.block, txCache.initOptimization, etc.
- Remove deprecated fields: storage.index.directory, storage.backup {},
node.tcpNettyWorkThreadNum, node.udpNettyWorkThreadNum
- Add ~30 committee proposal switches as commented reference
- Activate previously commented fields: node.rpc.reflectionService,
node.disabledApi, rate.limiter.global.qps/ip.qps
- Fix docker-compose.yml JVM args for JDK 17 compatibility:
replace removed -XX:+UseConcMarkSweepGC and deprecated -Xloggc
with -Xlog:gc
Validated: private net witness1 produces blocks, node1 syncs successfully.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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?
Synchronizes all 5 tron-docker config files with the latest java-tron upstream config structure (
framework/src/main/resources/config.conf), and fixes JDK 17 incompatible JVM arguments inprivate_net/docker-compose.yml.Why are these changes required?
The tron-docker config files had drifted significantly from java-tron's upstream config. New fields and sections introduced in recent releases (including v4.8.1) were missing, while deprecated fields were still present. This causes confusion for node operators and may lead to unexpected behavior.
This PR also lays the groundwork for a follow-up automated config drift detection — by first bringing all config files to a known-good baseline aligned with upstream, a future GitHub Action can periodically diff against java-tron's config and open an issue when structural drift is detected.
Key structural changes (all 5 config files):
net {},node.metrics.influxdb {},rate.limiter.p2p {}storage.dbSettings.maxOpenFiles,node.jsonrpc.maxBlockFilterNum,event.subscribe.enable,trx.reference.block,txCache.initOptimization,rate.limiter.global.qpsstorage.index.directory,storage.backup {},node.tcpNettyWorkThreadNum,node.udpNettyWorkThreadNumJVM fix (
docker-compose.yml):-XX:+UseConcMarkSweepGC(removed in JDK 14) — JDK 17 defaults to G1GC-Xloggcwith-Xlog:gc(unified logging framework, JDK 9+)This PR has been tested by:
docker-compose up, witness node produced blocks and full node synced successfullyFollow up
In future, can add a GitHub Action for automatic config structure drift detection between
tronprotocol/java-tronupstream and tron-docker, triggering an issue when structural changes are detected.Extra details
Network-specific values are preserved per config file:
p2p.version = 11111, mainnet genesis block and seed nodesp2p.version = 201910292, Nile genesis block and seed nodesp2p.version = 1, test accounts (TestA–E), witness private keys