fix: exclude mem store from commit info (#14931)
This commit is contained in:
parent
1d2b805aca
commit
1344ff137d
@ -265,6 +265,7 @@ extension interfaces. `module.Manager.Modules` is now of type `map[string]interf
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* (store) [#14931](https://github.com/cosmos/cosmos-sdk/pull/14931) Exclude in-memory KVStores, i.e. `StoreTypeMemory`, from CommitInfo commitments.
|
||||
* (types/coin) [#14715](https://github.com/cosmos/cosmos-sdk/pull/14715) `sdk.Coins.Add` now returns an empty set of coins `sdk.Coins{}` if both coins set are empty.
|
||||
* This is a behavior change, as previously `sdk.Coins.Add` would return `nil` in this case.
|
||||
* (types/coin) [#14739](https://github.com/cosmos/cosmos-sdk/pull/14739) Deprecate the method `Coin.IsEqual` in favour of `Coin.Equal`. The difference between the two methods is that the first one results in a panic when denoms are not equal. This panic lead to unexpected behaviour
|
||||
|
||||
@ -1071,11 +1071,14 @@ func GetLatestVersion(db dbm.DB) int64 {
|
||||
func commitStores(version int64, storeMap map[types.StoreKey]types.CommitKVStore, removalMap map[types.StoreKey]bool) *types.CommitInfo {
|
||||
storeInfos := make([]types.StoreInfo, 0, len(storeMap))
|
||||
storeKeys := keysFromStoreKeyMap(storeMap)
|
||||
|
||||
for _, key := range storeKeys {
|
||||
store := storeMap[key]
|
||||
last := store.LastCommitID()
|
||||
|
||||
// If a commit event execution is interrupted, a new iavl store's version will be larger than the rootmulti's metadata, when the block is replayed, we should avoid committing that iavl store again.
|
||||
// If a commit event execution is interrupted, a new iavl store's version
|
||||
// will be larger than the RMS's metadata, when the block is replayed, we
|
||||
// should avoid committing that iavl store again.
|
||||
var commitID types.CommitID
|
||||
if last.Version >= version {
|
||||
last.Version = version
|
||||
@ -1083,7 +1086,9 @@ func commitStores(version int64, storeMap map[types.StoreKey]types.CommitKVStore
|
||||
} else {
|
||||
commitID = store.Commit()
|
||||
}
|
||||
if store.GetStoreType() == types.StoreTypeTransient {
|
||||
|
||||
storeType := store.GetStoreType()
|
||||
if storeType == types.StoreTypeTransient || storeType == types.StoreTypeMemory {
|
||||
continue
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user