Fixed PeerSelection bug
Karl Knutsson (Cardano Foundation (CF)) found a bug in
the cardano-node-8.7.0
version used on the Sancho Net which was fixed in 8.7.1
.
It resulted in a node not being able to reconnect to an upstream peer once it
was demoted by an asynchronous exception. This bug would be caught by Q&A in
a mainet release, but for testnet releases, Q&A test suite is not used. We also
developed a test which covers the bug in the ouroboros-network
, we also identified
a missing PeerSelection
test which we need to port to our simulation network.
See ouroboros-network#4734, ouroboros-network#4665.
Bootstrap Peers
Still under review, ouroboros-network#4555. The consensus team is now
implementing the API we need for bootstrap peers. Once consensus API is implemented we will integrate changes in an experimental branch of
cardano-node
.
Tx-Submission
We started working on a new implementation of the tx-submission application. No
tx-submission
protocol changes are foreseen, but we want to be able to
download each tx
from just one upstream peer and share the results between
different connections. We want to distribute the bandwidth between multiple
clients. We also think that this work will prepare us for the future
Ouroboros-Leios changes, which will contain various versions of tx-submission
like mini-protocols. See ouroboros-network#4701.
Peer Sharing
Various fixes and improvements were implemented:
With these fixes, Karl Knutsson (CF) was able to see that two peers on the mainnet
can discover themselves through peer-sharing
and keep being mutually useful
and thus the connection surviving outbound-governor
churn events.
IOSim
We improved the memory footprint of IOSim
in io-sim#126, see
ouroboros-network#4721 for heap profile improvements on large test cases.
We are working on optimising the memory footprint of IOSimPOR
. We are
reimplementing VectorClocks
using a trie, instead of a map which leads to
significant improvements.
Cardano-Ping
cardano-node-0.2.0.10
was released to CHaP
, ouroboros-network#4746. This
version exports more APIs which turned out to be useful in cardano-node
test
suite, see cardano-node#5536.
Technical Debt
We addressed some small tech-debt issues in ouroboros-network#4722:
- fixed some typos
- using
bracket
instead of onException
in withSnocket
- improved haddocks
- organised
TracePeerSelection
constructors
We improved the memory footprint of some of our tests in ouroboros-network#4721.