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

feat: Re-apply patches onto v0.47.15 #560

Merged
merged 14 commits into from
Jan 22, 2025

Conversation

drklee3
Copy link
Member

@drklee3 drklee3 commented Jan 21, 2025

Reverse method of starting with clean v0.47.15 upstream base, instead of cherry-picking upstream onto our patches. Clearer diffs of only our changes

DracoLi and others added 13 commits January 21, 2025 12:46
includes patches for:
* fixed initial version of added KVStores
* expose DeleteVersionsFrom on MutableTree

patches are published here:
https://github.com/Kava-Labs/kava-patches/tree/19bf1a78805a33fe7a27044f2b03dc3ce1d90392/iavl-v1.2
* add --unsafe-remove-modules flag to Rollback cmd

* adds public DeleteKVStore method on root multistore
* rollback command accepts list of store keys names to forcibly delete

this is useful for rolling back an upgrade that adds modules.
rollbacks are performed by loading & committing the previous version.
without this new functionality, the rollback will fail because no store
version will exist for modules added during the upgrade.

to properly rollback the state, pass in a list of the added module names
and they will be completely removed before the rollback of pre-existing
modules takes place:
```
chain rollback --unsafe-remove-modules mynewmodule,othernewmodule
```

* add DeleteVersionsFrom to Tree

like DeleteVersionsTo, but deletes the given version & upwards

* write deletion of current & future versions

* rename DeleteKVStore -> DeleteLatestVersion

* remove unnecessary deleteKVStore call

the DeleteVersionsFrom on the unwrapped KVStore should be sufficient
* removes incompatible CI workflows
* enables CI testing on kava release branches
additionally, updates the setup-go github action from v3 -> v5
* remove sonar cloud ci

* remove unused sim tests & fix nightly sim

continue running a nightly sim but comment out the unused slack
notification channels
the test coverage it provides is covered by the nightly sims test & there
isn't frequent enough code changes to this repo to warrant 12 runs a day.
store/pruning/manager.go Fixed Show fixed Hide fixed
store/pruning/manager.go Fixed Show fixed Hide fixed
store/pruning/manager.go Fixed Show fixed Hide fixed
store/pruning/manager.go Fixed Show fixed Hide fixed
store/pruning/manager.go Fixed Show fixed Hide fixed
Comment on lines +1010 to +1015
for k := range rs.storesParams {
if k.Name() == keyName {
key = k
break
}
}

Check warning

Code scanning / CodeQL

Iteration over map

Iteration over map may be a possible source of non-determinism
@drklee3 drklee3 force-pushed the dl-v0.47.15-patched branch from b6b2873 to a254e39 Compare January 21, 2025 22:20
drklee3 added a commit to Kava-Labs/kava that referenced this pull request Jan 21, 2025
This uses a TEMPORARY commit hash for testing, from PR
Kava-Labs/cosmos-sdk#560

This will be tested first against mainnet to ensure there are no apphash
mismatch errors
@drklee3 drklee3 marked this pull request as ready for review January 22, 2025 20:35
@drklee3 drklee3 merged commit adafbee into kava-v0.47.15-iavl-v1-release-x Jan 22, 2025
17 of 21 checks passed
@drklee3 drklee3 deleted the dl-v0.47.15-patched branch January 22, 2025 20:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants