You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The node poller, polls getchaintips and handles this info. However when a node's response to getchaintips includes a block where the status is invalid, it crashes with error about not being able to find the block on disk.
I'd have to look at the code close, but perhaps we should check first if the node actually has this block. Or indeed just catch the error if it doesn't. You'd have to wrap the call in something like:
begingetblock...
catchBitcoinUtil::RPC::BlockNotFoundError# Node may not have the full invalid block if it only checked the header.end
The node poller, polls getchaintips and handles this info. However when a node's response to
getchaintips
includes a block where the status is invalid, it crashes with error about not being able to find the block on disk.Example response of
getchaintips
:Crash stack trace:
From what I understand this should be handled here, but initially check should be made if block is valid, and then get block should be run, if getblock responds with error, this should be handled correctly. https://github.com/BitMEXResearch/forkmonitor/blob/ad8dbf6ac5a5f2a67474de3e7d1503bc8b1d1239/app/models/chaintip.rb#L111
The text was updated successfully, but these errors were encountered: