Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade Module Meta-Issue #5292

Closed
10 of 13 tasks
alexanderbez opened this issue Nov 8, 2019 · 6 comments
Closed
10 of 13 tasks

Upgrade Module Meta-Issue #5292

alexanderbez opened this issue Nov 8, 2019 · 6 comments

Comments

@alexanderbez
Copy link
Contributor

alexanderbez commented Nov 8, 2019

Summary

Meta-Issue of items to complete before the upgrade module work can be considered "complete":

  • Review and merge the upgrade module PR
  • PR spec/ to upgrade module
  • Review and test upgrade demo PR in Gaia
  • governance can coordinate a smooth chain upgrade at a specified block height without requiring chain dumps
  • upgrade daemon for smoothly handling upgrades
  • smooth upgrades can handle root multi store renames/deletions
  • support for recovering from upgrades that need to be aborted
  • fix State load issue when applying upgrades #5746
  • backwards compatible upgrades for Tendermint (discussed with Ethan Buchman in Berlin and sounded feasible)
  • Nice to have: Add --unsafe-retry-last-block CLI flag

For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@alexanderbez
Copy link
Contributor Author

@aaronc what are the remaining items needed for a fully-functional upgrade module (if any at all)?

@fedekunze
Copy link
Collaborator

I think @aaronc mentioned https://github.com/regen-network/cosmosd:

This is a tiny little shim around Cosmos SDK binaries that use the upgrade module that allows for smooth and configurable management of upgrading binaries as a live chain is upgraded, and can be used to simplify validator devops while doing upgrades or to make syncing a full node for genesis simple. The upgrade manager will monitor the stdout of the daemon to look for messages from the upgrade module indicating a pending or required upgrade and act appropriately. (With better integrations possible in the future)

@aaronc
Copy link
Member

aaronc commented Dec 5, 2019

Okay so we actually have our own "meta-issue" or epic tracking this: regen-network/regen-ledger#70, with several linked issues for specific things. This tracks things to be upstreamed to Cosmos SDK as well as https://github.com/regen-network/cosmosd issues. The main things for Cosmos SDK are what we previously discussed on a call with Jack and Bez, basically:

We could have tracked some of this more directly with cosmos-sdk issues and if that would be preferable in the future let us know. Managing this with internal issues makes it easier for us with our kanban workflow and I'm hoping also reduces spam on the SDK team while we're in the development process.

Regarding cosmosd, our thought has been so far that Regen Network would continue to maintain this project but I'm open to discussing other possibilities. It worked in our testnet upgrade, albeit with a few non-fatal glitches which are being worked on as part of the epic I linked above.

@alexanderbez
Copy link
Contributor Author

Great! In that case, I'll just cross-reference regen-network/regen-ledger#70 as a line-item to be completed here. When that is finished by Regen, it'll be checked off here and we can close this issue once merged upstream to the SDK.

WRT to cosmosd, we should only recommend that as an option (which we do in the upgrade module's doc). I don't think there is much else to do there. Correct me if I'm wrong :)

@alexanderbez alexanderbez added this to the SDK Roadmap milestone Dec 11, 2019
@alexanderbez
Copy link
Contributor Author

@aaronc we're getting ready to cut 0.38 very soon. I highly doubt all the remaining work in regen-network/regen-ledger#70 will be completed in this timeframe.

Do you believe it's OK to cut the release without these items and slate them for 0.39? This means, 0.38 will have the upgrade module + support for skip upgrade heights.

@aaronc
Copy link
Member

aaronc commented Jan 9, 2020 via email

@clevinson clevinson modified the milestones: SDK Roadmap, v0.39 Apr 30, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants