Skip to content

Releases: ava-labs/avalanchego

Durango.7 - Metrics Overhaul Preparation

05 Jun 22:21
e8ecbad
Compare
Choose a tag to compare

This version is backwards compatible to v1.11.0. It is optional, but encouraged.

The plugin version is unchanged at 35 and is compatible with versions v1.11.3-v1.11.6.

APIs

  • Added peer's trackedSubnets that are not locally tracked to the response from info.peers

Configs

  • Changed the undocumented pebble option for --db-type to be pebbledb and documented the option

Fixes

  • Removed repeated DB compaction during bootstrapping that caused a significant regression in bootstrapping times
  • Fixed C-Chain state-sync crash
  • Fixed C-Chain state-sync ETA calculation
  • Fixed Subnet owner reported by platform.getSubnets after a subnet's owner was rotated

What's Changed

New Contributors

Full Changelog: v1.11.6...v1.11.7

Durango.6 - Bootstrapping Execution Improvements

23 May 16:08
944d3db
Compare
Choose a tag to compare

This version is backwards compatible to v1.11.0. It is optional, but encouraged.

The plugin version is unchanged at 35 and is compatible with versions v1.11.3-v1.11.5.

APIs

  • Updated cache metrics:
    • *_cache_put_sum was replaced with *_cache_put_time
    • *_cache_get_sum was replaced with *_cache_get_time
    • *_cache_hit and *_cache_miss were removed and *_cache_get_count added a result label
  • Updated db metrics:
    • *_db_{method}_count were replaced with *_db_calls with a method label
    • *_db_{method}_sum were replaced with *_db_duration with a method label
    • *_db_{method}_size_count were deleted
    • *_db_{method}_size_sum were replaced with *_db_size with a method label
  • Updated p2p message compression metrics:
    • avalanche_network_codec_{type}_{op}_{direction}_time_count were replaced with avalanche_network_codec_compressed_count with direction, op, and type labels
  • Updated p2p message metrics:
    • avalanche_network_{op}_{io} were replaced with avalanche_network_msgs with compressed:"false", io, and op labels
    • avalanche_network_{op}_{io}_bytes were replaced with avalanche_network_msgs_bytes with io and op labels
    • avalanche_network_{op}_compression_saved_{io}_bytes_sum were replaced with avalanche_network_msgs_bytes_saved with io and op labels
    • avalanche_network_{op}_compression_saved_{io}_bytes_count were replaced with avalanche_network_msgs with compressed:"true", io, and op labels
    • avalanche_network_{op}_failed were replaced with avalanche_network_msgs_failed_to_send with an op label
  • Updated p2p sdk message metrics:
    • *_p2p_{op}_count were replaced with *_p2p_msg_count with an op label
    • *_p2p_{op}_time were replaced with *_p2p_msg_time with an op label
  • Updated consensus message queue metrics:
    • avalanche_{chainID}_handler_unprocessed_msgs_{op} were replaced with avalanche_{chainID}_handler_unprocessed_msgs_count with an op label
    • avalanche_{chainID}_handler_async_unprocessed_msgs_{op} were replaced with avalanche_{chainID}_handler_unprocessed_msgs_count with an op label
  • Updated consensus handler metrics:
    • avalanche_{chainID}_handler_{op}_count were replaced with avalanche_{chainID}_handler_messages with an op label
    • avalanche_{chainID}_handler_{op}_msg_handling_count was deleted
    • avalanche_{chainID}_handler_{op}_msg_handling_sum were replaced with avalanche_{chainID}_handler_message_handling_time with an op label
    • avalanche_{chainID}_handler_{op}_sum were replaced with avalanche_{chainID}_handler_locking_time
  • Updated consensus sender metrics:
    • avalanche_{chainID}_{op}_failed_benched were replaced with avalanche_{chainID}_failed_benched with an op label
  • Updated consensus latency metrics:
    • avalanche_{chainID}_lat_{op}_count were replaced with avalanche_{chainID}_response_messages with an op label
    • avalanche_{chainID}_lat_{op}_sum were replaced with avalanche_{chainID}_response_message_latencies with an op label
  • Updated X-chain metrics:
    • avalanche_X_vm_avalanche_{tx}_txs_accepted were replaced with avalanche_X_vm_avalanche_txs_accepted with a tx label
  • Updated P-chain metrics:
    • avalanche_P_vm_{tx}_txs_accepted were replaced with avalanche_P_vm_txs_accepted with a tx label
    • avalanche_P_vm_{blk}_blks_accepted were replaced with avalanche_P_vm_blks_accepted with a blk label

Fixes

  • Fixed performance regression while executing blocks in bootstrapping
  • Fixed peer connection tracking in the P-chain and C-chain to re-enable tx pull gossip
  • Fixed C-chain deadlock while executing blocks in bootstrapping after aborting state sync
  • Fixed negative ETA while fetching blocks after aborting state sync
  • Fixed C-chain snapshot initialization after state sync
  • Fixed panic when running avalanchego in environments with an incorrectly implemented monotonic clock
  • Fixed memory corruption when accessing keys and values from released pebbledb iterators
  • Fixed prefixdb compaction when specifying a nil limit

What's Changed

New Contributors

Read more

Durango.5 - Bootstrapping Optimizations

30 Apr 17:59
f8d7b29
Compare
Choose a tag to compare

This version is backwards compatible to v1.11.0. It is optional, but encouraged.

The plugin version is unchanged at 35 and is compatible with versions v1.11.3-v1.11.4.

APIs

  • Renamed metric avalanche_network_validator_ips to avalanche_network_tracked_ips

Configs

  • Removed --snow-virtuous-commit-threshold
  • Removed --snow-rogue-commit-threshold

Fixes

  • Fixed increased outbound PeerList messages when specifying custom bootstrap IDs
  • Fixed CPU spike when disconnected from the network during bootstrapping fetching
  • Fixed topological sort in vote calculation
  • Fixed job dependency handling for transitively rejected blocks
  • Prevented creation of unnecessary consensus polls during the issuance of a block

What's Changed

New Contributors

Full Changelog: v1.11.4...v1.11.5

Durango.4 - Interval Tree Bootstrapping

09 Apr 20:51
e8904ae
Compare
Choose a tag to compare

This version is backwards compatible to v1.11.0. It is optional, but encouraged.

The plugin version is unchanged at 35 and is compatible with version v1.11.3.

APIs

  • Removed metrics for each chainID:
    • avalanche_{chainID}_bs_eta_fetching_complete
    • avalanche_{chainID}_block_eta_execution_complete
    • avalanche_{chainID}_block_jobs_cache_get_count
    • avalanche_{chainID}_block_jobs_cache_get_sum
    • avalanche_{chainID}_block_jobs_cache_hit
    • avalanche_{chainID}_block_jobs_cache_len
    • avalanche_{chainID}_block_jobs_cache_miss
    • avalanche_{chainID}_block_jobs_cache_portion_filled
    • avalanche_{chainID}_block_jobs_cache_put_count
    • avalanche_{chainID}_block_jobs_cache_put_sum
  • Added finer grained tracing of merkledb trie construction and hashing
    • renamed MerkleDB.view.calculateNodeIDs to MerkleDB.view.applyValueChanges
    • Added MerkleDB.view.calculateNodeChanges
    • Added MerkleDB.view.hashChangedNodes

Fixes

  • Fixed p2p SDK handling of cancelled AppRequest messages
  • Fixed merkledb crash recovery

What's Changed

Full Changelog: v1.11.3...v1.11.4

Durango.3 - Legacy Gossip Removal

21 Mar 22:57
7a67e5a
Compare
Choose a tag to compare

This version is backwards compatible to v1.11.0. It is optional, but encouraged.

The plugin version is updated to 35 all plugins must update to be compatible.

APIs

  • Removed:
    • platform.GetPendingValidators
    • platform.GetMaxStakeAmount

Configs

  • Removed avalanchego configs:
    • network-peer-list-validator-gossip-size
    • network-peer-list-non-validator-gossip-size
    • network-peer-list-peers-gossip-size
    • network-peer-list-gossip-frequency
    • consensus-accepted-frontier-gossip-validator-size
    • consensus-accepted-frontier-gossip-non-validator-size
    • consensus-accepted-frontier-gossip-peer-size
    • consensus-on-accept-gossip-validator-size
    • consensus-on-accept-gossip-non-validator-size
    • consensus-on-accept-gossip-peer-size
  • Added P-chain, X-chain, and C-chain configs:
    • push-gossip-percent-stake

Fixes

  • Fixed p2p SDK validator sampling to only return connected validators

What's Changed

New Contributors

Full Changelog: v1.11.2...v1.11.3

Durango.2 - Push Gossip Redesign

01 Mar 01:07
daeacb1
Compare
Choose a tag to compare

This version is backwards compatible to v1.11.0. It is optional, but strongly encouraged.

The plugin version is updated to 34 all plugins must update to be compatible.

APIs

  • Removed the ipc API
  • Removed the auth API
  • Removed most keystore related methods from the platform API
    • platform.importKey
    • platform.createAddress
    • platform.addValidator
    • platform.addDelegator
    • platform.addSubnetValidator
    • platform.createSubnet
    • platform.exportAVAX
    • platform.importAVAX
    • platform.createBlockchain
  • Added push gossip metrics:
    • gossip_tracking{type="sent"}
    • gossip_tracking{type="unsent"}
    • gossip_tracking_lifetime_average
      to the following namespaces:
    • avalanche_P_vm_tx
    • avalanche_X_vm_avalanche_tx
    • avalanche_C_vm_sdk_atomic_tx_gossip
    • avalanche_C_vm_sdk_eth_tx_gossip
  • Removed metrics:
    • avalanche_C_vm_eth_gossip_atomic_sent
    • avalanche_C_vm_eth_gossip_eth_txs_sent
    • avalanche_C_vm_eth_regossip_eth_txs_queued_attempts
    • avalanche_C_vm_eth_regossip_eth_txs_queued_local_tx_count
    • avalanche_C_vm_eth_regossip_eth_txs_queued_remote_tx_count

Configs

  • Removed:
    • api-ipcs-enabled
    • ipcs-chain-ids
    • ipcs-path
    • api-auth-required
    • api-auth-password
    • api-auth-password-file
    • consensus-app-gossip-validator-size
    • consensus-app-gossip-non-validator-size
    • consensus-app-gossip-peer-size
  • Removed subnet configs:
    • appGossipValidatorSize
    • appGossipNonValidatorSize
    • appGossipPeerSize
  • Added X-chain and P-chain networking configs:
    • push-gossip-num-validators
    • push-gossip-num-peers
    • push-regossip-num-validators
    • push-regossip-num-peers
    • push-gossip-discarded-cache-size
    • push-gossip-max-regossip-frequency
    • push-gossip-frequency
  • Removed X-chain and P-chain networking configs:
    • legacy-push-gossip-cache-size
  • Added C-chain configs:
    • push-gossip-num-validators
    • push-gossip-num-peers
    • push-regossip-num-validators
    • push-regossip-num-peers
    • push-gossip-frequency
    • pull-gossip-frequency
    • tx-pool-lifetime
  • Removed C-chain configs:
    • tx-pool-journal
    • tx-pool-rejournal
    • remote-gossip-only-enabled
    • regossip-max-txs
    • remote-tx-gossip-only-enabled
    • tx-regossip-max-size

Fixes

  • Fixed mempool push gossip amplification

What's Changed

Full Changelog: v1.11.0...v1.11.2

Durango.1 - Disable Push Re-Gossip

23 Feb 15:59
9d01c51
Compare
Choose a tag to compare

This version is backwards compatible to v1.11.0. It is optional, but strongly encouraged.

The plugin version is unchanged at 33 and is compatible with version v1.11.0.

Fixes

  • Suspended transaction re-push gossip in the p2p SDK

Full Changelog: v1.11.0...v1.11.1

Durango - C-Chain Warp Messaging

21 Feb 21:47
c60f7d2
Compare
Choose a tag to compare

This upgrade consists of the following Avalanche Community Proposals (ACPs):

  • ACP-23 P-Chain Native Transfers
  • ACP-24 Activate Shanghai EIPs on C-Chain
  • ACP-25 Virtual Machine Application Errors
  • ACP-30 Integrate Avalanche Warp Messaging into the EVM
  • ACP-31 Enable Subnet Ownership Transfer
  • ACP-41 Remove Pending Stakers
  • ACP-62 Disable AddValidatorTx and AddDelegatorTx

The changes in the upgrade go into effect at 11 AM ET (4 PM UTC) on Wednesday, March 6th, 2024 on Mainnet.

All Durango supporting Mainnet nodes should upgrade before 11 AM ET, March 6th 2024.

The plugin version is updated to 33 all plugins must update to be compatible.

APIs

  • Added platform.getSubnet API

Configs

  • Deprecated:
    • api-auth-required
    • api-auth-password
    • api-auth-password-file

Fixes

  • Fixed potential deadlock during P-chain shutdown
  • Updated the consensus engine to recover from previously misconfigured subnets without requiring a restart

What's Changed

Full Changelog: v1.10.19...v1.11.0

Durango - C-Chain Warp Messaging - Fuji Pre-Release

01 Feb 23:05
9cdcfbe
Compare
Choose a tag to compare

Please note that this release is unable to run mainnet - and will display "mainnet is not supported" if attempted to run with a mainnet configuration.

This upgrade consists of the following Avalanche Community Proposals (ACPs):

  • ACP-23 P-Chain Native Transfers
  • ACP-24 Activate Shanghai EIPs on C-Chain
  • ACP-25 Virtual Machine Application Errors
  • ACP-30 Integrate Avalanche Warp Messaging into the EVM
  • ACP-31 Enable Subnet Ownership Transfer
  • ACP-41 Remove Pending Stakers
  • ACP-62 Disable AddValidatorTx and AddDelegatorTx

The changes in the upgrade go into effect at 11 AM ET (4 PM UTC) on Tuesday, February 13th, 2024 on the Fuji testnet.

All Fuji nodes must upgrade before 11 AM ET, February 13th 2024.

The plugin version is updated to 32 all plugins must update to be compatible.

Configs

  • Deprecated:
    • api-auth-required
    • api-auth-password
    • api-auth-password-file

Fixes

  • Fixed potential deadlock during P-chain shutdown
  • Updated the consensus engine to recover from previously misconfigured subnets without requiring a restart

What's Changed

Full Changelog: v1.10.19...v1.11.0-fuji

Cortina.19 - Options Before Verification

29 Jan 22:33
4b56873
Compare
Choose a tag to compare

This version is backwards compatible to v1.10.0. It is optional, but encouraged.

The plugin version is unchanged at 31 and is compatible with version v1.10.18.

APIs

  • Added admin.dbGet call to the admin API
  • Added bloom filter metrics:
    • bloom_filter_count
    • bloom_filter_entries
    • bloom_filter_hashes
    • bloom_filter_max_count
    • bloom_filter_reset_count
      to the following namespaces:
    • avalanche_X_vm_mempool
    • avalanche_P_vm_mempool
    • avalanche_C_vm_sdk_atomic_mempool
    • avalanche_C_vm_sdk_eth_mempool

Fixes

  • Fixed race condition during validator set creation
  • Fixed C-chain mempool bloom filter recalculation

What's Changed

Full Changelog: v1.10.18...v1.10.19