Commit 06e761e
committed
Merge #7115: refactor: separate network and consensus logic 2b/N [sig shares]
ce11a03 refactor: Replace GetAllNodes() + RemoveAsBanned() with single RemoveNodesIf(predicate) method (UdjinM6)
cfff7cb chore: typo (UdjinM6)
3da19f8 refactor: static class members to static anonymous functions of CSigningSharesManager (Konstantin Akimov)
fa655d8 refactor: split PreVerifyBatchedSigShares to non-banning helper PreVerifySigShareQuorum and banning helper (Konstantin Akimov)
bbc8f42 refactor: final removing of PeerManager from signing_shares (Konstantin Akimov)
29e4a87 refactor: move include msg_result.h from header to source for signing_shares and cleanup (Konstantin Akimov)
4bf0308 fix: CSigningSharesManager supposed to use _active_ chain but not the chain that has been active during it's creation (Konstantin Akimov)
b18eaf2 refactor: move CSigSharesManager::RemoveBannedNodeStates inside NetSigning (Konstantin Akimov)
b8fc3fb refactor: move ProcessPendingSigShares from signing_shares to NetSigning (Konstantin Akimov)
115fe9c refactor: remove duplicated code for p2p messages QSIGSHARESINV and QGETSIGSHARES (Konstantin Akimov)
2d485c5 move out BanNode from ProcessMessageSigShare (Konstantin Akimov)
5a13f03 refactor: move ProcessMessage from signing_shares to NetSigning (Konstantin Akimov)
41ee4fe refactor: drop direct dependency of PeerManager on llmq/signing_shares (Konstantin Akimov)
8a6bb8a refactor: simplify CEHFSignalsHandler::HandleNewRecoveredSig a bit (Konstantin Akimov)
3c1c8f0 refactor: move worker threads from signing_shares to NetSigning (Konstantin Akimov)
f8cd67e refactor: move listener NotifyRecoveredSig from llmq/signing_share to net_signing (Konstantin Akimov)
Pull request description:
## Issue being fixed or feature implemented
Separation of consensus & chain code and network & node in Dash Core is blocked by tight connection of network and consensus code; in components such as llmq::CSigningManager, llmq::CSigSharesManager, coinjoin::client, coinjoin::server, governance/, llmq::CInstantSendManager, etc.
These dependencies on PeerManager blocks backport's of bitcoin related to 'kernel' project and makes circular dependencies over net_processing; it's also a blocker for bitcoin#25144
## What was done?
This PR addresses a dependency of llmq::CSigSharesManager on PeerManager, it is continuation of #6992 which addressed llmq::CSigningManager
It is a split from proof-of-concept PR #6934. Due to multiple other changes (review comments to prior PRs, ActiveContext-related refactorings, proactive signature pushing the implementation is not fully matched with original 6934, the patchset is re-created from scratch.
Prior work:
- #6959
- #6992
NOTE: this PR is not a direct blocker of chainstate / kernel so far as `CSigSharesManager` already aggregated to masternode's ActiveContext by kwvg, see #6841
## How Has This Been Tested?
Run unit & functional tests
Run linter lint-circular-dependencies.py
## Breaking Changes
N/A
## Checklist:
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have added or updated relevant unit/integration/functional/e2e tests
- [ ] I have made corresponding changes to the documentation
- [x] I have assigned this pull request to a milestone _(for repository code-owners and collaborators only)_
ACKs for top commit:
UdjinM6:
utACK ce11a03
Tree-SHA512: 01740144f9115160b5b2cc79678a61a8946d4e8f759c954bb608f4fb78e064f6538222deb370b3b40939e15a98d7146d8d49ec5e50fd7d48af34f2ccda2a49a1File tree
11 files changed
+495
-541
lines changed- src
- active
- llmq
- test/lint
11 files changed
+495
-541
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
32 | | - | |
| 32 | + | |
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
38 | 38 | | |
39 | 39 | | |
40 | | - | |
41 | | - | |
| 40 | + | |
42 | 41 | | |
43 | 42 | | |
44 | 43 | | |
| |||
64 | 63 | | |
65 | 64 | | |
66 | 65 | | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
72 | 66 | | |
73 | 67 | | |
74 | 68 | | |
75 | 69 | | |
76 | | - | |
77 | 70 | | |
78 | 71 | | |
79 | 72 | | |
80 | | - | |
81 | 73 | | |
82 | 74 | | |
83 | 75 | | |
| |||
86 | 78 | | |
87 | 79 | | |
88 | 80 | | |
89 | | - | |
90 | 81 | | |
91 | 82 | | |
92 | 83 | | |
93 | | - | |
94 | 84 | | |
95 | 85 | | |
96 | 86 | | |
| |||
118 | 108 | | |
119 | 109 | | |
120 | 110 | | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
66 | 66 | | |
67 | 67 | | |
68 | 68 | | |
69 | | - | |
| 69 | + | |
70 | 70 | | |
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
74 | 74 | | |
75 | | - | |
76 | 75 | | |
77 | 76 | | |
78 | 77 | | |
| |||
81 | 80 | | |
82 | 81 | | |
83 | 82 | | |
84 | | - | |
85 | 83 | | |
86 | 84 | | |
87 | 85 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
253 | 253 | | |
254 | 254 | | |
255 | 255 | | |
256 | | - | |
257 | | - | |
258 | | - | |
259 | 256 | | |
260 | 257 | | |
261 | 258 | | |
| |||
2199 | 2196 | | |
2200 | 2197 | | |
2201 | 2198 | | |
2202 | | - | |
| 2199 | + | |
2203 | 2200 | | |
2204 | 2201 | | |
2205 | 2202 | | |
| |||
2211 | 2208 | | |
2212 | 2209 | | |
2213 | 2210 | | |
2214 | | - | |
| 2211 | + | |
2215 | 2212 | | |
2216 | 2213 | | |
2217 | 2214 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
92 | 92 | | |
93 | 93 | | |
94 | 94 | | |
95 | | - | |
96 | 95 | | |
97 | 96 | | |
98 | 97 | | |
| |||
113 | 112 | | |
114 | 113 | | |
115 | 114 | | |
116 | | - | |
117 | | - | |
118 | | - | |
119 | | - | |
120 | | - | |
121 | | - | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
126 | 124 | | |
127 | | - | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
128 | 128 | | |
129 | | - | |
| 129 | + | |
130 | 130 | | |
131 | 131 | | |
0 commit comments