Skip to content

Commit

Permalink
Merge #9408: Allow shutdown during LoadMempool, dump only when necessary
Browse files Browse the repository at this point in the history
325e400 [Qt] Do proper shutdown (Jonas Schnelli)
9479f8d Allow shutdown during LoadMempool, dump only when necessary (Jonas Schnelli)
  • Loading branch information
sipa committed Jan 6, 2017
2 parents a55716a + 325e400 commit 46b249e
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 1 deletion.
5 changes: 4 additions & 1 deletion src/init.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -130,6 +130,7 @@ static const char* FEE_ESTIMATES_FILENAME="fee_estimates.dat";
//

std::atomic<bool> fRequestShutdown(false);
std::atomic<bool> fDumpMempoolLater(false);

void StartShutdown()
{
Expand Down Expand Up @@ -211,7 +212,8 @@ void Shutdown()

StopTorControl();
UnregisterNodeSignals(GetNodeSignals());
DumpMempool();
if (fDumpMempoolLater)
DumpMempool();

if (fFeeEstimatesInitialized)
{
Expand Down Expand Up @@ -669,6 +671,7 @@ void ThreadImport(std::vector<boost::filesystem::path> vImportFiles)
}
} // End scope of CImportingNow
LoadMempool();
fDumpMempoolLater = !fRequestShutdown;
}

/** Sanity checks
Expand Down
2 changes: 2 additions & 0 deletions src/qt/bitcoin.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -444,6 +444,8 @@ void BitcoinApplication::requestShutdown()
delete clientModel;
clientModel = 0;

StartShutdown();

// Request shutdown from core thread
Q_EMIT requestedShutdown();
}
Expand Down
2 changes: 2 additions & 0 deletions src/validation.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -4099,6 +4099,8 @@ bool LoadMempool(void)
} else {
++skipped;
}
if (ShutdownRequested())
return false;
}
std::map<uint256, CAmount> mapDeltas;
file >> mapDeltas;
Expand Down

0 comments on commit 46b249e

Please sign in to comment.