Optimizing IBC Transaction Searches: Implementing a Unique Event Attribute for Enhanced Relayer Performance #7285
Labels
04-channel
needs discussion
Issues that need discussion before they can be worked on
type: improvement
User-facing improvements of an existing feature
Summary
Adding a new event attribute for packet send, receive, acknowledgment, and timeout events can address performance issues in relayers.
Problem Definition
As described here, there are many cases where we need to search the IBC transaction body.
CometBFT's current
txSearch
implementation attempts to load all transactions that match each condition and then find their intersection. This approach causes millions of transactions to be loaded into memory, forcing CometBFT to iterate through these millions of transactions to find the intersection.Use cases
Currently, all stateless IBC Relayers use transaction or block searches to retrieve the transaction body from the event in order to clear stalled packets.
Proposal
We propose introducing a new event attribute as follows:
Then we can search IBC tx body with unique tx search key.
For Admin Use
The text was updated successfully, but these errors were encountered: