Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
VoteListener doesn't retry votes even if they don't land in a bank #6675
@aeyakovenko Can you help propose the right solution to this?
Carl describes the problem pretty well.
The simple fix is to do the following:
The problem with this is that we should stop retrying the vote if it made it into a bank successfully. Otherwise we just end up with a bunch of duplicate signature errors (nbd?) until a new vote comes through or the validator that submitted it goes offline.
We could also cache these in banking_stage (ick) or track the results (since votes are usually all on the same thread) and keep retrying until it succeeds. But then there's no way to clean up the vote if it's genuinely bad.
Also I should add that we don't know just how much of a problem the current behavior is. But it doesn't seem correct.
So we don't know if this is an issue. It's just how the code is behaving right now.