Page MenuHomePhabricator

[avalanche] Start polling when we park of block because of reorg
ClosedPublic

Authored by deadalnix on Apr 3 2020, 16:03.

Details

Summary

As per title.

Test Plan

Ran abc-p2p-avalanche test 25 times in a row to check tha it passes and isn't flacky.

Diff Detail

Repository
rABC Bitcoin ABC
Branch
avasendpoll
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 10125
Build 18078: Default Diff Build & Tests
Build 18077: arc lint + arc unit

Event Timeline

Remove code that was comented out

Fabien requested changes to this revision.Apr 6 2020, 13:10
Fabien added a subscriber: Fabien.
Fabien added inline comments.
src/rpc/avalanche.cpp
50 ↗(On Diff #17452)

The error code is unrelated to the actual error.

61 ↗(On Diff #17452)

Looking at the avalanche code, I think an invalid nodeId could remain in the peer list.
There is no check that the nodeid is actually a valid connected peer until the runEventLoop(), and conman->ForNode() will return false (so hasSent is false). This will leave the invs vector empty and the node would not be removed from the peer list.
I am missing something ? As a consequence, should the nodeid be checked before being added ?

src/validation.cpp
4273 ↗(On Diff #17452)

You might want to do it only if avalanche is enabled. Not a huge issue because the message won't be sent but that would remove the overhead.

4274 ↗(On Diff #17452)

How do you plan to make this work with the automatic unparking feature ? As is you may start to poll for a block that will be unparked soon due to enough pow. Maybe avalanche and automatic unpark should be made exclusive ?

test/functional/abc-p2p-avalanche.py
161 ↗(On Diff #17452)

That's 1 block deep ?

169 ↗(On Diff #17452)

Why is this needed twice ?

This revision now requires changes to proceed.Apr 6 2020, 13:10
src/rpc/avalanche.cpp
61 ↗(On Diff #17452)

Node can disconnect anyways, so nodeid can become stale. This is to be fixed within AvalancheProcessor.

src/validation.cpp
4273 ↗(On Diff #17452)

Considering how much PoW is needed to create a block, w can live with it :)

4274 ↗(On Diff #17452)

Avalanche will be unparking down the road. But right now, it's all good, it changes nothing to the automatic unparking behavior.

test/functional/abc-p2p-avalanche.py
161 ↗(On Diff #17452)

76+16 = 102 so we are good.

Snippet of first build failure:

Build 'Bitcoin-ABC / Diffs / Diff Testing' #8896, branch 'phabricator/diff/17467'
Started 2020-04-07 14:47:30 on 'highperf5' by 'Phabricator Staging (phabricator-staging)'
Finished 2020-04-07 14:47:32 with status FAILURE 'Snapshot dependency failed: Automated Deployments / Bitcoin ABC Developer Tools / Bitcoin ABC Diff Base Image'
VCS revisions: 'Bitcoin ABC Staging' (Git): 6a9b912eeeef7ec26e27f1f05895aa2221b60d44 (branch 'refs/tags/phabricator/diff/17467')
TeamCity URL https://build.bitcoinabc.org/viewLog.html?buildId=34236&buildTypeId=BitcoinABC_BitcoinAbcStaging 
TeamCity server version is 2018.1.4 (build 58724), server timezone: UTC

[14:46:06]E: bt37 (1m:26s)
[14:46:06]i: TeamCity server version is 2018.1.4 (build 58724)
[14:46:06] : Collecting changes in 3 VCS roots (14s)
[14:46:06] :	 [Collecting changes in 3 VCS roots] VCS Root details
[14:46:06] :		 [VCS Root details] "abc-infrastructure" {instance id=34, parent internal id=11, parent id=AutomatedDeployments_BitcoinAbcDeveloperTools_AbcInfrastructure, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/infrastructure.git#refs/heads/master"}
[14:46:06] :		 [VCS Root details] "ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc.git" {instance id=27, parent internal id=4, parent id=BitcoinABCGit, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc.git#refs/heads/master"}
[14:46:06] :		 [VCS Root details] "Bitcoin ABC Staging" {instance id=28, parent internal id=7, parent id=BitcoinABC_BitcoinAbcStaging, description: "ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc-staging.git#refs/heads/master"}
[14:46:07]i:	 [Collecting changes in 3 VCS roots] Detecting changes in VCS root 'abc-infrastructure' (used in 'Bitcoin-ABC Infra Checkout', 'Build abcbot' and 1 other configuration)
[14:46:07]i:	 [Collecting changes in 3 VCS roots] Will collect changes for 'abc-infrastructure' starting from revision 5dab07fa43892d9eb477d34389e03e15a808ac45
[14:46:07]i:	 [Collecting changes in 3 VCS roots] Detecting changes in VCS root 'ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc.git' (used in 'Bitcoin ABC Master Base Image', 'Bitcoin-ABC Check Seeds' and 24 other configurations)
[14:46:07]i:	 [Collecting changes in 3 VCS roots] Will collect changes for 'ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc.git' starting from revision 1678967611ccb25b630c4d8b93d406d7d20af191
[14:46:07]i:	 [Collecting changes in 3 VCS roots] Detecting changes in VCS root 'Bitcoin ABC Staging' (used in 'Bitcoin ABC Diff Base Image', 'Bitcoin-ABC Gitian Diff Testing' and 7 other configurations)
[14:46:07]i:	 [Collecting changes in 3 VCS roots] Will collect changes for 'Bitcoin ABC Staging' starting from revision 8408a0cdcf4106fde3d093d4ed583b19fd7dbcdb
[14:46:07]i:	 [Collecting changes in 3 VCS roots] VCS revisions for 'Bitcoin ABC Staging' - 8408a0cdcf4106fde3d093d4ed583b19fd7dbcdb..8408a0cdcf4106fde3d093d4ed583b19fd7dbcdb
[14:46:07]i:	 [Collecting changes in 3 VCS roots] Processing combined checkout rule for 'Bitcoin ABC Staging' 
[14:46:09]i:	 [Collecting changes in 3 VCS roots] VCS root 'Bitcoin ABC Staging': git fetch ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc-staging.git
[14:46:20]i:	 [Collecting changes in 3 VCS roots] VCS root 'Bitcoin ABC Staging': Updating references 100%
[14:46:20]i:	 [Collecting changes in 3 VCS roots] VCS root 'Bitcoin ABC Staging': Updating references 100%
[14:46:20]i:	 [Collecting changes in 3 VCS roots] VCS root 'Bitcoin ABC Staging': update ref remote name: refs/tags/phabricator/diff/17467, local name: refs/tags/phabricator/diff/17467, old object id: 0000000000000000000000000000000000000000, new object id: 6a9b912eeeef7ec26e27f1f05895aa2221b60d44, result: NEW
[14:46:20]i:	 [Collecting changes in 3 VCS roots] VCS root 'Bitcoin ABC Staging': Remote process messages: Total 9 (delta 0), reused 0 (delta 0)
[14:46:20]i:	 [Collecting changes in 3 VCS roots] VCS root 'Bitcoin ABC Staging': git fetch ssh://vcs@reviews.bitcoinabc.org:2221/source/bitcoin-abc-staging.git finished
[14:46:20]i:	 [Collecting changes in 3 VCS roots] Done collecting changes for 'Bitcoin ABC Staging': 1 changes collected 1 changes persisted, total time: 13s,016ms, persisting time: 37ms
[14:46:20] :	 [Collecting changes in 3 VCS roots] Compute revision for 'Bitcoin ABC Staging'
[14:46:20] :		 [Compute revision for 'Bitcoin ABC Staging'] Upper limit revision: 6a9b912eeeef7ec26e27f1f05895aa2221b60d44
[14:46:20]i:		 [Compute revision for 'Bitcoin ABC Staging'] MaxModId = 20610
[14:46:20] :		 [Compute revision for 'Bitcoin ABC Staging'] Latest commit attached to build configuration: 6a9b912eeeef7ec26e27f1f05895aa2221b60d44
[14:46:20] :		 [Compute revision for 'Bitcoin ABC Staging'] Computed revision: 6a9b912eeeef7ec26e27f1f05895aa2221b60d44
[14:47:30] : The build is removed from the queue to be prepared for the start
[14:47:32]W: This build has not been started because some of the builds it depends on have failed
[14:47:32]E: Snapshot dependency "Automated Deployments / Bitcoin ABC Developer Tools / Bitcoin ABC Diff Base Image" failed

Snippet of first build failure:

[22:43:43] :	 [Step 2/2] [78/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/rcu_tests.cpp.o
[22:43:44] :	 [Step 2/2] [79/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/reverselock_tests.cpp.o
[22:43:48] :	 [Step 2/2] [80/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/radix_tests.cpp.o
[22:43:51] :	 [Step 2/2] [81/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/sanity_tests.cpp.o
[22:43:52] :	 [Step 2/2] [82/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/rpc_server_tests.cpp.o
[22:43:53] :	 [Step 2/2] [83/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/scheduler_tests.cpp.o
[22:43:54] :	 [Step 2/2] [84/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/rwcollection_tests.cpp.o
[22:43:57] :	 [Step 2/2] [85/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/schnorr_tests.cpp.o
[22:43:57] :	 [Step 2/2] [86/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/script_bitfield_tests.cpp.o
[22:44:01] :	 [Step 2/2] [87/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/script_commitment_tests.cpp.o
[22:44:02] :	 [Step 2/2] [88/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/rpc_tests.cpp.o
[22:44:08] :	 [Step 2/2] [89/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/scriptnum_tests.cpp.o
[22:44:08] :	 [Step 2/2] [90/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/script_p2sh_tests.cpp.o
[22:44:11] :	 [Step 2/2] [91/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/sigcache_tests.cpp.o
[22:44:12] :	 [Step 2/2] [92/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/serialize_tests.cpp.o
[22:44:13] :	 [Step 2/2] [93/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/script_standard_tests.cpp.o
[22:44:15] :	 [Step 2/2] [94/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/sigencoding_tests.cpp.o
[22:44:20] :	 [Step 2/2] [95/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/sighashtype_tests.cpp.o
[22:44:22] :	 [Step 2/2] [96/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/sighash_tests.cpp.o
[22:44:24] :	 [Step 2/2] [97/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/skiplist_tests.cpp.o
[22:44:25] :	 [Step 2/2] [98/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/sync_tests.cpp.o
[22:44:25] :	 [Step 2/2] [99/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/sigcheckcount_tests.cpp.o
[22:44:26] :	 [Step 2/2] [100/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/sigopcount_tests.cpp.o
[22:44:28] :	 [Step 2/2] [101/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/streams_tests.cpp.o
[22:44:34] :	 [Step 2/2] [102/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/timedata_tests.cpp.o
[22:44:36] :	 [Step 2/2] [103/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/torcontrol_tests.cpp.o
[22:44:39] :	 [Step 2/2] [104/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/txindex_tests.cpp.o
[22:44:41] :	 [Step 2/2] [105/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/txvalidation_tests.cpp.o
[22:44:45] :	 [Step 2/2] [106/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/uint256_tests.cpp.o
[22:44:46] :	 [Step 2/2] [107/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/transaction_tests.cpp.o
[22:44:47] :	 [Step 2/2] [108/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/undo_tests.cpp.o
[22:44:48] :	 [Step 2/2] [109/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/txvalidationcache_tests.cpp.o
[22:44:50] :	 [Step 2/2] [110/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/util_threadnames_tests.cpp.o
[22:44:52] :	 [Step 2/2] [111/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/work_comparator_tests.cpp.o
[22:44:59] :	 [Step 2/2] [112/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/validation_block_tests.cpp.o
[22:44:59] :	 [Step 2/2] [113/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/__/rpc/test/server_tests.cpp.o
[22:45:01] :	 [Step 2/2] [114/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/versionbits_tests.cpp.o
[22:45:03] :	 [Step 2/2] [115/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/db_tests.cpp.o
[22:45:05] :	 [Step 2/2] [116/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/validation_tests.cpp.o
[22:45:18] :	 [Step 2/2] [117/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/init_tests.cpp.o
[22:45:20] :	 [Step 2/2] [118/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/psbt_wallet_tests.cpp.o
[22:45:21] :	 [Step 2/2] [119/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/wallet_crypto_tests.cpp.o
[22:45:21] :	 [Step 2/2] [120/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/coinselector_tests.cpp.o
[22:45:23] :	 [Step 2/2] [121/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/walletdb_tests.cpp.o
[22:45:24] :	 [Step 2/2] [122/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/script_tests.cpp.o
[22:45:24] :	 [Step 2/2] In file included from /usr/include/boost/test/unit_test.hpp:19,
[22:45:24] :	 [Step 2/2]                  from ../src/test/script_tests.cpp:29:
[22:45:24] :	 [Step 2/2] ../src/test/script_tests.cpp: In member function ‘void script_tests::script_build::test_method()’:
[22:45:24] :	 [Step 2/2] ../src/test/script_tests.cpp:573:22: note: variable tracking size limit exceeded with -fvar-tracking-assignments, retrying without
[22:45:24] :	 [Step 2/2]  BOOST_AUTO_TEST_CASE(script_build) {
[22:45:24] :	 [Step 2/2]                       ^~~~~~~~~~~~
[22:45:24] :	 [Step 2/2] [123/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/util_tests.cpp.o
[22:45:25] :	 [Step 2/2] [124/125] Building CXX object src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/wallet_tests.cpp.o
[22:45:27] :	 [Step 2/2] [125/125] Linking CXX executable src/test/test_bitcoin
[22:45:27] :	 [Step 2/2] FAILED: src/test/test_bitcoin 
[22:45:27] :	 [Step 2/2] : && /usr/bin/c++  -g -O2  -fuse-ld=gold -Wl,-z,relro -Wl,-z,now -pie src/test/CMakeFiles/test_bitcoin.dir/jsonutil.cpp.o src/test/CMakeFiles/test_bitcoin.dir/main.cpp.o src/test/CMakeFiles/test_bitcoin.dir/scriptflags.cpp.o src/test/CMakeFiles/test_bitcoin.dir/sigutil.cpp.o src/test/CMakeFiles/test_bitcoin.dir/setup_common.cpp.o src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/init_test_fixture.cpp.o src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/wallet_test_fixture.cpp.o src/test/CMakeFiles/test_bitcoin.dir/activation_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/addrman_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/allocator_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/amount_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/arith_uint256_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/avalanche_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/base32_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/base58_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/base64_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/bip32_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/bitmanip_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/blockchain_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/blockcheck_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/blockencodings_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/blockfilter_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/blockindex_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/blockstatus_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/bloom_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/bswap_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/cashaddr_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/cashaddrenc_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/checkdatasig_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/checkpoints_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/checkqueue_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/coins_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/compress_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/config_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/core_io_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/crypto_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/cuckoocache_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/dbwrapper_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/denialofservice_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/descriptor_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/dstencode_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/excessiveblock_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/feerate_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/finalization_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/flatfile_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/fs_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/getarg_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/hash_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/inv_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/key_io_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/key_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/lcg_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/limitedmap_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/mempool_policy_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/mempool_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/merkle_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/merkleblock_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/miner_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/monolith_opcodes_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/multisig_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/net_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/netbase_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/op_reversebytes_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/pmt_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/policyestimator_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/pow_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/prevector_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/radix_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/raii_event_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/random_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/rcu_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/reverselock_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/rpc_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/rpc_server_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/rwcollection_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/sanity_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/scheduler_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/schnorr_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/script_bitfield_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/script_commitment_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/script_p2sh_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/script_standard_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/script_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/scriptnum_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/serialize_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/sigcache_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/sigencoding_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/sighash_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/sighashtype_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/sigcheckcount_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/sigopcount_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/skiplist_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/streams_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/sync_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/timedata_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/torcontrol_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/transaction_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/txindex_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/txvalidation_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/txvalidationcache_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/uint256_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/undo_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/util_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/util_threadnames_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/validation_block_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/validation_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/versionbits_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/work_comparator_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/__/rpc/test/server_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/db_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/coinselector_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/init_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/psbt_wallet_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/wallet_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/walletdb_tests.cpp.o src/test/CMakeFiles/test_bitcoin.dir/__/wallet/test/wallet_crypto_tests.cpp.o  -o src/test/test_bitcoin  -Wl,-rpath,/home/teamcity/buildAgent/work/jailed-build/bitcoin-abc/build/src /usr/lib/x86_64-linux-gnu/libboost_unit_test_framework.so src/librpcclient.a src/libserver.a src/libbitcoinconsensus.so.0.0.0 src/wallet/libwallet.a src/libserver.a src/wallet/libwallet.a src/leveldb/libleveldb.a src/leveldb/libleveldb-sse4.2.a src/leveldb/libmemenv.a /usr/lib/x86_64-linux-gnu/libevent_pthreads.so /usr/lib/x86_64-linux-gnu/libminiupnpc.so src/zmq/libzmq.a /usr/lib/x86_64-linux-gnu/libzmq.so /usr/lib/x86_64-linux-gnu/libevent.so /usr/lib/x86_64-linux-gnu/libdb_cxx.so src/libbitcoinconsensus.a src/libscript.a src/libcommon.a src/libutil.a src/univalue/libunivalue.a src/crypto/libcrypto.a /usr/lib/x86_64-linux-gnu/libcrypto.so src/crypto/libcrypto_sse4.1.a src/crypto/libcrypto_avx2.a src/crypto/libcrypto_shani.a /usr/lib/x86_64-linux-gnu/libboost_filesystem.so /usr/lib/x86_64-linux-gnu/libboost_thread.so /usr/lib/x86_64-linux-gnu/libboost_chrono.so /usr/lib/x86_64-linux-gnu/libboost_system.so /usr/lib/x86_64-linux-gnu/libboost_date_time.so /usr/lib/x86_64-linux-gnu/libboost_atomic.so -pthread src/secp256k1/libsecp256k1.a && :
[22:45:27] :	 [Step 2/2] collect2: error: ld returned 1 exit status
[22:45:27] :	 [Step 2/2] ninja: build stopped: subcommand failed.
[22:45:27]W:	 [Step 2/2] Process exited with code 1
[22:45:27]E:	 [Step 2/2] Process exited with code 1 (Step: Command Line)
Fabien added inline comments.
src/rpc/avalanche.cpp
61 ↗(On Diff #17452)

Fair enough.

src/validation.cpp
4273 ↗(On Diff #17452)

No big deal, it's removed in the next diff anyway.

test/functional/abc-p2p-avalanche.py
161 ↗(On Diff #17452)

Ah, I got the "fork 2 blocks deep" (missing "s" by the way) as 2 blocks long forked chain, not a 2 blocks reorg.

This revision is now accepted and ready to land.Apr 8 2020, 11:34
This revision was landed with ongoing or failed builds.Apr 8 2020, 12:55
This revision was automatically updated to reflect the committed changes.