Commit 58ab8b3
fix: register NetGovernance unconditionally and tie SuperblockManager lifetime to govman
Two issues on top of the governance refactor:
1. With -disablegovernance, NetGovernance was no longer registered, so
AlreadyHave/ProcessGetData stopped suppressing governance inv items.
Always register the handler; AlreadyHave short-circuits to true when
govman isn't loaded so peers can't grow m_requested_hash_time
without a cleanup task.
2. SuperblockManager's m_loaded was sticky and the chain_helper-outlives-
govman contract was undocumented and violated by the test teardown.
SuperblockManager::Clear() now resets m_loaded; CGovernanceManager's
destructor calls m_superblocks.Clear(); ~TestingSetup resets govman
before DashChainstateSetupClose to match PrepareShutdown ordering.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>1 parent 28f339e commit 58ab8b3
6 files changed
Lines changed: 24 additions & 2 deletions
File tree
- src
- governance
- test/util
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
79 | 79 | | |
80 | 80 | | |
81 | 81 | | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
82 | 86 | | |
83 | 87 | | |
84 | 88 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
205 | 205 | | |
206 | 206 | | |
207 | 207 | | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
208 | 212 | | |
209 | 213 | | |
210 | 214 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
521 | 521 | | |
522 | 522 | | |
523 | 523 | | |
| 524 | + | |
524 | 525 | | |
525 | 526 | | |
526 | 527 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
123 | 123 | | |
124 | 124 | | |
125 | 125 | | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
126 | 131 | | |
127 | 132 | | |
128 | 133 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2270 | 2270 | | |
2271 | 2271 | | |
2272 | 2272 | | |
2273 | | - | |
2274 | 2273 | | |
| 2274 | + | |
| 2275 | + | |
| 2276 | + | |
| 2277 | + | |
| 2278 | + | |
2275 | 2279 | | |
2276 | 2280 | | |
2277 | 2281 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
303 | 303 | | |
304 | 304 | | |
305 | 305 | | |
306 | | - | |
307 | 306 | | |
308 | 307 | | |
309 | 308 | | |
| |||
432 | 431 | | |
433 | 432 | | |
434 | 433 | | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
435 | 439 | | |
436 | 440 | | |
437 | 441 | | |
| |||
0 commit comments