The Mempool Abstraction in CometBFT
Team work: Pierre Sutra presented "The Mempool Abstraction in CometBFT" at 1D19 the 15/9/2023 at 11h00.
CometBFT is the replication protocol of Cosmos, one of the leading ecosystems for blockchain. This protocol is built atop two key components: consensus and mempool. The mempool spreads client transactions across the system, while consensus defines an order in which they are added to the blockchain. In this talk, we present an effort to comprehend the mempool abstraction in CometBFT. First, we provide a general overview of CometBFT and the role of the mempool component in it. We then review the changes made to the mempool over the years--from Tindermint v0.01 to CometBFT v0.39. We propose a set of properties for this component, as well as a matching formalization in the Quint specification language. Further, we discuss how it is implemented in CometBFT, and compare this implementation against other prominent approaches (e.g., in Ethereum and BFT consensus). We close by proposing solutions to some of the difficulties facing the current code base.
This talk relates part of my experience at Informal Systems during the summer 2023.