Closed
Milestone
Aug 1, 2021–Sep 30, 2021
Harder mempool
At the intersection of all we want to achieve in the next future comes the mempool.
- It is a critical component that mustn't crash.
We have to ensure it recovers from all the garbage it can receive in entry.
This includes shielding the mempool and add more tests in this regard.
- For now consensus related messages does not have a particular role and therefore are lost in the middle of regular transactions while they only have a lifespan of 1 block. Maybe it needs to change.
- !3180 (closed) -> moved to future milestone %Better mempool
- In order to cope with expected throughput, we'll need to not do a full evaluation of operation to propagate them (#1444 (closed))
- We need to be able to evaluate the performance of our implementation, to specify it and compare it with state of the art to design and implement further improvements in future projects.
- #1556
- #1555
- #1388 (closed)
- #1389 (closed)
- !3255 (closed)
- Miscellaneous improvements to existing or new features as well as to UX will take place in this project. In particular it includes being able to remove/ban specific operations from a mempool (locally, not over the whole network).
A large part of this project is linked to the Tenderbake project as parts of the improved mempool (in particular regarding performance) are necessary to ensure good performance and reliability with Tenderbake.
This project is also a first step towards pipelining.
Other deliverables
In addition to the MRs tagged with this milestone, we have produced the following:
- A deep dive into the Octez prevalidator, a blog post explaining how operation classification works in the prevalidator, after the work done by this crew, with an emphasis on the propagation of endorsements.