cosmos / ibc-go

Inter-Blockchain Communication Protocol (IBC) implementation in Golang.

Home Page:https://ibc.cosmos.network/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Result acks in token forwarding should be lightweight

damiannolan opened this issue · comments

Summary

Currently a string is used and converted to byte slice for token forwarding: []byte("forwarded packet succeeded")
This is a total of 26 bytes.

I propose maintaining parity with regular ibc transfers and storing a single byte for the result ack - since the result ack does not need to communicate any data but rather signal success.

As it exists today, osmosis db state contains something like 2.x GB of ack data on mainnet. This would be potentially upwards of 50GB if we used a similar size byte string in regular transfers.
This may seem like a small issue but at scale its impact is massive.

see thread ref: #6574 (comment)


For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged/assigned