Page MenuHomePhabricator

Remove mempool txs in reverse topological order
ClosedPublic

Authored by tobias_ruck on Jan 13 2024, 13:23.

Details

Reviewers
Fabien
Group Reviewers
Restricted Project
Commits
rABC6a402956ae13: Remove mempool txs in reverse topological order
Summary

If a mempool transaction has children, and this transaction gets removed, the node doesn't remove the mempool children in reverse topological order.

Fix this and check Chronik handles the validation queue as expected.

Test Plan

./test/functional/test_runner.py chronik_mempool_conflicts

Diff Detail

Repository
rABC Bitcoin ABC
Branch
chronik-mempool-conflict
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 26330
Build 52230: Build Diffbuild-clang · build-diff · build-without-wallet · build-clang-tidy · build-debug
Build 52229: arc lint + arc unit

Event Timeline

The build failed due to an unexpected infrastructure outage. The administrators have been notified to investigate. Sorry for the inconvenience.
src/txmempool.h
80 ↗(On Diff #44168)

This is not needed, but OK to keep it as it will likely be useful for later refactors

test/functional/chronik_mempool_conflicts.py
2 ↗(On Diff #44168)

2024 ?

38–39 ↗(On Diff #44168)

You don't need the mocktime, you can use the default from create_block instead

101 ↗(On Diff #44168)
106 ↗(On Diff #44168)

2024, remove timeout and mocktime

remove some unused CTxOut's; ensured it doesn't change the outcome of the test either way

tobias_ruck retitled this revision from [Chronik] Add test for Chronik gracefully handling mempool conflicts to Remove mempool txs in reverse topological order.
tobias_ruck edited the summary of this revision. (Show Details)
This revision is now accepted and ready to land.Jan 15 2024, 13:14

Tail of the build log:

-- Installing: /results/artifacts/include/secp256k1.h
-- Installing: /results/artifacts/include/secp256k1_preallocated.h
-- Installing: /results/artifacts/include/secp256k1_recovery.h
-- Installing: /results/artifacts/include/secp256k1_schnorr.h
[365/543] Linking C executable src/secp256k1/internal-bench
[366/543] Building CXX object src/CMakeFiles/server.dir/rpc/net.cpp.o
[367/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[368/543] Building CXX object src/CMakeFiles/server.dir/txdb.cpp.o
[369/543] Building CXX object src/CMakeFiles/server.dir/rpc/mining.cpp.o
[370/543] Building CXX object src/CMakeFiles/server.dir/txorphanage.cpp.o
[371/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[372/543] Building CXX object src/CMakeFiles/server.dir/rpc/avalanche.cpp.o
[373/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockindex.cpp.o
[374/543] Building CXX object src/CMakeFiles/server.dir/torcontrol.cpp.o
[375/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[376/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[377/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[378/543] Building CXX object src/CMakeFiles/server.dir/wallet/init.cpp.o
[379/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[380/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[381/543] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[382/543] Linking CXX executable src/bitcoin-tx
[383/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[384/543] Building CXX object src/CMakeFiles/server.dir/rpc/rawtransaction.cpp.o
[385/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[386/543] Building CXX object src/CMakeFiles/server.dir/rpc/blockchain.cpp.o
[387/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[388/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[389/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[390/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[391/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[392/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[393/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[394/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[395/543] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
[396/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[397/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[398/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[399/543] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[400/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[401/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[402/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[403/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[404/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[405/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[406/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[407/543] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
[408/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[409/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[410/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[411/543] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[412/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[413/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[414/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[415/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[416/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[417/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[418/543] Linking CXX static library src/wallet/libwallet.a
ninja: build stopped: cannot make progress due to previous errors.
Build build-clang failed with exit code 1

Tail of the build log:

FAILED: src/CMakeFiles/server.dir/txmempool.cpp.o 
/usr/bin/ccache /usr/bin/c++ -DABORT_ON_FAILED_ASSUME -DBOOST_ALL_NO_LIB -DBUILD_BITCOIN_INTERNAL -DDEBUG -DDEBUG_LOCKORDER -DENABLE_AVX2 -DENABLE_SHANI -DENABLE_SSE41 -DHAVE_BUILD_INFO -DHAVE_CONFIG_H -DHAVE_CONSENSUS_LIB -DLEVELDB_ATOMIC_PRESENT -DLEVELDB_PLATFORM_POSIX -DOS_LINUX -I../../src/leveldb/helpers/memenv -I../../src/. -Isrc -I../../src/univalue/include -Isrc/crypto/.. -I../../src/secp256k1/include -I../../src/leveldb/include -isystem /usr/include/jemalloc -isystem /usr/include/miniupnpc -Werror -O0 -fPIC -fvisibility=hidden -g3 -ftrapv -fstack-reuse=none -fstack-protector-all -Wstack-protector -fcf-protection=full -fstack-clash-protection -U_FORTIFY_SOURCE -Wall -Wextra -Wformat -Wvla -Wcast-align -Wunused-parameter -Wmissing-braces -Wredundant-decls -Wsign-compare -Wduplicated-branches -Wduplicated-cond -Wlogical-op -Wformat-security -Wredundant-move -Woverloaded-virtual -Wno-unused-parameter -Wno-implicit-fallthrough -Wno-psabi -pthread -std=gnu++17 -MD -MT src/CMakeFiles/server.dir/txmempool.cpp.o -MF src/CMakeFiles/server.dir/txmempool.cpp.o.d -o src/CMakeFiles/server.dir/txmempool.cpp.o -c ../../src/txmempool.cpp
In file included from ../../src/txmempool.cpp:6:
../../src/./txmempool.h: In instantiation of ‘bool CompareIteratorByRevEntryId::operator()(const T&, const T&) const [with T = boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>]’:
/usr/include/c++/9/bits/stl_tree.h:2198:8:   required from ‘std::pair<std::_Rb_tree_node_base*, std::_Rb_tree_node_base*> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_get_insert_hint_unique_pos(std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator, const key_type&) [with _Key = boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>; _Val = boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>; _KeyOfValue = std::_Identity<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >; _Compare = CompareIteratorByRevEntryId; _Alloc = std::allocator<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::key_type = boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>]’
/usr/include/c++/9/bits/stl_tree.h:2258:4:   required from ‘std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_insert_unique_(std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator, _Arg&&, _NodeGen&) [with _Arg = const boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>&; _NodeGen = std::_Rb_tree<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>, boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>, std::_Identity<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >, CompareIteratorByRevEntryId, std::allocator<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> > >::_Alloc_node; _Key = boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>; _Val = boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>; _KeyOfValue = std::_Identity<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >; _Compare = CompareIteratorByRevEntryId; _Alloc = std::allocator<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator = std::_Rb_tree_iterator<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >; std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::const_iterator = std::_Rb_tree_const_iterator<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >]’
/usr/include/c++/9/bits/stl_tree.h:1113:6:   required from ‘std::__enable_if_t<std::is_same<_Val, typename std::iterator_traits<_InputIterator>::value_type>::value> std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_insert_range_unique(_InputIterator, _InputIterator) [with _InputIterator = std::_Rb_tree_const_iterator<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >; _Key = boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>; _Val = boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>; _KeyOfValue = std::_Identity<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >; _Compare = CompareIteratorByRevEntryId; _Alloc = std::allocator<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >; std::__enable_if_t<std::is_same<_Val, typename std::iterator_traits<_InputIterator>::value_type>::value> = void]’
/usr/include/c++/9/bits/stl_set.h:193:4:   required from ‘std::set<_Key, _Compare, _Alloc>::set(_InputIterator, _InputIterator) [with _InputIterator = std::_Rb_tree_const_iterator<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >; _Key = boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag>; _Compare = CompareIteratorByRevEntryId; _Alloc = std::allocator<boost::multi_index::detail::hashed_index_iterator<boost::multi_index::detail::hashed_index_node<boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::ordered_index_node<boost::multi_index::detail::null_augment_policy, boost::multi_index::detail::index_node_base<RCUPtr<CTxMemPoolEntry>, std::allocator<RCUPtr<CTxMemPoolEntry> > > > > > >, boost::multi_index::detail::bucket_array<std::allocator<RCUPtr<CTxMemPoolEntry> > >, boost::multi_index::detail::hashed_unique_tag, boost::multi_index::detail::hashed_index_global_iterator_tag> >]’
../../src/txmempool.cpp:715:68:   required from here
../../src/./txmempool.h:86:19: error: ‘const class RCUPtr<CTxMemPoolEntry>’ has no member named ‘GetEntryId’
   86 |         return a->GetEntryId() > b->GetEntryId();
      |                ~~~^~~~~~~~~~
../../src/./txmempool.h:86:37: error: ‘const class RCUPtr<CTxMemPoolEntry>’ has no member named ‘GetEntryId’
   86 |         return a->GetEntryId() > b->GetEntryId();
      |                                  ~~~^~~~~~~~~~
[376/543] Building CXX object src/CMakeFiles/server.dir/txorphanage.cpp.o
[377/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[378/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[379/543] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[380/543] Building CXX object src/CMakeFiles/server.dir/torcontrol.cpp.o
[381/543] Linking CXX executable src/bitcoin-tx
[382/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[383/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[384/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[385/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[386/543] Building CXX object src/CMakeFiles/server.dir/wallet/init.cpp.o
[387/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[388/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[389/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[390/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[391/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[392/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[393/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[394/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[395/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[396/543] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
[397/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[398/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[399/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[400/543] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[401/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[402/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[403/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[404/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[405/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[406/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[407/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[408/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[409/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[410/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[411/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[412/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[413/543] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[414/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[415/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[416/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[417/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[418/543] Linking CXX static library src/wallet/libwallet.a
ninja: build stopped: cannot make progress due to previous errors.
Build build-debug failed with exit code 1

Tail of the build log:

-- Installing: /results/artifacts/include/secp256k1.h
-- Installing: /results/artifacts/include/secp256k1_preallocated.h
-- Installing: /results/artifacts/include/secp256k1_recovery.h
-- Installing: /results/artifacts/include/secp256k1_schnorr.h
[365/543] Building C object src/secp256k1/CMakeFiles/internal-bench.dir/src/bench_internal.c.o
[366/543] Linking C executable src/secp256k1/internal-bench
[367/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[368/543] Building CXX object src/CMakeFiles/server.dir/rpc/net.cpp.o
[369/543] Building CXX object src/CMakeFiles/server.dir/init.cpp.o
[370/543] Building CXX object src/CMakeFiles/server.dir/validationinterface.cpp.o
[371/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockindex.cpp.o
[372/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[373/543] Building CXX object src/CMakeFiles/server.dir/rpc/avalanche.cpp.o
[374/543] Building CXX object src/CMakeFiles/server.dir/torcontrol.cpp.o
[375/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[376/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[377/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[378/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[379/543] Building CXX object src/CMakeFiles/server.dir/wallet/init.cpp.o
[380/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[381/543] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[382/543] Linking CXX executable src/bitcoin-tx
[383/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[384/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[385/543] Building CXX object src/CMakeFiles/server.dir/rpc/rawtransaction.cpp.o
[386/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[387/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[388/543] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[389/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[390/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[391/543] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
[392/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[393/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[394/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[395/543] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[396/543] Building CXX object src/CMakeFiles/server.dir/rpc/blockchain.cpp.o
[397/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[398/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[399/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[400/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[401/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[402/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[403/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[404/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[405/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[406/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[407/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[408/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[409/543] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
[410/543] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[411/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[412/543] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[413/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[414/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[415/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[416/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[417/543] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[418/543] Linking CXX static library src/wallet/libwallet.a
ninja: build stopped: cannot make progress due to previous errors.
Build build-diff failed with exit code 1

Tail of the build log:

[455/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/netbase.cpp.o
[456/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/protocol.cpp.o
[457/606] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/arith_uint256.cpp.o
[458/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/util/error.cpp.o
[459/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/avalanche/proofpool.cpp.o
[460/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/util/asmap.cpp.o
[461/606] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/hash.cpp.o
[462/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/timedata.cpp.o
[463/606] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/uint256.cpp.o
[464/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/util/sock.cpp.o
[465/606] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/pubkey.cpp.o
[466/606] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/util/strencodings.cpp.o
[467/606] Building C object src/secp256k1/CMakeFiles/recover-bench.dir/src/bench_recover.c.o
[468/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/policy/block/stakingrewards.cpp.o
[469/606] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/primitives/transaction.cpp.o
[470/606] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/consensus/amount.cpp.o
[471/606] Building C object src/secp256k1/CMakeFiles/verify-bench.dir/src/bench_verify.c.o
[472/606] Building C object src/secp256k1/CMakeFiles/sign-bench.dir/src/bench_sign.c.o
[473/606] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/consensus/tx_check.cpp.o
[474/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/avalanche/peermanager.cpp.o
[475/606] Building CXX object src/CMakeFiles/bitcoinconsensus-shared.dir/script/bitcoinconsensus.cpp.o
[476/606] Building C object src/secp256k1/CMakeFiles/secp256k1.dir/src/secp256k1.c.o
[477/606] Linking C static library src/secp256k1/libsecp256k1.a
[478/606] Linking CXX static library src/libbitcoinconsensus.a
[479/606] Linking CXX static library src/libscript.a
[480/606] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockindex.cpp.o
[481/606] Linking C executable src/secp256k1/recover-bench
[482/606] Building C object src/secp256k1/CMakeFiles/ecmult-bench.dir/src/bench_ecmult.c.o
[483/606] Linking C executable src/secp256k1/verify-bench
[484/606] Linking CXX static library src/libcommon.a
[485/606] Linking C executable src/secp256k1/ecmult-bench
[486/606] Linking C executable src/secp256k1/sign-bench
[487/606] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[488/606] Linking CXX shared library src/libbitcoinconsensus.so.0.28.8
[489/606] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[490/606] Linking CXX executable src/bitcoin-cli
[491/606] Building C object src/secp256k1/CMakeFiles/internal-bench.dir/src/bench_internal.c.o
[492/606] Linking C executable src/secp256k1/internal-bench
[493/606] Building CXX object src/CMakeFiles/bitcoind.dir/bitcoind.cpp.o
[494/606] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[495/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/avalanche/processor.cpp.o
[496/606] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[497/606] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[498/606] Building CXX object src/CMakeFiles/bitcoin-chainstate.dir/bitcoin-chainstate.cpp.o
[499/606] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[500/606] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[501/606] Linking CXX executable src/bitcoin-tx
[502/606] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[503/606] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[504/606] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[505/606] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[506/606] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[507/606] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[508/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/net.cpp.o
[509/606] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[510/606] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[511/606] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[512/606] Building CXX object src/CMakeFiles/bitcoinkernel.dir/validation.cpp.o
ninja: build stopped: cannot make progress due to previous errors.
Build build-without-wallet failed with exit code 1

Tail of the build log:

[360/541] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[361/541] Linking C executable src/secp256k1/recover-bench
[362/541] Linking C executable src/secp256k1/verify-bench
[363/541] Linking C executable src/secp256k1/sign-bench
[364/541] Building C object src/secp256k1/CMakeFiles/ecmult-bench.dir/src/bench_ecmult.c.o
[365/541] Linking C executable src/secp256k1/ecmult-bench
[366/541] Building C object src/secp256k1/CMakeFiles/internal-bench.dir/src/bench_internal.c.o
[367/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockindex.cpp.o
[368/541] Linking C executable src/secp256k1/internal-bench
[369/541] Building CXX object src/CMakeFiles/bitcoin-cli.dir/bitcoin-cli.cpp.o
[370/541] Linking CXX executable src/bitcoin-cli
[371/541] Building CXX object src/CMakeFiles/server.dir/torcontrol.cpp.o
[372/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[373/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[374/541] Building CXX object src/CMakeFiles/server.dir/rpc/rawtransaction.cpp.o
[375/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[376/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[377/541] Building CXX object src/CMakeFiles/server.dir/rpc/blockchain.cpp.o
[378/541] Building CXX object src/CMakeFiles/server.dir/wallet/init.cpp.o
[379/541] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[380/541] Linking CXX executable src/bitcoin-tx
[381/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[382/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[383/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[384/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[385/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[386/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[387/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[388/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[389/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[390/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[391/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[392/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[393/541] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[394/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[395/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[396/541] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
[397/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[398/541] Linking CXX static library src/zmq/libzmq.a
[399/541] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[400/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[401/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[402/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[403/541] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[404/541] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[405/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[406/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[407/541] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[408/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[409/541] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[410/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[411/541] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[412/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[413/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[414/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[415/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[416/541] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[417/541] Linking CXX static library src/wallet/libwallet.a
ninja: build stopped: cannot make progress due to previous errors.
Build build-clang-tidy failed with exit code 1

Tail of the build log:

wallet_listreceivedby.py                   | ○ Skipped | 0 s
wallet_listsinceblock.py                   | ○ Skipped | 0 s
wallet_listsinceblock.py --descriptors     | ○ Skipped | 0 s
wallet_listtransactions.py                 | ○ Skipped | 0 s
wallet_listtransactions.py --descriptors   | ○ Skipped | 0 s
wallet_multiwallet.py                      | ○ Skipped | 0 s
wallet_multiwallet.py --descriptors        | ○ Skipped | 0 s
wallet_multiwallet.py --usecli             | ○ Skipped | 0 s
wallet_reorgsrestore.py                    | ○ Skipped | 0 s
wallet_resendwallettransactions.py         | ○ Skipped | 0 s
wallet_send.py                             | ○ Skipped | 0 s
wallet_startup.py                          | ○ Skipped | 0 s
wallet_timelock.py                         | ○ Skipped | 0 s
wallet_txn_clone.py                        | ○ Skipped | 0 s
wallet_txn_clone.py --mineblock            | ○ Skipped | 0 s
wallet_txn_doublespend.py                  | ○ Skipped | 0 s
wallet_txn_doublespend.py --mineblock      | ○ Skipped | 0 s
wallet_watchonly.py                        | ○ Skipped | 0 s
wallet_watchonly.py --usecli               | ○ Skipped | 0 s

ALL                                        | ✓ Passed  | 764 s (accumulated) 
Runtime: 153 s

[173/453] Test Bitcoin RPC authentication...
...
----------------------------------------------------------------------
Ran 3 tests in 0.004s

OK
[174/453] cd /work/contrib/devtools/chainparams && /usr/bin/python3.9 ./test_make_chainparams.py
.....
----------------------------------------------------------------------
Ran 5 tests in 0.002s

OK
[184/453] Running avalanche test suite
PASSED: avalanche test suite
[197/453] Running seeder test suite
PASSED: seeder test suite
[208/453] Running pow test suite
PASSED: pow test suite
[212/453] Running bitcoin-qt test suite
PASSED: bitcoin-qt test suite
[213/453] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/script_tests.cpp.o
In file included from /usr/include/boost/test/unit_test.hpp:19,
                 from ../../src/test/script_tests.cpp:30:
../../src/test/script_tests.cpp: In member function ‘void script_tests::script_build::test_method()’:
../../src/test/script_tests.cpp:540:22: note: variable tracking size limit exceeded with ‘-fvar-tracking-assignments’, retrying without
  540 | BOOST_AUTO_TEST_CASE(script_build) {
      |                      ^~~~~~~~~~~~
[320/453] bitcoin: testing addrman_tests
FAILED: src/test/CMakeFiles/check-bitcoin-addrman_tests 
cd /work/abc-ci-builds/build-without-wallet/src/test && /usr/bin/cmake -E make_directory /work/abc-ci-builds/build-without-wallet/test/junit && /usr/bin/cmake -E make_directory /work/abc-ci-builds/build-without-wallet/test/log && /usr/bin/cmake -E env /work/cmake/utils/log-and-print-on-failure.sh /work/abc-ci-builds/build-without-wallet/test/log/bitcoin-addrman_tests.log /work/abc-ci-builds/build-without-wallet/src/test/test_bitcoin --run_test=addrman_tests --logger=HRF,message:JUNIT,message,bitcoin-addrman_tests.xml --catch_system_errors=no
Running 20 test cases...
../../src/test/addrman_tests.cpp(1157): error: in "addrman_tests/addrman_is_terrible": check !addr_info.IsTerrible() has failed

*** 1 failure is detected in the test module "Bitcoin ABC unit tests"
[450/453] Running utility command for check-bitcoin-coins_tests
ninja: build stopped: cannot make progress due to previous errors.
Build build-without-wallet failed with exit code 1