Page MenuHomePhabricator

kernel: Move kernel-specific cache size options to kernel
ClosedPublic

Authored by PiRK on Sep 9 2025, 13:52.

Details

Reviewers
Fabien
Group Reviewers
Restricted Project
Commits
rABC9def493456af: kernel: Move kernel-specific cache size options to kernel
Summary

Carrying non-kernel related fields in the cache sizes for the indexes is
confusing for kernel library users. The cache sizes also are set
currently with magic numbers in bitcoin-chainstate. The comments for the
cache size calculations are also not completely clear.

Solve these things by moving the kernel-specific cache size fields to
their own struct.

This slightly changes the way the cache is allocated if the txindex
and/or blockfilterindex is used. Since they are now given precedence
over the block tree db cache, this results in a bit less cache being
allocated to the block tree db, coinsdb and coins caches. The effect is
negligible though, i.e. cache sizes with default dbcache reported
through the logs are:

master:
Cache configuration:

  • Using 2.0 MiB for block index database
  • Using 56.0 MiB for transaction index database
  • Using 49.0 MiB for basic block filter index database
  • Using 8.0 MiB for chain state database
  • Using 335.0 MiB for in-memory UTXO set (plus up to 286.1 MiB of unused mempool space)

this branch:
Cache configuration:

  • Using 2.0 MiB for block index database
  • Using 56.2 MiB for transaction index database
  • Using 49.2 MiB for basic block filter index database
  • Using 8.0 MiB for chain state database
  • Using 334.5 MiB for in-memory UTXO set (plus up to 286.1 MiB of unused mempool space)

This is a partial backport of core#31483
github.com/bitcoin/bitcoin/pull/31483/commits/e758b26b85da27ef44f3d2c924f3f08e8c1f4fdf

Depends on D18580

Test Plan

ninja all check-all

Diff Detail

Repository
rABC Bitcoin ABC
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

PiRK requested review of this revision.Sep 9 2025, 13:52

Tail of the build log:

[400/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/coins.cpp.o
[401/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[402/586] Building CXX object src/CMakeFiles/server.dir/script/scriptcache.cpp.o
[403/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[404/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/random.cpp.o
[405/586] Building CXX object src/CMakeFiles/server.dir/rpc/txoutproof.cpp.o
[406/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[407/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[408/586] Building CXX object src/CMakeFiles/server.dir/rpc/mempool.cpp.o
[409/586] Building CXX object src/CMakeFiles/server.dir/txdb.cpp.o
[410/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[411/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[412/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[413/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[414/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[415/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[416/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[417/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[418/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[419/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[420/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[421/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[422/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[423/586] Building CXX object src/CMakeFiles/server.dir/rpc/misc.cpp.o
[424/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[425/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[426/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[427/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[428/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[429/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[430/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[431/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[432/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[433/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[434/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[435/586] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[436/586] Linking CXX static library src/wallet/libwallet.a
[437/586] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[438/586] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[439/586] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[440/586] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[441/586] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana.cpp.o
[442/586] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana_formatter.cpp.o
[443/586] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana_interpreter.cpp.o
[444/586] Linking CXX executable src/iguana/iguana
[445/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[446/586] Building CXX object src/CMakeFiles/server.dir/rpc/mining.cpp.o
[447/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[448/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[449/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/txmempool.cpp.o
[450/586] Building CXX object src/CMakeFiles/server.dir/rpc/net.cpp.o
[451/586] Building CXX object src/CMakeFiles/server.dir/rpc/avalanche.cpp.o
[452/586] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[453/586] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[454/586] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
[455/586] Building CXX object src/CMakeFiles/server.dir/rpc/rawtransaction.cpp.o
[456/586] Building CXX object src/CMakeFiles/server.dir/rpc/blockchain.cpp.o
[457/586] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
ninja: build stopped: cannot make progress due to previous errors.
Build build-clang failed with exit code 1

Tail of the build log:

[399/584] Linking CXX executable src/bitcoin-tx
[400/584] Building CXX object src/CMakeFiles/bitcoind.dir/bitcoind.cpp.o
[401/584] Building CXX object src/CMakeFiles/server.dir/rpc/net.cpp.o
[402/584] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
[403/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/coins.cpp.o
[404/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[405/584] Building CXX object src/CMakeFiles/server.dir/rpc/mining.cpp.o
[406/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockindex.cpp.o
[407/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[408/584] Building CXX object src/CMakeFiles/bitcoin-wallet.dir/bitcoin-wallet.cpp.o
[409/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/random.cpp.o
[410/584] Building CXX object src/CMakeFiles/server.dir/wallet/init.cpp.o
[411/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[412/584] Building CXX object src/CMakeFiles/server.dir/rpc/avalanche.cpp.o
[413/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[414/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[415/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[416/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[417/584] Building CXX object src/CMakeFiles/server.dir/rpc/rawtransaction.cpp.o
[418/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[419/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[420/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[421/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[422/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[423/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[424/584] Building CXX object src/CMakeFiles/server.dir/rpc/blockchain.cpp.o
[425/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[426/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[427/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[428/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/txmempool.cpp.o
[429/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[430/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[431/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[432/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[433/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[434/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[435/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[436/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[437/584] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[438/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[439/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[440/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[441/584] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[442/584] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[443/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[444/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[445/584] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana_interpreter.cpp.o
[446/584] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana_formatter.cpp.o
[447/584] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[448/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[449/584] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana.cpp.o
[450/584] Linking CXX executable src/iguana/iguana
[451/584] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[452/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[453/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[454/584] Linking CXX static library src/wallet/libwallet.a
[455/584] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
[456/584] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
ninja: build stopped: cannot make progress due to previous errors.
Build build-clang-tidy failed with exit code 1

Tail of the build log:

[416/586] Linking C static library src/secp256k1/libsecp256k1.a
[417/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[418/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[419/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[420/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[421/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[422/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[423/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[424/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[425/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[426/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[427/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[428/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[429/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[430/586] Installing component secp256k1
-- Install configuration: "RelWithDebInfo"
-- Install component: "secp256k1"
-- Installing: /results/artifacts/lib/libsecp256k1.a
-- 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
[431/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[432/586] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[433/586] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[434/586] Linking CXX static library src/libbitcoinconsensus.a
[435/586] Linking C executable src/secp256k1/recover-bench
[436/586] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[437/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[438/586] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[439/586] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[440/586] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[441/586] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana_formatter.cpp.o
[442/586] Linking C executable src/secp256k1/internal-bench
[443/586] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[444/586] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana_interpreter.cpp.o
[445/586] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana.cpp.o
[446/586] Linking C executable src/secp256k1/sign-bench
[447/586] Linking C executable src/secp256k1/verify-bench
[448/586] Linking C executable src/secp256k1/ecmult-bench
[449/586] Linking CXX static library src/libscript.a
[450/586] Linking CXX static library src/libcommon.a
[451/586] Linking CXX shared library src/libbitcoinconsensus.so.0.31.12
[452/586] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[453/586] Linking CXX executable src/iguana/iguana
[454/586] Linking CXX executable src/bitcoin-cli
[455/586] Linking CXX executable src/bitcoin-tx
[456/586] Linking CXX static library src/wallet/libwallet.a
[457/586] Building CXX object src/CMakeFiles/server.dir/init.cpp.o
FAILED: src/CMakeFiles/server.dir/init.cpp.o 
/usr/bin/ccache /usr/bin/clang++ -DBOOST_ALL_NO_LIB -DBOOST_NO_CXX98_FUNCTION_BASE -DBUILD_BITCOIN_INTERNAL -DENABLE_AVX2 -DENABLE_SHANI -DENABLE_SSE41 -DHAVE_BUILD_INFO -DHAVE_CONFIG_H -DHAVE_CONSENSUS_LIB -DLEVELDB_ATOMIC_PRESENT -DLEVELDB_PLATFORM_POSIX -DOS_LINUX -I/work/src/leveldb/helpers/memenv -I/work/src/. -I/work/abc-ci-builds/build-clang/src -I/work/src/univalue/include -I/work/abc-ci-builds/build-clang/src/crypto/.. -I/work/src/secp256k1/include -I/work/src/leveldb/include -isystem /usr/include/jemalloc -isystem /usr/include/miniupnpc -Werror -g -O2 -fPIC -fvisibility=hidden -fstack-protector-all -Wstack-protector -fcf-protection=full -fstack-clash-protection -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -Wextra -Wformat -Wgnu -Wvla -Wcast-align -Wunused-parameter -Wmissing-braces -Wthread-safety -Wrange-loop-analysis -Wredundant-decls -Wunreachable-code-loop-increment -Wsign-compare -Wconditional-uninitialized -Wdocumentation -Wformat-security -Wredundant-move -Woverloaded-virtual -Wshadow -Wshadow-field -Wno-unused-parameter -Wno-implicit-fallthrough -Wno-psabi -std=gnu++17 -MD -MT src/CMakeFiles/server.dir/init.cpp.o -MF src/CMakeFiles/server.dir/init.cpp.o.d -o src/CMakeFiles/server.dir/init.cpp.o -c /work/src/init.cpp
/work/src/init.cpp:2612:45: error: captured structured bindings are a C++20 extension [-Werror,-Wc++20-extensions]
            return LoadChainstate(chainman, kernel_cache_sizes, options);
                                            ^
/work/src/init.cpp:2503:36: note: 'kernel_cache_sizes' declared here
    const auto [index_cache_sizes, kernel_cache_sizes] =
                                   ^
1 error generated.
ninja: build stopped: cannot make progress due to previous errors.
Build build-clang failed with exit code 1

Tail of the build log:

[399/584] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[400/584] Linking CXX executable src/bitcoin-tx
[401/584] Building CXX object src/CMakeFiles/server.dir/rpc/mining.cpp.o
[402/584] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
[403/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockindex.cpp.o
[404/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/coins.cpp.o
[405/584] Building CXX object src/CMakeFiles/server.dir/rpc/net.cpp.o
[406/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[407/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[408/584] Building CXX object src/CMakeFiles/bitcoin-wallet.dir/bitcoin-wallet.cpp.o
[409/584] Building CXX object src/CMakeFiles/server.dir/wallet/init.cpp.o
[410/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/random.cpp.o
[411/584] Building CXX object src/CMakeFiles/server.dir/rpc/avalanche.cpp.o
[412/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[413/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[414/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[415/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[416/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[417/584] Building CXX object src/CMakeFiles/server.dir/rpc/rawtransaction.cpp.o
[418/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[419/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[420/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[421/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[422/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[423/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[424/584] Building CXX object src/CMakeFiles/server.dir/rpc/blockchain.cpp.o
[425/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/txmempool.cpp.o
[426/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[427/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[428/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[429/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[430/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[431/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[432/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[433/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[434/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[435/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[436/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[437/584] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[438/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[439/584] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[440/584] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[441/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[442/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[443/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[444/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[445/584] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[446/584] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[447/584] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana_interpreter.cpp.o
[448/584] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana_formatter.cpp.o
[449/584] Building CXX object src/iguana/CMakeFiles/iguana.dir/iguana.cpp.o
[450/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[451/584] Linking CXX executable src/iguana/iguana
[452/584] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[453/584] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[454/584] Linking CXX static library src/wallet/libwallet.a
[455/584] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
[456/584] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
ninja: build stopped: cannot make progress due to previous errors.
Build build-clang-tidy failed with exit code 1
PiRK planned changes to this revision.Sep 9 2025, 14:21

looks like this includes c++20 code

This revision is now accepted and ready to land.Sep 10 2025, 09:21