Skip to content

Commit

Permalink
VSCPackets should have timeout on provider (cosmos#422)
Browse files Browse the repository at this point in the history
* add provider-based timeout params

* add InitTimeoutTimestamp to store

* add init timeout logic

* params boilerplate code & making tests pass

* add TestInitTimeout* e2e tests

* improve e2e tests; add test case to TestUndelegationDuringInit

* remove VSC timeout

* remove VSC timeout param

* add testcase to TestValidateParams

* handle StopConsumerChain error & gofmt

* add VSC timeout period param

* Fix init timeout conflicts (cosmos#409)

* Importable e2e tests (cosmos#401)

* fixes

* add comment to GetInitTimeoutTimestamp

* add VscTimeoutTimestamp key and tests

* change VSCTimeoutTimestamp key

* fix e2e tests

* add e2e test

* remove useless code

* improve comment

* copy -> append in provider key definitions (cosmos#426)

Update keys.go

* Update tests/e2e/unbonding.go

Co-authored-by: Shawn Marshall-Spitzbart <[email protected]>

* Update x/ccv/provider/keeper/keeper_test.go

Co-authored-by: Shawn Marshall-Spitzbart <[email protected]>

* update comment

* replace removedChainIds w/ chainIdsToRemove

* changing keys from (chainID, ts) to (chainID, vscID)

* make UnbondingOpIndexKey consistent with VscSendingTimestampKey

Co-authored-by: Shawn Marshall-Spitzbart <[email protected]>
  • Loading branch information
mpoke and shaspitz authored Nov 4, 2022
1 parent 46d5c05 commit b084048
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions proto/interchain_security/ccv/provider/v1/provider.proto
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,12 @@ message Params {
// The channel initialization (IBC channel opening handshake) will timeout after this duration
google.protobuf.Duration init_timeout_period = 4
[(gogoproto.nullable) = false, (gogoproto.stdduration) = true];
// The VSC packets sent by the provider will timeout after this duration.
// Note that unlike ccv_timeout_period which is an IBC param,
// the vsc_timeout_period is a provider-side param that enables the provider
// to timeout VSC packets even when a consumer chain is not live.
google.protobuf.Duration vsc_timeout_period = 5
[(gogoproto.nullable) = false, (gogoproto.stdduration) = true];
}

message HandshakeMetadata {
Expand Down

0 comments on commit b084048

Please sign in to comment.