// NOTE: don't reimport since the queue should guarantee everything in the right order.
// NOTE: don't reimport since the queue should guarantee everything in the right order.
// Can't continue - chain bad.
// Can't continue - chain bad.
badBlocks.push_back(block.verified.info.hash());
badBlocks.push_back(block.verified.info.hash());
}
}
catch(dev::eth::FutureTime)
catch(dev::eth::FutureTime)
{
{
cwarn<<"ODD: Import queue contains a block with future time."<<LogTag::Error<<boost::current_exception_diagnostic_information();
cwarn<<"ODD: Import queue contains a block with future time.";// << LogTag::Error << boost::current_exception_diagnostic_information();
// NOTE: don't reimport since the queue should guarantee everything in the past.
// NOTE: don't reimport since the queue should guarantee everything in the past.
// Can't continue - chain bad.
// Can't continue - chain bad.
badBlocks.push_back(block.verified.info.hash());
badBlocks.push_back(block.verified.info.hash());
}
}
catch(Exception&ex)
catch(Exception&ex)
{
{
cnote<<"Exception while importing block. Someone (Jeff? That you?) seems to be giving us dodgy blocks!"<<LogTag::Error<<diagnostic_information(ex);
// cnote << "Exception while importing block. Someone (Jeff? That you?) seems to be giving us dodgy blocks!";// << LogTag::Error << diagnostic_information(ex);
if(m_onBad)
if(m_onBad)
m_onBad(ex);
m_onBad(ex);
// NOTE: don't reimport since the queue should guarantee everything in the right order.
// NOTE: don't reimport since the queue should guarantee everything in the right order.