mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-02-13 11:25:02 -05:00
init: start indexes sync earlier
The mempool load can take a while, and it is not needed for the indexes' synchronization. Also, having the mempool load function call inside 'blockstorage.cpp' wasn't structurally correct.
This commit is contained in:
parent
79e8247ddb
commit
ed4462cc78
3 changed files with 7 additions and 4 deletions
|
@ -1657,7 +1657,10 @@ bool AppInitMain(NodeContext& node, interfaces::BlockAndHeaderTipInfo* tip_info)
|
||||||
}
|
}
|
||||||
|
|
||||||
chainman.m_load_block = std::thread(&util::TraceThread, "loadblk", [=, &chainman, &args] {
|
chainman.m_load_block = std::thread(&util::TraceThread, "loadblk", [=, &chainman, &args] {
|
||||||
ThreadImport(chainman, vImportFiles, ShouldPersistMempool(args) ? MempoolPath(args) : fs::path{});
|
// Import blocks
|
||||||
|
ThreadImport(chainman, vImportFiles);
|
||||||
|
// Load mempool from disk
|
||||||
|
chainman.ActiveChainstate().LoadMempool(ShouldPersistMempool(args) ? MempoolPath(args) : fs::path{});
|
||||||
});
|
});
|
||||||
|
|
||||||
// Wait for genesis block to be processed
|
// Wait for genesis block to be processed
|
||||||
|
|
|
@ -868,7 +868,7 @@ public:
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
void ThreadImport(ChainstateManager& chainman, std::vector<fs::path> vImportFiles, const fs::path& mempool_path)
|
void ThreadImport(ChainstateManager& chainman, std::vector<fs::path> vImportFiles)
|
||||||
{
|
{
|
||||||
ScheduleBatchPriority();
|
ScheduleBatchPriority();
|
||||||
|
|
||||||
|
@ -939,7 +939,7 @@ void ThreadImport(ChainstateManager& chainman, std::vector<fs::path> vImportFile
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} // End scope of ImportingNow
|
} // End scope of ImportingNow
|
||||||
chainman.ActiveChainstate().LoadMempool(mempool_path);
|
|
||||||
g_indexes_ready_to_sync = true;
|
g_indexes_ready_to_sync = true;
|
||||||
}
|
}
|
||||||
} // namespace node
|
} // namespace node
|
||||||
|
|
|
@ -255,7 +255,7 @@ public:
|
||||||
void CleanupBlockRevFiles() const;
|
void CleanupBlockRevFiles() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
void ThreadImport(ChainstateManager& chainman, std::vector<fs::path> vImportFiles, const fs::path& mempool_path);
|
void ThreadImport(ChainstateManager& chainman, std::vector<fs::path> vImportFiles);
|
||||||
} // namespace node
|
} // namespace node
|
||||||
|
|
||||||
#endif // BITCOIN_NODE_BLOCKSTORAGE_H
|
#endif // BITCOIN_NODE_BLOCKSTORAGE_H
|
||||||
|
|
Loading…
Add table
Reference in a new issue