RE: WITNESS WEEKLY @ 10 September 2022
Most of the witnesses from #55 and below are 'former' witnesses that are running old witness versions (0.23.0 or 0.22.1) and have now moved to another blockchain.
Very right! But unfortunately, some of these witnesses still appear in various lists.
I have noticed that, for the sake of simplicity, only the signing key is checked. If this is the null key, the witness is marked as inactive in the lists. But the null key is mainly intended for temporary manual deactivation of the witness node. In the case that a witness has not produced any blocks for some time, this witness would also have to be deactivated. This is however not reflected in the various lists (e.g. gtg (#57), scissor-sisters (#33)).
In my opinion, unfortunately, only the page https://steemitwallet.com/~witnesses still contains an up-to-date and correct listing of active witnesses.
update
The steemitwallet additionally checks whether a block has been produced in the last 7 days. The witness is shown deactivated if the null key is deposited or no block has been produced in the last 7 days:
const noBlock7days = (head_block - lastBlock) * 3 > 604800;
const isDisabled =
signingKey == DISABLED_SIGNING_KEY || noBlock7days;
Code aus steemwallet
update 2
I wondered why witnesses who have obviously not generated blocks for a long time are no longer automatically shut down.
After a bit of research, I found the answer:
The automatic deactivation described in the Steem whitepaper and introduced with Hardfork 14 was removed again with Hardfork 20. Here is the detailed conversation about it: https://github.com/steemit/steem/pull/2835
Here my appeal is once again very appropriate to check the witness votes regularly!
Extremely useful to know, thank you.
Yes, unfortunately, there is a lot wrong with the situation.
The display on steemwallet.com is more correct, but it is only a display. The witness nodes are still active on the system and reduce the performance of the blockchain. If I then see that from number 50 onwards there are almost only inactive nodes, the reduction in performance is not just minimal.
Therefore, it must unfortunately be stated that all the lists you mentioned in the article are not useful and are even misleading.
As an active witness/developer, I should be very interested in changing this. After all, all votes cast for inactive witnesses are lost!
How could this problem be fixed?
Can the witnesses sort it out?
If automatic deactivation of witness nodes is to be reintroduced, a hardfork is necessary.
However, the witnesses (and anyone else presenting a witness list) could take care in the meantime to present the inactive witnesses as inactive as well.
Possible (drastic) measures such as automatically deleting votes for inactive witnesses must be discussed elsewhere and with more participation :-)
Hopefully the witnesses will step forward to make the needed changes.