I am actively testing on the testnet before the next hardfork 25 and one of the tools that I was missing is the Witnesses Block Production Schedule.
What is the Witnesses Block Production Schedule?
On the Hive blockchain, blocks are produced by witnesses that are elected by the community. This system is called DPOS. The more votes a witness gets, the more often it will be scheduled to produce (sign) a block.
Having a tool that allows you to know which witness will produce a block, and when, is essential. Indeed, as a witness, if you must deactivate your node, or switch to your backup node, it is better to do so at a time when you are not supposed to produce a block.
As a user, it can be mesmerizing to look at how the blockchain works and is built block by block.
Witnesses Schedule Description
The tool shows the production of blocks as it happens. Here's what it looks like:
There are 2 lists:
1. Witnesses Schedule
This box shows the current round's schedule.
As you can see, every round consists of 21 block producers. A block is produced every 3 seconds. This schedule includes the top 20 witnesses and a backup witness.
Every row has the rank of the witness, what kind of witness they are, the name of the witness, and the block number of the block that the witness produced as it happens.
When a new block is added to the blockchain, the corresponding line is highlighted in green. Past block producers are grayed out.
At the bottom is the Next Block Shuffle Num. This is the number of blocks left before the current list will be shuffled.
2. Backup Witnesses Schedule
This is a list of the next active witnesses in the witness ranking. Disabled witnesses are filtered out and not displayed.
The closer a witness is to the top of the list, the sooner they will be scheduled for the next round. When a new block production round starts, you will see that the backup witness is picked from the top of this list.
Rewritten and made available for testnet too
In wanting to port this tool for use with the testnet, I realized how messy the code was.
So I undertook to rewrite it completely so that it can work with both networks (the mainnet and the testnet) and, above all, that it is more efficient and less resource-intensive. The result is much cleaner and more versatile code.
How can I access this tool?
To access the Witnesses Block Production Schedule page, go to
If you want to see witnesses producing on the testnet, go to:
Enjoy monitoring the work of your favorite witnesses working in real-time.
Thanks for reading.