From a8b5d20f4f171828b2bd70ab2405c42b1e452e5b Mon Sep 17 00:00:00 2001 From: Sjors Provoost Date: Sun, 11 Feb 2018 12:14:08 +0100 Subject: [PATCH] Reset pblocktree before deleting LevelDB file --- src/init.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/init.cpp b/src/init.cpp index 84398d978..4ff875f9a 100644 --- a/src/init.cpp +++ b/src/init.cpp @@ -1425,6 +1425,9 @@ bool AppInitMain() pcoinsTip.reset(); pcoinsdbview.reset(); pcoinscatcher.reset(); + // new CBlockTreeDB tries to delete the existing file, which + // fails if it's still open from the previous loop. Close it first: + pblocktree.reset(); pblocktree.reset(new CBlockTreeDB(nBlockTreeDBCache, false, fReset)); if (fReset) {