Bitcoin Core 28.0.0
P2P Digital Currency
Loading...
Searching...
No Matches
index.cpp
Go to the documentation of this file.
1// Copyright (c) 2020-2022 The Bitcoin Core developers
2// Distributed under the MIT software license, see the accompanying
3// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5#include <test/util/index.h>
6
7#include <index/base.h>
8#include <util/check.h>
10#include <util/time.h>
11
12void IndexWaitSynced(const BaseIndex& index, const util::SignalInterrupt& interrupt)
13{
14 while (!index.BlockUntilSyncedToCurrentChain()) {
15 // Assert shutdown was not requested to abort the test, instead of looping forever, in case
16 // there was an unexpected error in the index that caused it to stop syncing and request a shutdown.
17 Assert(!interrupt);
18
20 }
21 assert(index.GetSummary().synced);
22}
#define Assert(val)
Identity function.
Definition check.h:77
Base class for indices of blockchain data.
Definition base.h:41
IndexSummary GetSummary() const
Get a summary of the index and its state.
Definition base.cpp:420
Helper class that manages an interrupt flag, and allows a thread or signal to interrupt another threa...
void IndexWaitSynced(const BaseIndex &index, const util::SignalInterrupt &interrupt)
Block until the index is synced to the current chain.
Definition index.cpp:12
bool synced
Definition base.h:25
void UninterruptibleSleep(const std::chrono::microseconds &n)
Definition time.cpp:17
assert(!tx.IsCoinBase())