This repository has been archived by the owner on Nov 6, 2020. It is now read-only.
[AuRa] What is correct behaviour of Validating Contract with emptyStepsTransition enabled? #9546
Labels
Milestone
Before filing a new issue, please provide the following information.
Hello, Parity Team!
Recently I've reported the issue about wrong logic on reporting skipped steps when emptyStepsTransition is enabled (see #9325). And @andresilva fixed it in #9435, many thanks to him!
But now I've faced another problem.
In #9325 we had really generic case, when there is pre-defined list of validators and they have no any ability to repot each other besides reporting about step gap.
But as I said in out production network we have a contract, with
reportBenign
ability (cite):And now, after the fix, I can't make my validators to report each other, even when the skip their steps! Is it even possible?
Our engine is Authority Round, of course, with
immediateTransitions
andmaximumEmptySteps
(set as 3, but any value will show same behaviour, even 0) and reporting (non-safe) validator contract, withreportBenign
programmed to remove validators from a list of validators.I am adding 3 random addresses as validators, they are non-existent nodes, and they never connect of seal anything.
As you can see in logs below, there is no any reporting (as per engine) and transitioning to new validator set (as per contract logic) here. And of course block generation is really slow, on every step we are waiting for non-existent validator and we receive no empty (or real) seals.
My wild guess is that we need to add a
report_skipped
afterhttps://github.com/paritytech/parity-ethereum/blob/98f6d6cae51528b717d75abae91411a0ab5c1fa3/ethcore/src/engines/authority_round/mod.rs#L1007
But I pretty much sure, that it's wrong way to solve(?) it.
Thanks in advance!
And here is my logs:
The text was updated successfully, but these errors were encountered: