Skip to content

Releases: DeFiCh/ain

v4.0.0-rc1

17 Oct 10:56
ed73fc1
Compare
Choose a tag to compare
v4.0.0-rc1 Pre-release
Pre-release

Upgrade Notes

For Testnet network users the network has been rolled back to block 1,150,000. This release requires either a reindex, restarting from snapshot or a clean sync. The expected hash on block 1,150,000 is 2f0b131e15bdb6e5ecbd0e8fd4f9db798db59aa3c78a3b352594b8db341e1f33.

For Changi network users upgrading from any release before beta15, this release requires either a reindex, restarting from snapshot or a clean sync due to changes in the EVM state. Failure to do this may result in an inconsistent EVM state.

Summary

Note: This is a release candidate pre-release. This is NOT meant for use on production systems.

  • Version: 4.0.0-rc1

Testnet EVM

  • EVM RPC Port: 18551
  • EVM ChainID: 1131

Changi

  • P2P Port: 20555
  • DFI RPC Port: 20554
  • EVM RPC Port: 20551
  • EVM ChainID: 1133
  • Network name: changi
  • Rest of the parameters are exactly the same as testnet3, which continues to run in parallel.

What's Changed

Full Changelog: v4.0.0-beta15...v4.0.0-rc1

v3.2.8

17 Mar 10:34
5786fb8
Compare
Choose a tag to compare

Recommended Upgrade

  • Security improvements
    • Rate limit ADDR P2P messages.
      • This prevents a potential DoS attack vector where malicious actors can cause resource exhaustion of the node host.
  • Performance improvements
    • -walletfastselect flag can be used to speed up UTXO selection for large wallets
      • This only works for simple utxo unlock scripts.
      • Using this option will fail to select complex scripts unlock scripts like multi-sig.
      • This can be set as a global default in defid or passed to defi-cli to set per-request context.

Upgrade Notes

  • For >= 3.2.4, no reindex needed. Drop-in upgrade.
  • For >= 3.2.0 and <= 3.2.3, reindex is recommended, but optional and can be drop-in upgrade.
  • For nodes >=3.0.x, one of the following is required:
    • Sync from any of snapshots from the DeFiChain team (below)
  • For all other updates, one of the following is required: a fresh sync, the most recent snapshot.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.

Flag Changes

  • Both defi-cli and defid:
    • Added:
      • walletfastselect
      • walletcoinoptskipsolvable
      • walletcoinopteagerselect
  • defid:
    • Added:
      • maxaddrratepersecond
      • maxaddrprocessingtokenbucket

RPC Changes

  • getpeerinfo:
    • Added:
      • addr_processed
      • addr_rate_limited

Additional Notes

  • None

Network Snapshot

What's Changed

Full Changelog: v3.2.7...v3.2.8

v3.2.7

07 Mar 11:17
0edc8e0
Compare
Choose a tag to compare

Recommended Upgrade

Key highlights

  • Stability fixes:
    • Fixes missing tokens on the balance RPCs in edge cases even though consensus level balances were unaffected.
      • Issue: Nodes missed to index a cascaded chain of calculation that resulted from spent governance voting reward tokens
  • Performance improvements:
    • getburninfo calculation is now done in parallel and is memoized on first call. Only the differential heights is recalculated making it much cheaper to be called.
    • Validation of vault liquidation logic is now done in parallel when hardware supports it and should result in visible improvements on the sync performance with more hardware cores.
  • Additional internal refactors and synchronization improvements

Upgrade Notes

  • For >= 3.2.4, no reindex needed. Drop-in upgrade.
    • Reindex is optional, however recommended for wallets affected by (#1763)
  • For >= 3.2.0 and <= 3.2.3, reindex is recommended, but optional and can be drop-in upgrade.
  • For nodes >=3.0.x, one of the following is required:
    • Sync from any of snapshots from the DeFiChain team (below)
  • For all other updates, one of the following is required: a fresh sync, the most recent snapshot.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.

Flag Changes

  • None

RPC Changes

  • Undocumented API for advanced uses only: votegovbatch

Additional Notes

  • While this release includes many performance improvements, a consequence of #1789 is that listaccounts and gettokenbalances APIs is expected to be slower due to a set of band aids that are applied. These are temporary band aids that will be removed in one of the future releases - has been used for now to workaround the source indexing issue without having to touch consensus related code paths to take the safer approach.

Network Snapshot

What's Changed

Full Changelog: v3.2.6...v3.2.7

v3.2.6

24 Feb 14:23
f0a33ce
Compare
Choose a tag to compare

Recommended Upgrade

  • Added more checkpoints to flatten the memory spike for lower end machines instead of a single large prune
  • Fixes gettokenbalances bug in 3.2.5 that doesn't filter out currently un-spendable tokens from wallet.

Upgrade Notes

  • For >= 3.2.4, no reindex needed. Drop-in upgrade.
  • For >= 3.2.0 and <= 3.2.3, reindex is recommended, but optional and can be drop-in upgrade.
    • reindex fixes edge cases where some entries were missing in the outputs of listaccounthistory (fixed in: #1700) and account history related RPC. This does not affect consensus, UTXOs or account balances.
  • For nodes >=3.0.x, one of the following is required:
    • Sync from any of snapshots from the DeFiChain team (below)
    • Any of your own snapshots or data backups before block 2480466 (b41a1d51d80381d3b14be24bc8b2a5524e1c698f5d7cffe5ec4f7b6807ce935a).
  • For all other updates, one of the following is required: a fresh sync, the most recent snapshot.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.

Flag Changes

  • None

RPC Changes

  • None

Network Snapshot

What's Changed

Full Changelog: v3.2.5...v3.2.6

v3.2.5

23 Feb 08:07
5be62a9
Compare
Choose a tag to compare

Recommended Upgrade

Upgrade Notes

  • For >= 3.2.0 and <= 3.2.3, reindex is recommended, but optional and can be drop in-upgrade.
    • reindex fixes edge cases where some entries were missing in the outputs of listaccounthistory (fixed in: #1700) and account history related RPC. This does not affect consensus, UTXOs or account balances.
  • For nodes >=3.0.x, one of the following is required:
    • Sync from any of snapshots from the DeFiChain team (below)
    • Any of your own snapshots or data backups before block 2480466 (b41a1d51d80381d3b14be24bc8b2a5524e1c698f5d7cffe5ec4f7b6807ce935a).
  • For all other updates, one of the following is required: a fresh sync, the most recent snapshot.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.

Flag Changes

  • Added -dftxworkers=<0/N>: No. of threads in the thread pool for DFTx worker task pool. 0 = automatic.
  • Added -txordering=entrytime/fee/mixed: mixed uses a random selection of entrytime or fee ordering.

Network Snapshot

What's Changed

Full Changelog: v3.2.4...v3.2.5

v3.2.4

08 Feb 11:15
be4bd1f
Compare
Choose a tag to compare

Recommended Upgrade

  • Refactor of history database writers and inclusion of vault collateral changes in vault history
  • Remove left over amounts belonging to a closed vault in loan balances on vault closure
  • Correction to stats in listgovproposalvotes and listgovproposal
  • Support voting by owner or operator address in votegov
  • Fix for staker crash during invalidateblock call
  • Fix for getcustomtx crash when calling on a creategovvoc transaction still in mempool

Upgrade Notes

  • For >= 3.2.0 and <= 3.2.3, reindex is recommended, but is optional and a drop in-upgrade.
    • reindex fixes edge cases where some entries were missing in the outputs of listaccounthistory (fixed in: #1700) and account history related RPC. This does not affect consensus, UTXOs or account balances.
  • For nodes >=3.0.x, one of the following is required:
    • Sync from any of snapshots from the DeFiChain team (below)
    • Any of your own snapshots or data backups before block 2480466 (b41a1d51d80381d3b14be24bc8b2a5524e1c698f5d7cffe5ec4f7b6807ce935a).
  • For all other updates, one of the following is required: a fresh sync, the most recent snapshot.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.
  • Users that rely on account, vault or burn history, may want to run their node with -reindex due to a bug fixed in this release that would delete the history of the last six blocks on startup.

RPC Changes

getgovproposal

  • Fixed
    • Argument parsing error.
  • New output fields added
    • votesNo - number of no votes
    • votesNeutral - number of neutral votes
    • votesInvalid - number of invalid votes (votes by ineligible masternodes)
    • feeRedistributionPerVote - DFI redistributed per voter
    • feeRedistributionTotal - total DFI redistributed to voters
    • approvalThreshold - threshold for number of yes votes for proposal to pass

listgovproposalvotes

  • Fixed
    • cycle is set to 1 instead of the current cycle when argument is not set.
    • Argument parsing error.
  • New output field added
    • valid: Validity of vote.
    • Note: This is not finalised until the voting period is completed, results may change over time if active masternodes resign before the completion height.
  • New arguments
    • aggregate: Returns aggregate voting information about one or more proposals.
      • If no proposal ID is sent, voting information for all of the current proposals are returned.
    • valid (default: true): filter results to include only valid or invalid votes.

votegov

  • masternodeId argument now supports owner and operator address.
    • The node will search for masternodes with the provided owner/operator address to vote with.
    • If a masternode ID is provided, behaviour is unchanged.

listvaulthistory

  • PaybackWithCollateral transactions are now listed.

getcustomtx

  • Fixed crash when decoding unconfirmed CreateVoc transactions.

What's Changed

  • Move CHistoryWriter into CCustomCSView by @Bushstar in #1700
  • Track Add/SubVaultCollateral in vault history by @Bushstar in #1715
  • Add more voting info in getgovproposal rpc by @Mixa84 in #1729
  • Change first parameter of listgovproposals and listgovproposalvotes to be string and parsed as JSON in rpc by @Mixa84 in #1732
  • rpc: votegov: Add support for owner and operator address by @DocteurPing in #1717
  • Addapt fee redistribution test to current situation by @Mixa84 in #1728
  • Remove positive amount on close vault by @Bushstar in #1712
  • Display vote validity in listgovproposals and add validity filter by @shohamc1 in #1725
  • Display aggregate vote stats in listgovproposalvotes by @shohamc1 in #1714
  • Add checkpoints to testnet/devnet by @Bushstar in #1738
  • Fix getcustomtx crash on mempool transaction by @Bushstar in #1742
  • Display vote validity in listgovproposals and add validity filter by @shohamc1 in #1740
  • Fix staker crash on invalidateblock by @Bushstar in #1741
  • v3.2.4 by @Bushstar in #1745

Full Changelog: v3.2.3...v3.2.4

v3.2.3

03 Feb 12:26
300e24f
Compare
Choose a tag to compare

Optional Upgrade

  • An optional upgrade to resolve a performance regression in the node: https://github.com/DeFiCh/ain/issues/1730
  • Disables neutral votes from being set through RPC due to prevent accidental neutral votes temporarily until #1704 is fixed.
  • listgovproposalvotes default values now work as expected to show current cycle instead of the last one.

Upgrade Notes

  • For >= 3.2.0, it is a drop in-upgrade.
  • For nodes >=3.0.x, one of the following is required:
    • Sync from any of snapshots from the DeFiChain team (below)
    • Any of your own snapshots or data backups before block 2480466 (b41a1d51d80381d3b14be24bc8b2a5524e1c698f5d7cffe5ec4f7b6807ce935a).
  • For all other updates, one of the following is required: a fresh sync, the most recent snapshot.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.

Network Snapshot

What's Changed

Full Changelog: v3.2.2...v3.3.0

v3.2.2

19 Jan 02:52
314cf76
Compare
Choose a tag to compare

Optional Upgrade

  • RPCs with fixes and improvements:
    • listaccounthistory: Support for pagination
    • listgovproposals: Multiple fixes and improvements
    • accouthistorycount: Adds txtypes support for accepting multiple types
  • Flags:
    • -backupwallet: Enables automatic wallet backups. This feature is currently experimental and is disabled by default as large wallets can block the validation process during the automatic backup.
    • -leveldbchecksum: Controls the leveldb check sum behaviour and allows bypass to favour faster validations for testing and on non masternodes.
    • -devnet: Enables bootstrapping first iteration of the new network devnet

Upgrade Notes

  • For >= 3.2.0, it is a drop in-upgrade.
  • For nodes >=3.0.x, one of the following is required:
    • Sync from any of snapshots from the DeFiChain team (below)
    • Any of your own snapshots or data backups before block 2480466 (b41a1d51d80381d3b14be24bc8b2a5524e1c698f5d7cffe5ec4f7b6807ce935a).
  • For all other updates, one of the following is required: a fresh sync, the most recent snapshot.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.

Network Snapshot

Changes

Full Changelog: v3.2.1...v3.2.2

v3.2.1

05 Jan 09:09
067fc62
Compare
Choose a tag to compare

Important Information

During one of our pre-hardfork checks, we identified that some of the recent snapshots before Jan 10, 2023 provided by the following sources were created by nodes that were updated incorrectly, resulting in inconsistent data:

All of the incorrect snapshots have now been removed from the above sources, regenerated and verified to be correct as of Jan 11, 2023.
Freshly synced nodes with 3.1.x nodes are unaffected and are ready for the Grand Central Epilogue network upgrade. For those that have used any of the above sources to bootstrap the network, please update your nodes from the same sources again.

Recent verified snapshots:

Optional Upgrade

  • Additional filters and pagination for on-chain governance related RPCs
  • Optional support for time based TX ordering miner policy
  • SPV related fixes that hangs the shutdown process under certain conditions
  • Accounting fixes for getburninfo related to BurnTokenTx

Upgrade Notes

  • For >= 3.2.0, it is a drop in-upgrade.
  • For nodes >=3.0.x, one of the following is required:
    • Sync from any of snapshots from the DeFiChain team (below)
    • Any of your own snapshots or data backups before block 2480466 (b41a1d51d80381d3b14be24bc8b2a5524e1c698f5d7cffe5ec4f7b6807ce935a).
  • For all other updates, one of the following is required: a fresh sync, the most recent snapshot.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.

Changes

Full Changelog: v3.2.0...v3.2.1

v3.2.0

27 Dec 11:20
16ea458
Compare
Choose a tag to compare

Mandatory Upgrade 🎅

This is a mandatory update for the upcoming Grand Central Epilogue chain upgrade. It contains key upgrades for the protocol.
Grand Central Epilogue upgrade is set for block 2574000 (approx. ETA Jan 10th, 2023. UTC) on mainnet.

Update of mainnet node to v3.2 before the chain upgrade block is REQUIRED.

Important Information

During one of our pre-hardfork checks, we identified that some of the recent snapshots before Jan 10, 2023 provided by the following sources were created by nodes that were updated incorrectly, resulting in inconsistent data:

All of the incorrect snapshots have now been removed from the above sources, regenerated and verified to be correct as of Jan 11, 2023.
Freshly synced nodes with 3.1.x nodes are unaffected and are ready for the Grand Central Epilogue network upgrade. For those that have used any of the above sources to bootstrap the network, please update your nodes from the same sources again.

Recent verified snapshots:

Upgrade Notes

  • For >= 3.1.0, it is a drop in-upgrade.
  • For nodes >=3.0.x, one of the following is required:
    • Sync from any of snapshots from the DeFiChain team (below)
    • Any of your own snapshots or data backups before block 2480466 (b41a1d51d80381d3b14be24bc8b2a5524e1c698f5d7cffe5ec4f7b6807ce935a).
    • Fresh sync.
  • For nodes that are being restored from recent snapshot, as with all updates before: -rescan for the wallet txs and additionally -spv_resync for users who hold BTC. If either isn't used, they may not be shown in the wallet until rescanned/resynced.
  • For other nodes, one of the following is required: a fresh sync, the most recent snapshot.

Key highlights

This is planned extension upgrade to 3.1.x that fixes improves protocol stability to ensure the network is ready for enabling the rest of Grand Central features.

Network Snapshot

Merry Christmas! 🎄

Changes

Full Changelog: v3.1.1...v3.2.0