Witness Block Error due to Block Too Old
Most blocks missing are due to "attempting to push a block that is too old"
This is thrown at: https://github.com/steemit/steem/blob/ff9b801615ba8c347a0c3f534ad06adc551b58e5/libraries/chain/fork_database.cpp#L57
void fork_database::_push_block(const item_ptr& item)
{
if( _head ) // make sure the block is within the range that we are caching
{
FC_ASSERT( item->num > std::max<int64_t>( 0, int64_t(_head->num) - (_max_size) ),
"attempting to push a block that is too old",
("item->num",item->num)("head",_head->num)("max_size",_max_size));
}
if( _head && item->previous_id() != block_id_type() )
{
auto& index = _index.get<block_id>();
auto itr = index.find(item->previous_id());
STEEM_ASSERT(itr != index.end(), unlinkable_block_exception, "block does not link to known chain");
FC_ASSERT(!(*itr)->invalid);
item->prev = *itr;
}
_index.insert(item);
if( !_head || item->num > _head->num ) _head = item;
}
That is caused by: when the witness server is to slow to generate a block within 3 seconds - even it managed to generate a block shortly afterwards, it is too late (the block is missed)
How to avoid this? Make sure a good network connection (low latency) is one first thing to check.
Also, make sure the time/clock (NTP) on the server is accurately synchronized.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Thank you for reading ^^^^^^^^^^^^^^^
Follow me for topics of Algorithms, Blockchain and Cloud.
I am @justyy - a Steem Witness
https://steemyy.com
My contributions
- Steem Blockchain Tools
- Computing & Technology
- Download Youtube Video
- Find Cheap & Bargin VPS: VPS Database
- Online Software and Tools
- Online File/Video Merger
Delegation Service
Support me
If you like my work, please:
- Buy Me a Coffee, Thanks!
- Become my Sponsor, Thanks!
- Voting for me:
https://steemit.com/~witnesses type in justyy and click VOTE
- Delegate SP: https://steemyy.com/sp-delegate-form/?delegatee=justyy
- Vote @justyy as Witness: https://steemyy.com/witness-voting/?witness=justyy&action=approve
- Set @justyy as Proxy: https://steemyy.com/witness-voting/?witness=justyy&action=proxy
Alternatively, you can vote witness or set proxy here: https://steemit.com/~witnesses
-------------</block_id></int64_t>
Hi @justyy. In the image that you have attached, the witness name in the missed block is aldowshuxley. Does that mean that it was that witness who failed to push the block in time?