Releases: Agoric/agoric-sdk
agoric-upgrade-16av-rc4
This release provides materials to upgrade the vaultFactory and install new auctioneer contract.
Important Fixes
- fix: Make the auction schedule robust when adding collateral types #8301
- When governed parameters are reset, re-calculate the schedule if there's no next auction scheduled, or if the "next" auction has already passed.
- Enable the Economic Committee to restart the auction scheduler through a governed auction parameter change.
- auction scheduler robustness #9759
- When an auction settles, calculate the distribution of proceeds more robustly and transparently.
- feat: catch all exceptions in auction wakers #8438
- Auctions are more robust to errors that arise while handling timer wakeups.
- Inter Protocol vaults should allow adjustments that don't increase debt when mint limit <= debt outstanding · #9837
To make an on-chain proposal
Presuming bundles are installed (see below) use a tool such as the CoreEval Proposal tab of the DCF Cosmos Proposal Builder.
From Assets below, download 2 permit / script pairs, one for add-auction and one for upgrade-vaults. Drop add-auction-permit.json and add-auction.js on the form, hit Add more files, and then drop the other pair, upgrade-vaults-permit.json and upgrade-vaults.js:
Then sign and submit the governance proposal transaction.
To Install Bundles
Use a tool such as the Install Bundle tab of the Cosmos Proposal Builder
For each of the 4 bundles, drop it onto the form (note the storage cost) and submit:
b1-7db1fff8ee711a4bffe21a81f731d540c3d88c671b2ba6a457c4c9677df123008c310633f738b0eae3042e9593bb2569d0ca59a3f1d12752bcc2124c3240ee97.json
b1-31bf1ef20dd190a9f541471bc15238a51f621ff2340e6eb225214b9fdf3970f2bc3bc4fe151a79ef2e740b2679cf03f553b89a828da704dec9ccba9463fc3f79.json
b1-47c15fc48569fde3afe4e4947f877242d2d6367c07876951acea99a20d9c890974f3d237f22b5033a84c5e3d506acc6e899e519590a8557d49d6d43611dc9c65.json
b1-8859b141114716b24cca1bd8bc14f81c066880556b5e94eb1767c0ca3d5f4917a6762dcbab85d84bcdf06ba64179a34bfd7cbb5b43c9ab459b5abe09aeb7cdd9.json
Bundle provenance:
- ci job: core-eval-scripts.zip
SHA256d9c47e3870926035a30784872d9b0171a7906ccdec38795e1d7f068093bcaf4e
Relevant changes from upgrade-16 to -rc0
- 8722 provisionPool re-register notifiers by @Chris-Hibbert in #9481
- Master integration into dev-upgrade-16 by @iomekam in #9461
- Remove scaled price authority upgrade by @Chris-Hibbert in #9585
- feat: add the ability to override param values by @Chris-Hibbert in #9829
- auction scheduler robustness by @turadg in #9759
- Update a3p-integration after upgrade 16 by @Chris-Hibbert in #9878
- adding collateral by @turadg in #7892
- fix(vaultFactory): don't prevent repayment based on DebtLimit by @dckc in #9907
- upgrade vaults by @Chris-Hibbert in #9283
- Add a coreEval for vaults auctions and test in a3p by @Chris-Hibbert in #9911
- robustify allManagersDo by @Chris-Hibbert in #9833
- fix: giving collateral should not change totalDebt by @dckc in #9873
Full Changelog: agoric-upgrade-16...agoric-upgrade-16av-rc0
Relevant Changes from -rc0 to -rc1
- Ratio.quantize() shouldn't increase precision unnecessarily by @Chris-Hibbert in #9926
- Specify a bundle to use when upgrading auctions by @Chris-Hibbert in #9937
Full Changelog: agoric-upgrade-16av-rc0...agoric-upgrade-16av-rc1
Relevant changes from -rc1 to -rc2
- ci(integration): add a step to archive core eval scripts by @LuqiPan in #9929
- get auction instance from promise returned by addAuction by @Chris-Hibbert in #9944
Full Changelog: agoric-upgrade-16av-rc1...agoric-upgrade-16av-rc2
Relevant changes from -rc2 to -rc3
- feat: add null upgrade of vaultFactoryGovernor to upgrade-vaults.js by @Chris-Hibbert in #9953
Full Changelog: agoric-upgrade-16av-rc2...agoric-upgrade-16av-rc3
Changes from -rc3
- feat: update auction in agoricNames, test that the boardId changed by @Chris-Hibbert in #9970
Full Changelog: agoric-upgrade-16av-rc3...agoric-upgrade-16av-rc4
agoric-upgrade-16av
This release provides materials to upgrade the vaultFactory and install new auctioneer contract.
Important Fixes
- fix: Make the auction schedule robust when adding collateral types #8301
- When governed parameters are reset, re-calculate the schedule if there's no next auction scheduled, or if the "next" auction has already passed.
- Enable the Economic Committee to restart the auction scheduler through a governed auction parameter change.
- auction scheduler robustness #9759
- When an auction settles, calculate the distribution of proceeds more robustly and transparently.
- feat: catch all exceptions in auction wakers #8438
- Auctions are more robust to errors that arise while handling timer wakeups.
- Inter Protocol vaults should allow adjustments that don't increase debt when mint limit <= debt outstanding · #9837
To make an on-chain proposal
Presuming bundles are installed (see below) use a tool such as the CoreEval Proposal tab of the DCF Cosmos Proposal Builder.
From Assets below, download 2 permit / script pairs, one for add-auction and one for upgrade-vaults. Drop add-auction-permit.json and add-auction.js on the form, hit Add more files, and then drop the other pair, upgrade-vaults-permit.json and upgrade-vaults.js:
Then sign and submit the governance proposal transaction.
To Install Bundles
Use a tool such as the Install Bundle tab of the Cosmos Proposal Builder
For each of the 4 bundles, drop it onto the form (note the storage cost) and submit:
b1-7db1fff8ee711a4bffe21a81f731d540c3d88c671b2ba6a457c4c9677df123008c310633f738b0eae3042e9593bb2569d0ca59a3f1d12752bcc2124c3240ee97.json
b1-31bf1ef20dd190a9f541471bc15238a51f621ff2340e6eb225214b9fdf3970f2bc3bc4fe151a79ef2e740b2679cf03f553b89a828da704dec9ccba9463fc3f79.json
b1-47c15fc48569fde3afe4e4947f877242d2d6367c07876951acea99a20d9c890974f3d237f22b5033a84c5e3d506acc6e899e519590a8557d49d6d43611dc9c65.json
b1-8859b141114716b24cca1bd8bc14f81c066880556b5e94eb1767c0ca3d5f4917a6762dcbab85d84bcdf06ba64179a34bfd7cbb5b43c9ab459b5abe09aeb7cdd9.json
Bundle provenance:
- ci job: core-eval-scripts.zip
SHA256d9c47e3870926035a30784872d9b0171a7906ccdec38795e1d7f068093bcaf4e
Relevant changes from upgrade-16 to -rc0
- 8722 provisionPool re-register notifiers by @Chris-Hibbert in #9481
- Master integration into dev-upgrade-16 by @iomekam in #9461
- Remove scaled price authority upgrade by @Chris-Hibbert in #9585
- feat: add the ability to override param values by @Chris-Hibbert in #9829
- auction scheduler robustness by @turadg in #9759
- Update a3p-integration after upgrade 16 by @Chris-Hibbert in #9878
- adding collateral by @turadg in #7892
- fix(vaultFactory): don't prevent repayment based on DebtLimit by @dckc in #9907
- upgrade vaults by @Chris-Hibbert in #9283
- Add a coreEval for vaults auctions and test in a3p by @Chris-Hibbert in #9911
- robustify allManagersDo by @Chris-Hibbert in #9833
- fix: giving collateral should not change totalDebt by @dckc in #9873
Full Changelog: agoric-upgrade-16...agoric-upgrade-16av-rc0
Relevant Changes from -rc0 to -rc1
- Ratio.quantize() shouldn't increase precision unnecessarily by @Chris-Hibbert in #9926
- Specify a bundle to use when upgrading auctions by @Chris-Hibbert in #9937
Full Changelog: agoric-upgrade-16av-rc0...agoric-upgrade-16av-rc1
Relevant changes from -rc1 to -rc2
- ci(integration): add a step to archive core eval scripts by @LuqiPan in #9929
- get auction instance from promise returned by addAuction by @Chris-Hibbert in #9944
Full Changelog: agoric-upgrade-16av-rc1...agoric-upgrade-16av-rc2
Relevant changes from -rc2 to -rc3
- feat: add null upgrade of vaultFactoryGovernor to upgrade-vaults.js by @Chris-Hibbert in #9953
Full Changelog: agoric-upgrade-16av-rc2...agoric-upgrade-16av-rc3
Changes from -rc3
- feat: update auction in agoricNames, test that the boardId changed by @Chris-Hibbert in #9970
Full Changelog: agoric-upgrade-16av-rc3...agoric-upgrade-16av-rc4
agoric-upgrade-16av-rc3
This release provides materials to upgrade the vaultFactory and install new auctioneer contract.
Important Fixes
- fix: Make the auction schedule robust when adding collateral types #8301
- When governed parameters are reset, re-calculate the schedule if there's no next auction scheduled, or if the "next" auction has already passed.
- Enable the Economic Committee to restart the auction scheduler through a governed auction parameter change.
- auction scheduler robustness #9759
- When an auction settles, calculate the distribution of proceeds more robustly and transparently.
- feat: catch all exceptions in auction wakers #8438
- Auctions are more robust to errors that arise while handling timer wakeups.
- Inter Protocol vaults should allow adjustments that don't increase debt when mint limit <= debt outstanding · #9837
To make an on-chain proposal
Presuming bundles are installed (see below) use a tool such as the CoreEval Proposal tab of the DCF Cosmos Proposal Builder.
From Assets below, download 2 permit / script pairs, one for add-auction and one for upgrade-vaults. Drop add-auction-permit.json and add-auction.js on the form, hit Add more files, and then drop the other pair, upgrade-vaults-permit.json and upgrade-vaults.js:
Then sign and submit the governance proposal transaction.
To Install Bundles
Use a tool such as the Install Bundle tab of the Cosmos Proposal Builder
For each of the 4 bundles, drop it onto the form (note the storage cost) and submit:
Bundle provenance:
- ci job: core-eval-scripts.zip
SHA256d8c9f53a8c0ef4e0717ce00e1e3cd592200b959382f956c0915cc15e43f36b4d
Relevant changes from upgrade-16 to -rc0
- 8722 provisionPool re-register notifiers by @Chris-Hibbert in #9481
- Master integration into dev-upgrade-16 by @iomekam in #9461
- Remove scaled price authority upgrade by @Chris-Hibbert in #9585
- feat: add the ability to override param values by @Chris-Hibbert in #9829
- auction scheduler robustness by @turadg in #9759
- Update a3p-integration after upgrade 16 by @Chris-Hibbert in #9878
- adding collateral by @turadg in #7892
- fix(vaultFactory): don't prevent repayment based on DebtLimit by @dckc in #9907
- upgrade vaults by @Chris-Hibbert in #9283
- Add a coreEval for vaults auctions and test in a3p by @Chris-Hibbert in #9911
- robustify allManagersDo by @Chris-Hibbert in #9833
- fix: giving collateral should not change totalDebt by @dckc in #9873
Full Changelog: agoric-upgrade-16...agoric-upgrade-16av-rc0
Relevant Changes from -rc0 to -rc1
- Ratio.quantize() shouldn't increase precision unnecessarily by @Chris-Hibbert in #9926
- Specify a bundle to use when upgrading auctions by @Chris-Hibbert in #9937
Full Changelog: agoric-upgrade-16av-rc0...agoric-upgrade-16av-rc1
Relevant changes from -rc1 to -rc2
- ci(integration): add a step to archive core eval scripts by @LuqiPan in #9929
- get auction instance from promise returned by addAuction by @Chris-Hibbert in #9944
Full Changelog: agoric-upgrade-16av-rc1...agoric-upgrade-16av-rc2
Relevant changes from -rc2 to -rc3
- feat: add null upgrade of vaultFactoryGovernor to upgrade-vaults.js by @Chris-Hibbert in #9953
Full Changelog: agoric-upgrade-16av-rc2...agoric-upgrade-16av-rc3
agoric-upgrade-16av-rc2
This release provides materials to upgrade the vaultFactory and install new auctioneer contract.
Important Fixes
- fix: Make the auction schedule robust when adding collateral types #8301
- When governed parameters are reset, re-calculate the schedule if there's no next auction scheduled, or if the "next" auction has already passed.
- Enable the Economic Committee to restart the auction scheduler through a governed auction parameter change.
- auction scheduler robustness #9759
- When an auction settles, calculate the distribution of proceeds more robustly and transparently.
- feat: catch all exceptions in auction wakers #8438
- Auctions are more robust to errors that arise while handling timer wakeups.
- Inter Protocol vaults should allow adjustments that don't increase debt when mint limit <= debt outstanding · #9837
To make an on-chain proposal
Presuming bundles are installed (see below) use a tool such as the CoreEval Proposal tab of the DCF Cosmos Proposal Builder.
From Assets below, download 2 permit / script pairs, one for add-auction and one for upgrade-vaults. Drop add-auction-permit.json and add-auction.js on the form, hit Add more files, and then drop the other pair, upgrade-vaults-permit.json and upgrade-vaults.js:
Then sign and submit the governance proposal transaction.
To Install Bundles
Use a tool such as the Install Bundle tab of the Cosmos Proposal Builder
For each of the 4 bundles, drop it onto the form (note the storage cost) and submit:
Relevant changes from upgrade-16 to -rc0
- 8722 provisionPool re-register notifiers by @Chris-Hibbert in #9481
- Master integration into dev-upgrade-16 by @iomekam in #9461
- Remove scaled price authority upgrade by @Chris-Hibbert in #9585
- feat: add the ability to override param values by @Chris-Hibbert in #9829
- auction scheduler robustness by @turadg in #9759
- Update a3p-integration after upgrade 16 by @Chris-Hibbert in #9878
- adding collateral by @turadg in #7892
- fix(vaultFactory): don't prevent repayment based on DebtLimit by @dckc in #9907
- upgrade vaults by @Chris-Hibbert in #9283
- Add a coreEval for vaults auctions and test in a3p by @Chris-Hibbert in #9911
- robustify allManagersDo by @Chris-Hibbert in #9833
- fix: giving collateral should not change totalDebt by @dckc in #9873
Full Changelog: agoric-upgrade-16...agoric-upgrade-16av-rc0
Relevant Changes from -rc0 to -rc1
- Ratio.quantize() shouldn't increase precision unnecessarily by @Chris-Hibbert in #9926
- Specify a bundle to use when upgrading auctions by @Chris-Hibbert in #9937
Full Changelog: agoric-upgrade-16av-rc0...agoric-upgrade-16av-rc1
Relevant changes from -rc1 to -rc2
- ci(integration): add a step to archive core eval scripts by @LuqiPan in #9929
- get auction instance from promise returned by addAuction by @Chris-Hibbert in #9944
Full Changelog: agoric-upgrade-16av-rc1...agoric-upgrade-16av-rc2
agoric-upgrade-16av-rc1
Relevant Changes from -rc0
- Ratio.quantize() shouldn't increase precision unnecessarily by @Chris-Hibbert in #9926
- Specify a bundle to use when upgrading auctions by @Chris-Hibbert in #9937
Full Changelog: agoric-upgrade-16av-rc0...agoric-upgrade-16av-rc1
agoric-upgrade-16av-rc0
This release provides materials to upgrade the vaultFactory and install new auctioneer contract.
Important Fixes
- fix: Make the auction schedule robust when adding collateral types #8301
- When governed parameters are reset, re-calculate the schedule if there's no next auction scheduled, or if the "next" auction has already passed.
- Enable the Economic Committee to restart the auction scheduler through a governed auction parameter change.
- auction scheduler robustness #9759
- When an auction settles, calculate the distribution of proceeds more robustly and transparently.
- feat: catch all exceptions in auction wakers #8438
- Auctions are more robust to errors that arise while handling timer wakeups.
- Inter Protocol vaults should allow adjustments that don't increase debt when mint limit <= debt outstanding · #9837
To make an on-chain proposal
Presuming bundles are installed (see below) use a tool such as the CoreEval Proposal tab of the DCF Cosmos Proposal Builder.
From Assets below, download 2 permit / script pairs, one for add-auction and one for upgrade-vaults, and drop them on the form:
Then sign and submit the governance proposal transaction.
To Install Bundles
Use a tool such as the Install Bundle tab of the Cosmos Proposal Builder
For each bundle, drop it onto the form (note the storage cost) and submit:
Relevant changes from upgrade-16
- 8722 provisionPool re-register notifiers by @Chris-Hibbert in #9481
- Master integration into dev-upgrade-16 by @iomekam in #9461
- Remove scaled price authority upgrade by @Chris-Hibbert in #9585
- feat: add the ability to override param values by @Chris-Hibbert in #9829
- auction scheduler robustness by @turadg in #9759
- Update a3p-integration after upgrade 16 by @Chris-Hibbert in #9878
- fix(vaultFactory): don't prevent repayment based on DebtLimit by @dckc in #9907
- Add a coreEval for vaults auctions and test in a3p by @Chris-Hibbert in #9911
- fix: giving collateral should not change totalDebt by @dckc in #9873
Full Changelog: agoric-upgrade-16...agoric-upgrade-16av-rc0
agoric-upgrade-16
The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-16
release. This release is primarily intended to deploy the Orchestration Core feature and fix some performance issues. This is a significant upgrade that marks a major milestone by enabling new functionality for the Agoric chain.
The following new features are included in this release:
The release contains at least the following fixes:
- #9316: Fix a memory leak that impacted commit time and resulted in missed blocks
- #9418: State-sync export would temporarily stall the node while initiating a snapshot resulting in missed blocks
- #9100: Make the
snapshots export
command usable - #9424: Some options like
iavl-disable-fastnode
were not applied - #9179: Avoid unnecessary rebuilds when invoking
agd
- #9620: Improve handling of ephemeral values
- #9671: Adopt VTRANSFER_IBC_EVENT as an action-type
- #9682: Fix store upgrade logic when applying multiple upgrades of the same version
The full set of changes in this release can be found at #9642, #9678 and #9684.
This release has satisfied all pre-release/testnet validation checks, and is now recommended for chains to upgrade from the previous agoric-upgrade-15
release. As a chain-halting upgrade, once approved, all chain validators will need to upgrade from agoric-upgrade-15
to this new version (after the chain halts due to reaching the height required in a governance proposal).
State-sync
As a change from previous releases, state-sync snapshots now only include minimal data to restore a node. However there are still continued performance issues related to state-sync. In particular, we've observed that on some deployments, the snapshot taking and restoring process can take multiple hours, require about 20GB of temporary free disk space, and 16GB of memory.
In this release, the snapshots export
agd command has been fixed, and can now be used to generate a snapshot export of the current application state (while the node is not running). Combined with with other snapshots
commands and the tendermint bootstrap-state
command, this can be used to restore a node (state-sync pruning) without having to connect the node to the p2p network.
Handling of the iavl-disable-fastnode
option
A bug in agoric-upgrade-14
and agoric-upgrade-15
resulted in this configuration option to be ignored, and default to false
. As such all nodes will have created a "fast node" index, even if the option was explicitly set to true
in the config. This release now honors the option.
Cosmos Upgrade Handler Name
Below is the cosmos upgrade handler name for this release. This is the name that can be used in governance proposals to deploy this upgrade.
Cosmos Upgrade Handler Name: agoric-upgrade-16
Tags
Below is the git information related to this software release. Note the git tag does not always match the cosmos upgrade handler name.
Git Tag: agoric-upgrade-16
Git Commit: c772ff40720e6d669e67d2da06e9ab394de6a9c1
@agoric/cosmos package version: 0.35.0-u16.2
Docker: ghcr.io/agoric/agoric-sdk:47
As shown in go.mod this release is based on:
ibc-go v6.3.1
cosmos-sdk v0.46.16
cometbft v0.34.30
How to upgrade
Presuming that your node is running agoric-upgrade-15
, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-16
has been reached, your node will halt automatically allowing you to upgrade the agoric stack.
Prerequisites
Install supported versions of Go, Node.js, and a compiler such as gcc or clang as documented in the README.
Building
# (stop the agd service)
cd agoric-sdk
git fetch --all
git checkout agoric-upgrade-16
git clean -xdf && git submodule foreach --recursive git clean -xdf
./bin/agd build
# (start the agd service)
Do not copy the agd
script or Go binary to another location. If you would like to have an executable agd
in another location, then create a symlink in that location pointing to agoric-sdk/bin/agd
.
Troubleshooting repoconfig.sh: No such file or directory
Unlike typical cosmos-sdk chains where the daemon is a single executable file, Agoric's use of cosmos-sdk depends on many components of agoric-sdk
at runtime. Copying agd
to /usr/local/bin
or the like is unlikely to produce a working installation. For more detail, see: #7825
Troubleshooting Cannot find dependency ...
in systemd
If you have LimitNOFILE=4096
in your systemd unit file, change it to LimitNOFILE=65536
. For more detail, see #7817
Specifying --upgrade-info
for the software upgrade proposal
The ./scripts/gen-upgrade-proposal.sh
is designed to aid in composing a agd tx submit-proposal software-upgrade ...
command. In particular, it captures package checksums to verify integrity of downloaded software.
agoric-upgrade-16-rc3
The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-16-rc3
release. This release is primarily intended to deploy the Orchestration Core feature and fix some performance issues. This is a significant upgrade that marks a major milestone by enabling new functionality for the Agoric chain.
The following new features are included in this release:
The release contains at least the following fixes:
- #9316: Fix a memory leak that impacted commit time and resulted in missed blocks
- #9418: State-sync export would temporarily stall the node while initiating a snapshot resulting in missed blocks
- #9100: Make the
snapshots export
command usable - #9424: Some options like
iavl-disable-fastnode
were not applied - #9179: Avoid unnecessary rebuilds when invoking
agd
- #9620: [new since RC0] Improve handling of ephemeral values
- #9671: [new since RC1] Adopt VTRANSFER_IBC_EVENT as an action-type
- #9682: [new since RC2] Fix store upgrade logic when applying multiple upgrades of the same version
The full set of changes in this release can be found at #9642, #9678 and #9684.
Assuming this release satisfies all pre-release/testnet validation checks, it will be promoted to agoric-upgrade-16
, and recommended for chains to upgrade from the previous agoric-upgrade-15
release. As a chain-halting upgrade, once approved, all chain validators will need to upgrade from agoric-upgrade-15
to this new version (after the chain halts due to reaching the height required in a governance proposal).
State-sync
As a change from previous releases, state-sync snapshots now only include minimal data to restore a node. However there are still continued performance issues related to state-sync. In particular, we've observed that on some deployments, the snapshot taking and restoring process can take multiple hours, require about 20GB of temporary free disk space, and 16GB of memory.
In this release, the snapshots export
agd command has been fixed, and can now be used to generate a snapshot export of the current application state (while the node is not running). Combined with with other snapshots
commands and the tendermint bootstrap-state
command, this can be used to restore a node (state-sync pruning) without having to connect the node to the p2p network.
Handling of the iavl-disable-fastnode
option
A bug in agoric-upgrade-14
and agoric-upgrade-15
resulted in this configuration option to be ignored, and default to false
. As such all nodes will have created a "fast node" index, even if the option was explicitly set to true
in the config. This release now honors the option.
Cosmos Upgrade Handler Name
Below are the cosmos upgrade handler names for this release. These names can be used in governance proposals to deploy this upgrade.
for all other networks
Cosmos Upgrade Handler Name: agoric-upgrade-16
Tags
Below is the git information related to this software release. Note the git tag does not exactly match the cosmos upgrade handler name.
Git Tag: agoric-upgrade-16-rc3
Git Commit: c772ff40720e6d669e67d2da06e9ab394de6a9c1
@agoric/cosmos package version: 0.35.0-u16.2
Docker: ghcr.io/agoric/agoric-sdk:47
As shown in go.mod this release is based on:
ibc-go v6.3.1
cosmos-sdk v0.46.16
cometbft v0.34.30
How to upgrade
Presuming that your node is running agoric-upgrade-15
, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-16-rc3
has been reached, your node will halt automatically allowing you to upgrade the agoric stack.
Prerequisites
Install supported versions of Go, Node.js, and a compiler such as gcc or clang as documented in the README.
Building
# (stop the agd service)
cd agoric-sdk
git fetch --all
git checkout agoric-upgrade-16-rc3
git clean -xdf && git submodule foreach --recursive git clean -xdf
./bin/agd build
# (start the agd service)
Do not copy the agd
script or Go binary to another location. If you would like to have an executable agd
in another location, then create a symlink in that location pointing to agoric-sdk/bin/agd
.
Troubleshooting repoconfig.sh: No such file or directory
Unlike typical cosmos-sdk chains where the daemon is a single executable file, Agoric's use of cosmos-sdk depends on many components of agoric-sdk
at runtime. Copying agd
to /usr/local/bin
or the like is unlikely to produce a working installation. For more detail, see: #7825
Troubleshooting Cannot find dependency ...
in systemd
If you have LimitNOFILE=4096
in your systemd unit file, change it to LimitNOFILE=65536
. For more detail, see #7817
Specifying --upgrade-info
for the software upgrade proposal
The ./scripts/gen-upgrade-proposal.sh
is designed to aid in composing a agd tx submit-proposal software-upgrade ...
command. In particular, it captures package checksums to verify integrity of downloaded software.
agoric-upgrade-16-rc2
The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-16-rc2
release. This release is primarily intended to deploy the Orchestration Core feature and fix some performance issues. This is a significant upgrade that marks a major milestone by enabling new functionality for the Agoric chain.
The following new features are included in this release:
The release contains at least the following fixes:
- #9316: Fix a memory leak that impacted commit time and resulted in missed blocks
- #9418: State-sync export would temporarily stall the node while initiating a snapshot resulting in missed blocks
- #9100: Make the
snapshots export
command usable - #9424: Some options like
iavl-disable-fastnode
were not applied - #9179: Avoid unnecessary rebuilds when invoking
agd
- #9620: [new since RC0] Improve handling of ephemeral values
- #9671: [new since RC1] Adopt VTRANSFER_IBC_EVENT as an action-type
The full set of changes in this release can be found at #9642 and #9678.
Assuming this release satisfies all pre-release/testnet validation checks, it will be promoted to agoric-upgrade-16
, and recommended for chains to upgrade from the previous agoric-upgrade-15
release. As a chain-halting upgrade, once approved, all chain validators will need to upgrade from agoric-upgrade-15
to this new version (after the chain halts due to reaching the height required in a governance proposal).
State-sync
As a change from previous releases, state-sync snapshots now only include minimal data to restore a node. However there are still continued performance issues related to state-sync. In particular, we've observed that on some deployments, the snapshot taking and restoring process can take multiple hours, require about 20GB of temporary free disk space, and 16GB of memory.
In this release, the snapshots export
agd command has been fixed, and can now be used to generate a snapshot export of the current application state (while the node is not running). Combined with with other snapshots
commands and the tendermint bootstrap-state
command, this can be used to restore a node (state-sync pruning) without having to connect the node to the p2p network.
Handling of the iavl-disable-fastnode
option
A bug in agoric-upgrade-14
and agoric-upgrade-15
resulted in this configuration option to be ignored, and default to false
. As such all nodes will have created a "fast node" index, even if the option was explicitly set to true
in the config. This release now honors the option.
Cosmos Upgrade Handler Name
Below are the cosmos upgrade handler names for this release. These names can be used in governance proposals to deploy this upgrade.
for all other networks
Cosmos Upgrade Handler Name: agoric-upgrade-16
Tags
Below is the git information related to this software release. Note the git tag does not exactly match the cosmos upgrade handler name.
Git Tag: agoric-upgrade-16-rc2
Git Commit: 2eaeab90b4015e355faea534c1c933351d25b1b9
@agoric/cosmos package version: 0.35.0-u16.1
Docker: ghcr.io/agoric/agoric-sdk:46
As shown in go.mod this release is based on:
ibc-go v6.3.1
cosmos-sdk v0.46.16
cometbft v0.34.30
How to upgrade
Presuming that your node is running agoric-upgrade-15
, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-16-rc2
has been reached, your node will halt automatically allowing you to upgrade the agoric stack.
Prerequisites
Install supported versions of Go, Node.js, and a compiler such as gcc or clang as documented in the README.
Building
# (stop the agd service)
cd agoric-sdk
git fetch --all
git checkout agoric-upgrade-16-rc1
git clean -xdf && git submodule foreach --recursive git clean -xdf
./bin/agd build
# (start the agd service)
Do not copy the agd
script or Go binary to another location. If you would like to have an executable agd
in another location, then create a symlink in that location pointing to agoric-sdk/bin/agd
.
Troubleshooting repoconfig.sh: No such file or directory
Unlike typical cosmos-sdk chains where the daemon is a single executable file, Agoric's use of cosmos-sdk depends on many components of agoric-sdk
at runtime. Copying agd
to /usr/local/bin
or the like is unlikely to produce a working installation. For more detail, see: #7825
Troubleshooting Cannot find dependency ...
in systemd
If you have LimitNOFILE=4096
in your systemd unit file, change it to LimitNOFILE=65536
. For more detail, see #7817
Specifying --upgrade-info
for the software upgrade proposal
The ./scripts/gen-upgrade-proposal.sh
is designed to aid in composing a agd tx submit-proposal software-upgrade ...
command. In particular, it captures package checksums to verify integrity of downloaded software.
agoric-upgrade-16-rc1
The Agoric OpCo engineering team is pleased to publish the agoric-upgrade-16-rc1
release. This release is primarily intended to deploy the Orchestration Core feature and fix some performance issues. This is a significant upgrade that marks a major milestone by enabling new functionality for the Agoric chain.
The following new features are included in this release:
The release contains at least the following fixes:
- #9316: Fix a memory leak that impacted commit time and resulted in missed blocks
- #9418: State-sync export would temporarily stall the node while initiating a snapshot resulting in missed blocks
- #9100: Make the
snapshots export
command usable - #9424: Some options like
iavl-disable-fastnode
were not applied - #9179: Avoid unnecessary rebuilds when invoking
agd
- #9620: [new since RC0] Improve handling of ephemeral values
The full set of changes in this release can be found at #9642.
Assuming this release satisfies all pre-release/testnet validation checks, it will be promoted to agoric-upgrade-16
, and recommended for chains to upgrade from the previous agoric-upgrade-15
release. As a chain-halting upgrade, once approved, all chain validators will need to upgrade from agoric-upgrade-15
to this new version (after the chain halts due to reaching the height required in a governance proposal).
State-sync
As a change from previous releases, state-sync snapshots now only include minimal data to restore a node. However there are still continued performance issues related to state-sync. In particular, we've observed that on some deployments, the snapshot taking and restoring process can take multiple hours, require about 20GB of temporary free disk space, and 16GB of memory.
In this release, the snapshots export
agd command has been fixed, and can now be used to generate a snapshot export of the current application state (while the node is not running). Combined with with other snapshots
commands and the tendermint bootstrap-state
command, this can be used to restore a node (state-sync pruning) without having to connect the node to the p2p network.
Handling of the iavl-disable-fastnode
option
A bug in agoric-upgrade-14
and agoric-upgrade-15
resulted in this configuration option to be ignored, and default to false
. As such all nodes will have created a "fast node" index, even if the option was explicitly set to true
in the config. This release now honors the option.
Cosmos Upgrade Handler Name
Below is the cosmos upgrade handler name for this release. This is the name that can be used in governance proposals to deploy this upgrade.
Cosmos Upgrade Handler Name: agoric-upgrade-16
Tags
Below is the git information related to this software release. Note the git tag does not exactly match the cosmos upgrade handler name.
Git Tag: agoric-upgrade-16-rc1
Git Commit: bbdf652c3f413381cb352a8a360db1063974fafd
@agoric/cosmos package version: 0.35.0-u16.0
Docker: ghcr.io/agoric/agoric-sdk:45
As shown in go.mod this release is based on:
ibc-go v6.3.1
cosmos-sdk v0.46.16
cometbft v0.34.30
How to upgrade
Presuming that your node is running agoric-upgrade-15
, once the upgrade height for a subsequent proposal to upgrade to agoric-upgrade-16-rc1
has been reached, your node will halt automatically allowing you to upgrade the agoric stack.
Prerequisites
Install supported versions of Go, Node.js, and a compiler such as gcc or clang as documented in the README.
Building
# (stop the agd service)
cd agoric-sdk
git fetch --all
git checkout agoric-upgrade-16-rc1
git clean -xdf && git submodule foreach --recursive git clean -xdf
./bin/agd build
# (start the agd service)
Do not copy the agd
script or Go binary to another location. If you would like to have an executable agd
in another location, then create a symlink in that location pointing to agoric-sdk/bin/agd
.
Troubleshooting repoconfig.sh: No such file or directory
Unlike typical cosmos-sdk chains where the daemon is a single executable file, Agoric's use of cosmos-sdk depends on many components of agoric-sdk
at runtime. Copying agd
to /usr/local/bin
or the like is unlikely to produce a working installation. For more detail, see: #7825
Troubleshooting Cannot find dependency ...
in systemd
If you have LimitNOFILE=4096
in your systemd unit file, change it to LimitNOFILE=65536
. For more detail, see #7817
Specifying --upgrade-info
for the software upgrade proposal
The ./scripts/gen-upgrade-proposal.sh
is designed to aid in composing a agd tx submit-proposal software-upgrade ...
command. In particular, it captures package checksums to verify integrity of downloaded software.