You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In ibc-go all events are emitted on error Ack as well. This is a different behaviour than we have with other contract calls.
There are 2 cases to consider:
the contract returns an error Ack and events
the contract returns a success Ack but any of the sub-messages returned fails
As a simple solution, we can drop all events on error Ack in wasm/ibc.go
Or we always accept contract events but drop sub-message events on error in keeper/relay.go.
The text was updated successfully, but these errors were encountered:
The json returned for contract errors on IBC package receive is redacted:
https://github.com/cosmos/ibc-go/pull/1565/files#diff-c84c5415c1edd86b6332b4c8e95c325d4551550993fafc997bf9453a81f1b192R31
Update:
With the work in #1220 and #1289 there should not be any need for emitting the original error message as event. The contract's error string is included in the error Ack.
But this is not the case for sub-messages that fail. See https://github.com/cosmos/ibc-go/blob/v7.0.0/modules/apps/transfer/ibc_module.go#L202 for an example event
In ibc-go all events are emitted on error Ack as well. This is a different behaviour than we have with other contract calls.
There are 2 cases to consider:
As a simple solution, we can drop all events on error Ack in wasm/ibc.go
Or we always accept contract events but drop sub-message events on error in keeper/relay.go.
The text was updated successfully, but these errors were encountered: