Page MenuHomePhabricator

validationcaches: Add and use ValidationCacheSizes
ClosedPublic

Authored by PiRK on Mar 19 2024, 12:47.

Details

Reviewers
Fabien
Group Reviewers
Restricted Project
Commits
rABCe80abca4f815: validationcaches: Add and use ValidationCacheSizes
Summary

Also:

  • Make DEFAULT_MAX_SIG_CACHE_SIZE into constexpr DEFAULT_MAX_SIG_CACHE_BYTES to utilize the compile-time integer arithmetic overflow checking available to constexpr.
  • Fix comment (MiB instead of MB) for DEFAULT_MAX_SIG_CACHE_BYTES.
  • Pass in max_size_bytes parameter to InitS*Cache()
  • Fix possible integer truncation and add a comment.

[META] I've kept the integer types as int64_t in order to not introduce unintended behaviour changes, in the next commit we will make them size_t.

This is a partial backport of core#25527
https://github.com/bitcoin/bitcoin/pull/25527/commits/41c5201a90bbc2893333e334e8945759ef24e7dd

Depends on D15737

Backport note: Bitcoin ABC has two separate options for script cache size and sig cache size, while Core uses a single value and assigns half for each cache.

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.Mar 19 2024, 12:47
This revision is now accepted and ready to land.Mar 19 2024, 13:21

Tail of the build log:

[384/549] Linking C executable src/secp256k1/internal-bench
[385/549] Linking C executable src/secp256k1/recover-bench
[386/549] Linking C executable src/secp256k1/ecmult-bench
[387/549] Linking CXX static library src/libcommon.a
[388/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[389/549] Linking C executable src/secp256k1/verify-bench
[390/549] Linking C executable src/secp256k1/sign-bench
[391/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[392/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[393/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[394/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[395/549] Linking CXX static library src/libscript.a
[396/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[397/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[398/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[399/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[400/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[401/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[402/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[403/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[404/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[405/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[406/549] Linking CXX static library src/libbitcoinconsensus.a
[407/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[408/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[409/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[410/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[411/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[412/549] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[413/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[414/549] Linking CXX shared library src/libbitcoinconsensus.so.0.28.11
[415/549] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[416/549] Linking CXX executable src/bitcoin-cli
[417/549] Linking CXX executable src/bitcoin-tx
[418/549] Linking CXX static library src/wallet/libwallet.a
[419/549] Building CXX object src/CMakeFiles/server.dir/node/validation_cache_args.cpp.o
[420/549] Building CXX object src/CMakeFiles/server.dir/script/sigcache.cpp.o
[421/549] Building CXX object src/CMakeFiles/server.dir/script/scriptcache.cpp.o
[422/549] 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 -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../../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 -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 -pthread -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 ../../src/init.cpp
../../src/init.cpp:2163:52: error: no member named 'signature_cache_byte' in 'kernel::ValidationCacheSizes'; did you mean 'signature_cache_bytes'?
    if (!InitSignatureCache(validation_cache_sizes.signature_cache_byte)) {
                                                   ^~~~~~~~~~~~~~~~~~~~
                                                   signature_cache_bytes
../../src/./kernel/validation_cache_sizes.h:16:13: note: 'signature_cache_bytes' declared here
    int64_t signature_cache_bytes{DEFAULT_MAX_SIG_CACHE_BYTES};
            ^
../../src/init.cpp:2174:28: error: use of undeclared identifier 'DEFAULT_MAX_SCRIPT_CACHE_SIZE'; did you mean 'DEFAULT_MAX_SCRIPT_CACHE_BYTES'?
                           DEFAULT_MAX_SCRIPT_CACHE_SIZE)));
                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                           DEFAULT_MAX_SCRIPT_CACHE_BYTES
../../src/./script/scriptcache.h:48:25: note: 'DEFAULT_MAX_SCRIPT_CACHE_BYTES' declared here
static constexpr size_t DEFAULT_MAX_SCRIPT_CACHE_BYTES{32 << 20};
                        ^
2 errors generated.
[423/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[424/549] 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:

-- Installing: /results/artifacts/include/secp256k1_schnorr.h
[368/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[369/549] Linking C executable src/secp256k1/recover-bench
[370/549] Linking C executable src/secp256k1/sign-bench
[371/549] Linking C executable src/secp256k1/verify-bench
[372/549] Linking CXX static library src/libcommon.a
[373/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[374/549] Linking CXX static library src/libscript.a
[375/549] Linking CXX static library src/libbitcoinconsensus.a
[376/549] Building C object src/secp256k1/CMakeFiles/ecmult-bench.dir/src/bench_ecmult.c.o
[377/549] Linking CXX shared library src/libbitcoinconsensus.so.0.28.11
[378/549] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[379/549] Linking C executable src/secp256k1/ecmult-bench
[380/549] Linking CXX executable src/bitcoin-cli
[381/549] Building CXX object src/CMakeFiles/server.dir/txorphanage.cpp.o
[382/549] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[383/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[384/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[385/549] Linking CXX executable src/bitcoin-tx
[386/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[387/549] Building CXX object src/CMakeFiles/server.dir/torcontrol.cpp.o
[388/549] Building CXX object src/CMakeFiles/server.dir/txmempool.cpp.o
[389/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[390/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[391/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[392/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[393/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[394/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[395/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[396/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[397/549] Building CXX object src/CMakeFiles/server.dir/wallet/init.cpp.o
[398/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[399/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[400/549] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
[401/549] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[402/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[403/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[404/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[405/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[406/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[407/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[408/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[409/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[410/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[411/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[412/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[413/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[414/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[415/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[416/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[417/549] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[418/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[419/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[420/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[421/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[422/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[423/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[424/549] 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:

[378/549] Linking C executable src/secp256k1/sign-bench
[379/549] Linking C executable src/secp256k1/ecmult-bench
[380/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[381/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[382/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[383/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[384/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[385/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[386/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[387/549] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[388/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[389/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[390/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[391/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[392/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[393/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[394/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[395/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[396/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[397/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[398/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[399/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[400/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[401/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[402/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[403/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[404/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[405/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[406/549] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[407/549] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[408/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[409/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[410/549] Linking CXX static library src/libcommon.a
[411/549] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[412/549] Linking CXX static library src/libscript.a
[413/549] Linking CXX static library src/libbitcoinconsensus.a
[414/549] Linking CXX shared library src/libbitcoinconsensus.so.0.28.11
[415/549] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[416/549] Linking CXX executable src/bitcoin-cli
[417/549] Linking CXX executable src/bitcoin-tx
[418/549] Linking CXX static library src/wallet/libwallet.a
[419/549] Building CXX object src/CMakeFiles/server.dir/node/validation_cache_args.cpp.o
[420/549] Building CXX object src/CMakeFiles/server.dir/script/sigcache.cpp.o
[421/549] Building CXX object src/CMakeFiles/server.dir/script/scriptcache.cpp.o
[422/549] Building CXX object src/CMakeFiles/server.dir/init.cpp.o
FAILED: src/CMakeFiles/server.dir/init.cpp.o 
/usr/bin/ccache /usr/bin/c++ -DBOOST_ALL_NO_LIB -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../../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 -g -O2 -fPIC -fvisibility=hidden -fstack-reuse=none -fstack-protector-all -Wstack-protector -fcf-protection=full -fstack-clash-protection -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -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/init.cpp.o -MF src/CMakeFiles/server.dir/init.cpp.o.d -o src/CMakeFiles/server.dir/init.cpp.o -c ../../src/init.cpp
../../src/init.cpp: In function ‘bool AppInitMain(Config&, RPCServer&, HTTPRPCRequestProcessor&, node::NodeContext&, interfaces::BlockAndHeaderTipInfo*)’:
../../src/init.cpp:2163:52: error: ‘struct kernel::ValidationCacheSizes’ has no member named ‘signature_cache_byte’; did you mean ‘signature_cache_bytes’?
 2163 |     if (!InitSignatureCache(validation_cache_sizes.signature_cache_byte)) {
      |                                                    ^~~~~~~~~~~~~~~~~~~~
      |                                                    signature_cache_bytes
../../src/init.cpp:2174:28: error: ‘DEFAULT_MAX_SCRIPT_CACHE_SIZE’ was not declared in this scope; did you mean ‘DEFAULT_MAX_SCRIPT_CACHE_BYTES’?
 2174 |                            DEFAULT_MAX_SCRIPT_CACHE_SIZE)));
      |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                            DEFAULT_MAX_SCRIPT_CACHE_BYTES
[423/549] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[424/549] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
ninja: build stopped: cannot make progress due to previous errors.
Build build-diff failed with exit code 1

Tail of the build log:

[366/547] Linking C executable src/secp256k1/recover-bench
[367/547] Linking C executable src/secp256k1/verify-bench
[368/547] Linking C executable src/secp256k1/sign-bench
[369/547] Building CXX object src/CMakeFiles/server.dir/txorphanage.cpp.o
[370/547] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
[371/547] Building C object src/secp256k1/CMakeFiles/ecmult-bench.dir/src/bench_ecmult.c.o
[372/547] Linking C executable src/secp256k1/ecmult-bench
[373/547] Building CXX object src/CMakeFiles/server.dir/rpc/blockchain.cpp.o
[374/547] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockindex.cpp.o
[375/547] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[376/547] Building CXX object src/CMakeFiles/bitcoin-cli.dir/bitcoin-cli.cpp.o
[377/547] Linking CXX executable src/bitcoin-cli
[378/547] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[379/547] Building CXX object src/CMakeFiles/server.dir/torcontrol.cpp.o
[380/547] Building CXX object src/CMakeFiles/server.dir/rpc/rawtransaction.cpp.o
[381/547] Building CXX object src/CMakeFiles/server.dir/txmempool.cpp.o
[382/547] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[383/547] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[384/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/context.cpp.o
[385/547] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[386/547] Linking CXX executable src/bitcoin-tx
[387/547] Building CXX object src/CMakeFiles/server.dir/wallet/init.cpp.o
[388/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/coincontrol.cpp.o
[389/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/db.cpp.o
[390/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/bdb.cpp.o
[391/547] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[392/547] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[393/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/crypter.cpp.o
[394/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/coinselection.cpp.o
[395/547] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[396/547] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[397/547] Building CXX object src/wallet/CMakeFiles/wallet-tool.dir/wallettool.cpp.o
[398/547] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[399/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/fees.cpp.o
[400/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/load.cpp.o
[401/547] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
[402/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/receive.cpp.o
[403/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/util.cpp.o
[404/547] Linking CXX static library src/zmq/libzmq.a
[405/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/encrypt.cpp.o
[406/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/sqlite.cpp.o
[407/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/signmessage.cpp.o
[408/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/transaction.cpp.o
[409/547] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[410/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/salvage.cpp.o
[411/547] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[412/547] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[413/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/interfaces.cpp.o
[414/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletutil.cpp.o
[415/547] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[416/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/spend.cpp.o
[417/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/scriptpubkeyman.cpp.o
[418/547] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[419/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpc/backup.cpp.o
[420/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/walletdb.cpp.o
[421/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/rpcwallet.cpp.o
[422/547] Building CXX object src/wallet/CMakeFiles/wallet.dir/wallet.cpp.o
[423/547] 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
Fabien requested changes to this revision.Mar 19 2024, 13:28

tests are failing

This revision now requires changes to proceed.Mar 19 2024, 13:28

Tail of the build log:

[464/613] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/primitives/transaction.cpp.o
[465/613] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/pubkey.cpp.o
[466/613] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/uint256.cpp.o
[467/613] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/util/strencodings.cpp.o
[468/613] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/consensus/amount.cpp.o
[469/613] Building CXX object src/CMakeFiles/bitcoinconsensus.dir/consensus/tx_check.cpp.o
[470/613] Building CXX object src/CMakeFiles/bitcoinkernel.dir/txdb.cpp.o
[471/613] Building CXX object src/CMakeFiles/bitcoinconsensus-shared.dir/script/bitcoinconsensus.cpp.o
[472/613] Building CXX object src/CMakeFiles/bitcoinkernel.dir/util/asmap.cpp.o
[473/613] Building C object src/secp256k1/CMakeFiles/secp256k1.dir/src/secp256k1.c.o
[474/613] Linking C static library src/secp256k1/libsecp256k1.a
[475/613] Linking CXX static library src/libbitcoinconsensus.a
[476/613] Linking CXX static library src/libscript.a
[477/613] Linking CXX static library src/libcommon.a
[478/613] Linking CXX executable src/bitcoin-cli
[479/613] Building CXX object src/CMakeFiles/server.dir/net_processing.cpp.o
[480/613] Building C object src/secp256k1/CMakeFiles/recover-bench.dir/src/bench_recover.c.o
[481/613] Linking CXX shared library src/libbitcoinconsensus.so.0.28.11
[482/613] Linking C executable src/secp256k1/recover-bench
[483/613] Creating library symlink src/libbitcoinconsensus.so.0 src/libbitcoinconsensus.so
[484/613] Building C object src/secp256k1/CMakeFiles/ecmult-bench.dir/src/bench_ecmult.c.o
[485/613] Building C object src/secp256k1/CMakeFiles/verify-bench.dir/src/bench_verify.c.o
[486/613] Linking C executable src/secp256k1/ecmult-bench
[487/613] Linking C executable src/secp256k1/verify-bench
[488/613] Building C object src/secp256k1/CMakeFiles/sign-bench.dir/src/bench_sign.c.o
[489/613] Building CXX object src/CMakeFiles/bitcoinkernel.dir/avalanche/proof.cpp.o
[490/613] Building C object src/secp256k1/CMakeFiles/internal-bench.dir/src/bench_internal.c.o
[491/613] Linking C executable src/secp256k1/sign-bench
[492/613] Linking C executable src/secp256k1/internal-bench
[493/613] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockindex.cpp.o
[494/613] Building CXX object src/test/CMakeFiles/testutil.dir/util/logging.cpp.o
[495/613] Building CXX object src/CMakeFiles/bitcoinkernel.dir/txmempool.cpp.o
[496/613] Building CXX object src/CMakeFiles/bitcoind.dir/bitcoind.cpp.o
[497/613] Building CXX object src/test/CMakeFiles/testutil.dir/util/str.cpp.o
[498/613] Building CXX object src/test/CMakeFiles/testutil.dir/util/transaction_utils.cpp.o
[499/613] Building CXX object src/CMakeFiles/bitcoinkernel.dir/avalanche/proofpool.cpp.o
[500/613] Building CXX object src/test/CMakeFiles/testutil.dir/util/wallet.cpp.o
[501/613] Building CXX object src/CMakeFiles/bitcoinkernel.dir/policy/block/stakingrewards.cpp.o
[502/613] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/db.cpp.o
[503/613] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/dns.cpp.o
[504/613] Building CXX object src/CMakeFiles/bitcoin-chainstate.dir/bitcoin-chainstate.cpp.o
[505/613] Building CXX object src/CMakeFiles/bitcoinkernel.dir/avalanche/peermanager.cpp.o
[506/613] Building CXX object src/CMakeFiles/server.dir/validation.cpp.o
[507/613] Building CXX object src/CMakeFiles/bitcoin-tx.dir/bitcoin-tx.cpp.o
[508/613] Building CXX object src/test/CMakeFiles/testutil.dir/util/blockfilter.cpp.o
[509/613] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/options.cpp.o
[510/613] Linking CXX executable src/bitcoin-tx
[511/613] Building CXX object src/test/CMakeFiles/testutil.dir/util/net.cpp.o
[512/613] Building CXX object src/test/CMakeFiles/testutil.dir/util/validation.cpp.o
[513/613] Building CXX object src/test/CMakeFiles/testutil.dir/util/mining.cpp.o
[514/613] Building CXX object src/CMakeFiles/bitcoinkernel.dir/avalanche/processor.cpp.o
[515/613] Building CXX object src/seeder/CMakeFiles/seeder-base.dir/bitcoin.cpp.o
[516/613] Building CXX object src/seeder/CMakeFiles/bitcoin-seeder.dir/main.cpp.o
[517/613] Building CXX object src/test/CMakeFiles/testutil.dir/util/setup_common.cpp.o
[518/613] Building CXX object src/CMakeFiles/bitcoinkernel.dir/net.cpp.o
[519/613] Building CXX object src/CMakeFiles/bitcoinkernel.dir/validation.cpp.o
[520/613] Linking CXX static library src/libbitcoinkernel.a
[521/613] Linking CXX executable src/bitcoin-chainstate
ninja: build stopped: cannot make progress due to previous errors.
Build build-without-wallet failed with exit code 1
PiRK planned changes to this revision.Mar 19 2024, 13:57

I broke something during the rebase

fix rebase issue (resulted of splitting of error message in init.cpp in D15735 and partially fixing the resulting conflict)

This revision is now accepted and ready to land.Mar 19 2024, 14:53