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

Support for disabling tx confirmation mechanism #1380

Closed
6 tasks done
adizere opened this issue Sep 22, 2021 · 0 comments · Fixed by #1378
Closed
6 tasks done

Support for disabling tx confirmation mechanism #1380

adizere opened this issue Sep 22, 2021 · 0 comments · Fixed by #1378
Assignees
Labels
I: logic Internal: related to the relaying logic O: new-feature Objective: cause to add a new feature or support
Milestone

Comments

@adizere
Copy link
Member

adizere commented Sep 22, 2021

Crate

ibc-relayer

Problem Definition

The tx confirmation feature has no specific use beyond its function to retry submitting certain transactions that have not been confirmed after a certain predefined timeout. An additional nice benefit of this feature is that a relayer operator can traverse the logs and obtain more thorough information about when certain transaction hashes have been confirmed.

https://github.com/informalsystems/ibc-rs/blob/33303e17e4d2ec69c15c41dd989192adfcf3311f/relayer/src/link/relay_path.rs#L1238

If the clear_pending_packets mechanism is enabled, then the retrying as part of transaction confirmation is actually redundant and may be creating unnecessary load on the querying interface of the full node that Hermes is using. Since the full node's (g)RPC APIs are fragile and pose a performance bottleneck, we'd like to add support for disabling the tx confirmation feature.

Additionally, from production operation we noticed that the usefulness of this feature is altogether not clear, since it may sometimes take many hours (!!) before Hermes finds confirmations, indicating an overwhelmed full node that is unable to respond to queries. Following is a log line showing that Hermes found a confirmation after ~6K seconds (1h40 mins).

Sep 19 10:55:03 hermes hermes-osmosis[2426]: Sep 19 14:55:03.973 DEBUG [osmosis-1:transfer/channel-0 -> cosmoshub-4] confirmed after 6026.068368672s: TxHashes: count=1; 4422BAEF7D35A4DCEB4148B269AB0027C1F4B93180D3F3FAA68C55A63885BD5B

Proposal & Acceptance Criteria

  • add a config.toml option to permit disabling of the tx confirmation feature

For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate milestone (priority) applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@adizere adizere added O: new-feature Objective: cause to add a new feature or support I: logic Internal: related to the relaying logic labels Sep 22, 2021
@adizere adizere added this to the 09.2021 milestone Sep 22, 2021
@adizere adizere self-assigned this Sep 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I: logic Internal: related to the relaying logic O: new-feature Objective: cause to add a new feature or support
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant