lambdaclass / lambda_ethereum_consensus

Elixir implementation of an Ethereum consensus client, which offers high reliance & fault tolerance
Apache License 2.0
99 stars 33 forks source link

Missing attestations and sync committee messages due to late subnet subscription #1300

Open rodrigo-o opened 2 weeks ago

rodrigo-o commented 2 weeks ago

Previously part of #1279, I split the bug we were having from the leave and join that was made previously on duties calculations.

The bug is now this issue and it goes as follows:

Subscription to aggregation subnets happens just after attestation or sync committee broadcast, i.e. at the second third of a slot. There is also another place that could make produce this early and that's at the processing of a new block root. because of this, some sync committee messages and attestation were not part of aggregation, to solve this bug we need to subscribe as early as possible to the subnets that we need to be aware of.

rodrigo-o commented 1 week ago

Unfortunately, this still happens on specific setups were we are most of the validators in the network. This was solved on normal kurtosis runs (which had the particularity of having more than one aggregator per sync committee and ours were discarded) but we are still missing messages at the time of aggregation and its clear on cases were we are the only aggregators. I open this as a P2 given that this isn't a priority.