Page MenuHomePhabricator

[avalanche] Add a notification handler to the peer manager
AbandonedPublic

Authored by Fabien on Sep 30 2021, 09:40.

Details

Reviewers
None
Group Reviewers
Restricted Project
Maniphest Tasks
Restricted Maniphest Task
Summary

This makes it possible to register observers without creating a dependency from the peer manager. This will be used by the processor to handle the proof conflicts without creating a circular dependency, and without having the peer manager to know about what's done with these conflicting proofs.

This is extracted from D10027.

Ref T1854.

Test Plan
ninja check-avalanche-peermanager_tests

Diff Detail

Repository
rABC Bitcoin ABC
Branch
avalanche_conflicting_proof_handler
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 16823
Build 33489: Build Diffbuild-debug · build-without-wallet · lint-circular-dependencies · build-diff · build-clang · build-clang-tidy
Build 33488: arc lint + arc unit

Event Timeline

Fabien requested review of this revision.Sep 30 2021, 09:40

Tail of the build log:

rpc_preciousblock.py                    | ✓ Passed  | 1 s
rpc_psbt.py                             | ✓ Passed  | 27 s
rpc_rawtransaction.py                   | ✓ Passed  | 14 s
rpc_scantxoutset.py                     | ✓ Passed  | 3 s
rpc_setban.py                           | ✓ Passed  | 2 s
rpc_signmessage.py                      | ✓ Passed  | 1 s
rpc_signrawtransaction.py               | ✓ Passed  | 1 s
rpc_txoutproof.py                       | ✓ Passed  | 2 s
rpc_uptime.py                           | ✓ Passed  | 1 s
rpc_users.py                            | ✓ Passed  | 6 s
rpc_whitelist.py                        | ✓ Passed  | 1 s
tool_wallet.py                          | ✓ Passed  | 6 s
wallet_abandonconflict.py               | ✓ Passed  | 9 s
wallet_address_types.py                 | ✓ Passed  | 15 s
wallet_avoidreuse.py                    | ✓ Passed  | 6 s
wallet_backup.py                        | ✓ Passed  | 31 s
wallet_balance.py                       | ✓ Passed  | 14 s
wallet_basic.py                         | ✓ Passed  | 22 s
wallet_coinbase_category.py             | ✓ Passed  | 1 s
wallet_create_tx.py                     | ✓ Passed  | 7 s
wallet_createwallet.py                  | ✓ Passed  | 2 s
wallet_createwallet.py --usecli         | ✓ Passed  | 3 s
wallet_descriptor.py                    | ✓ Passed  | 17 s
wallet_disable.py                       | ✓ Passed  | 1 s
wallet_dump.py                          | ✓ Passed  | 6 s
wallet_encryption.py                    | ✓ Passed  | 5 s
wallet_hd.py                            | ✓ Passed  | 6 s
wallet_import_rescan.py                 | ✓ Passed  | 4 s
wallet_import_with_label.py             | ✓ Passed  | 1 s
wallet_importdescriptors.py             | ✓ Passed  | 7 s
wallet_importmulti.py                   | ✓ Passed  | 3 s
wallet_importprunedfunds.py             | ✓ Passed  | 2 s
wallet_keypool.py                       | ✓ Passed  | 3 s
wallet_keypool_topup.py                 | ✓ Passed  | 2 s
wallet_labels.py                        | ✓ Passed  | 1 s
wallet_listreceivedby.py                | ✓ Passed  | 36 s
wallet_listsinceblock.py                | ✓ Passed  | 4 s
wallet_listtransactions.py              | ✓ Passed  | 16 s
wallet_multiwallet.py                   | ✓ Passed  | 41 s
wallet_multiwallet.py --usecli          | ✓ Passed  | 14 s
wallet_reorgsrestore.py                 | ✓ Passed  | 3 s
wallet_resendwallettransactions.py      | ✓ Passed  | 4 s
wallet_startup.py                       | ✓ Passed  | 2 s
wallet_txn_clone.py                     | ✓ Passed  | 2 s
wallet_txn_clone.py --mineblock         | ✓ Passed  | 3 s
wallet_txn_doublespend.py               | ✓ Passed  | 1 s
wallet_txn_doublespend.py --mineblock   | ✓ Passed  | 3 s
wallet_watchonly.py                     | ✓ Passed  | 1 s
wallet_watchonly.py --usecli            | ✓ Passed  | 1 s

ALL                                     | ✓ Passed  | 1106 s (accumulated) 
Runtime: 221 s

----------------------------------------------------------------------
Ran 8 tests in 0.009s

OK

ninja: build stopped: cannot make progress due to previous errors.
Build build-diff failed with exit code 1
Fabien planned changes to this revision.Oct 1 2021, 19:21

This is going to be the last step