GreatVoyage-v4.8.2 configuration migration

Migrate custom node settings to GreatVoyage-v4.8.2 and review its added, changed, and removed configuration keys.

This page is for node operators upgrading from an older java-tron release to GreatVoyage-v4.8.2. For a new deployment, use the configuration that matches the version being run and follow Deploy a node.

Migration workflow

Do not reuse an older config.conf unchanged. Instead:

  1. Back up the old configuration and record its custom settings.
  2. Start from the config.conf at the GreatVoyage-v4.8.2 tag and merge each custom setting that remains valid.
  3. Add or override new settings as needed, and remove obsolete settings according to the table below.
  4. Check defaults and field types against the GreatVoyage-v4.8.2 reference.conf.
  5. Validate node startup, APIs, P2P connectivity, event subscription, and monitoring in a test environment before upgrading production nodes.

Configuration changes

TypeConfigurationGreatVoyage-v4.8.2 behavior and migration guidance
Addedvm.constantCallTimeoutMsSets an independent TVM constant-call timeout in milliseconds for paths such as triggerconstantcontract, estimateenergy, eth_call, and eth_estimateGas. The default is 0, which preserves the existing execution deadline; any configured value must be non-negative. Do not use --debug, which also extends block-transaction execution time, to extend constant calls.
Addedrate.limiter.apiNonBlockingControls how HTTP and gRPC APIs behave when a rate limit is exceeded. The default false waits for capacity; true rejects an over-limit request immediately.
Addedevent.subscribe.enableControls the event-subscription module and defaults to false. Set it to true when using an event plugin or the built-in ZeroMQ publisher; this is the preferred replacement for the legacy --es command-line option. See Event subscription.
Addednode.http.maxMessageSizeLimits Fullnode HTTP API request bodies. The default is 4194304 bytes (approximately 4 MiB); 0 rejects every non-empty request body. This limit is independent of the similarly named gRPC and JSON-RPC settings.
Addednode.jsonrpc.maxBatchSize, maxResponseSize, maxLogFilterNum, maxMessageSizeThe defaults are 100, 26214400 bytes (25 MiB), 20000, and 4194304 bytes (approximately 4 MiB), respectively. Zero or a negative value disables the first three limits; maxMessageSize = 0 rejects every non-empty request body.
Changedseed.node.ip.list, node.active, node.passive, node.fastForward, node.backup.membersPeer endpoints may now use hostname:port as well as IP addresses. node.backup.members coordinates active and standby roles among multiple block-producing instances for the same SR and is unrelated to the removed RocksDB data-backup feature below.
Changednode.shutdownThe existing BlockTime, BlockHeight, and BlockCount conditional-shutdown settings now also apply to SolidityNode. See Stop the node at a specific block height.
Removedstorage.backup.*The built-in RocksDB data-backup feature and its enable, propPath, bak1path, bak2path, and frequency settings were removed. Migrate to database snapshots or an external backup process; do not remove the still-supported node.backup settings. See Database snapshots.
Removednet.typeThe legacy testnet address-prefix switch is no longer supported. Remove this key from custom configurations.
Removedactuator.whitelistCustom Actuators are no longer registered through a configuration whitelist; extension classes must be placed under the org.tron.core.actuator package.
Removednode.metrics.storageEnable, node.metrics.influxdb.*InfluxDB reporting in the legacy Metrics module was removed. Continue with node.metrics.prometheus and collect/display metrics through Prometheus and Grafana.

Related resources