From 7ea319fd2544adac8fc07724fda1e71a06bde4c5 Mon Sep 17 00:00:00 2001 From: UdjinM6 Date: Wed, 7 Aug 2019 12:55:07 +0300 Subject: [PATCH] Bail out properly on Evo DB consistency check failures in ConnectBlock/DisconnectBlock (#3044) --- src/validation.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/validation.cpp b/src/validation.cpp index 18baae56c..cf8a3211a 100644 --- a/src/validation.cpp +++ b/src/validation.cpp @@ -1612,6 +1612,7 @@ static DisconnectResult DisconnectBlock(const CBlock& block, CValidationState& s if (fDIP0003Active && !fHasBestBlock) { // Nodes that upgraded after DIP3 activation will have to reindex to ensure evodb consistency AbortNode("Found EvoDB inconsistency, you must reindex to continue"); + return DISCONNECT_FAILED; } bool fClean = true; @@ -1911,7 +1912,7 @@ static bool ConnectBlock(const CBlock& block, CValidationState& state, CBlockInd if (fDIP0003Active && !fHasBestBlock) { // Nodes that upgraded after DIP3 activation will have to reindex to ensure evodb consistency - AbortNode("Found EvoDB inconsistency, you must reindex to continue"); + return AbortNode(state, "Found EvoDB inconsistency, you must reindex to continue"); } }