mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-01-18 22:35:39 +01:00
Remove -printblock, -printblocktree, and -printblockindex
This commit is contained in:
69
src/main.cpp
69
src/main.cpp
@@ -3113,75 +3113,6 @@ bool InitBlockIndex() {
|
||||
|
||||
|
||||
|
||||
void PrintBlockTree()
|
||||
{
|
||||
AssertLockHeld(cs_main);
|
||||
// pre-compute tree structure
|
||||
map<CBlockIndex*, vector<CBlockIndex*> > mapNext;
|
||||
for (BlockMap::iterator mi = mapBlockIndex.begin(); mi != mapBlockIndex.end(); ++mi)
|
||||
{
|
||||
CBlockIndex* pindex = (*mi).second;
|
||||
mapNext[pindex->pprev].push_back(pindex);
|
||||
// test
|
||||
//while (rand() % 3 == 0)
|
||||
// mapNext[pindex->pprev].push_back(pindex);
|
||||
}
|
||||
|
||||
vector<pair<int, CBlockIndex*> > vStack;
|
||||
vStack.push_back(make_pair(0, chainActive.Genesis()));
|
||||
|
||||
int nPrevCol = 0;
|
||||
while (!vStack.empty())
|
||||
{
|
||||
int nCol = vStack.back().first;
|
||||
CBlockIndex* pindex = vStack.back().second;
|
||||
vStack.pop_back();
|
||||
|
||||
// print split or gap
|
||||
if (nCol > nPrevCol)
|
||||
{
|
||||
for (int i = 0; i < nCol-1; i++)
|
||||
LogPrintf("| ");
|
||||
LogPrintf("|\\\n");
|
||||
}
|
||||
else if (nCol < nPrevCol)
|
||||
{
|
||||
for (int i = 0; i < nCol; i++)
|
||||
LogPrintf("| ");
|
||||
LogPrintf("|\n");
|
||||
}
|
||||
nPrevCol = nCol;
|
||||
|
||||
// print columns
|
||||
for (int i = 0; i < nCol; i++)
|
||||
LogPrintf("| ");
|
||||
|
||||
// print item
|
||||
CBlock block;
|
||||
ReadBlockFromDisk(block, pindex);
|
||||
LogPrintf("%d (blk%05u.dat:0x%x) %s tx %u\n",
|
||||
pindex->nHeight,
|
||||
pindex->GetBlockPos().nFile, pindex->GetBlockPos().nPos,
|
||||
DateTimeStrFormat("%Y-%m-%d %H:%M:%S", block.GetBlockTime()),
|
||||
block.vtx.size());
|
||||
|
||||
// put the main time-chain first
|
||||
vector<CBlockIndex*>& vNext = mapNext[pindex];
|
||||
for (unsigned int i = 0; i < vNext.size(); i++)
|
||||
{
|
||||
if (chainActive.Next(vNext[i]))
|
||||
{
|
||||
swap(vNext[0], vNext[i]);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// iterate children
|
||||
for (unsigned int i = 0; i < vNext.size(); i++)
|
||||
vStack.push_back(make_pair(nCol+i, vNext[i]));
|
||||
}
|
||||
}
|
||||
|
||||
bool LoadExternalBlockFile(FILE* fileIn, CDiskBlockPos *dbp)
|
||||
{
|
||||
// Map of disk positions for blocks with unknown parent (only used for reindex)
|
||||
|
||||
Reference in New Issue
Block a user