Skip to content

Commit 5a0479f

Browse files
Merge #6275: feat: bury mn_rr fork - fire up test chains by first block - 6/n
9a9d0d5 feat: drop SPORK 24 (EHF) so far as this feature works on testnet / mainnet (Konstantin Akimov) da0dc06 perf: optimize feature_mnehf.py by generating less blocks (Konstantin Akimov) 0de3923 feat: bury fork mn_rr (masternode reward reallocation) (Konstantin Akimov) Pull request description: ## Issue being fixed or feature implemented MN_RR is activated on mainnet: time to bury it! ## What was done? Hard-fork mn_rr is buried. Prior fixes are done here: #6270 and #6269 ## How Has This Been Tested? Run unit and functional tests ## 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 - [x] I have added or updated relevant unit/integration/functional/e2e tests - [x] I have made corresponding changes to the documentation - [x] I have assigned this pull request to a milestone ACKs for top commit: UdjinM6: light ACK 9a9d0d5 PastaPastaPasta: utACK 9a9d0d5 Tree-SHA512: 73ea0ca1270f15f6f1193efbaf402d476c84e9a843af85b7eae3e40199f4c943ad40f58e062b8db20e1c5c69c1a85579ebaf0722f1044ee2e1a4e7f96c58e645
2 parents a285fff + 9a9d0d5 commit 5a0479f

18 files changed

+60
-140
lines changed

src/chainparams.cpp

Lines changed: 9 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,8 @@ class CMainParams : public CChainParams {
193193
consensus.DIP0024QuorumsHeight = 1738698; // 000000000000001aa25181e4c466e593992c98f9eb21c69ee757b8bb0af50244
194194
consensus.V19Height = 1899072; // 0000000000000015e32e73052d663626327004c81c5c22cb8b42c361015c0eae
195195
consensus.V20Height = 1987776; // 000000000000001bf41cff06b76780050682ca29e61a91c391893d4745579777
196-
consensus.MinBIP9WarningHeight = 1987776 + 2016; // V20 activation height + miner confirmation window
196+
consensus.MN_RRHeight = 2128896; // 0000000000000009a9696da93d3807eb14eb00a4ff449206d689156a21b27f26
197+
consensus.MinBIP9WarningHeight = 2128896 + 2016; // mn_rr activation height + miner confirmation window
197198
consensus.powLimit = uint256S("00000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); // ~uint256(0) >> 20
198199
consensus.nPowTargetTimespan = 24 * 60 * 60; // Dash: 1 day
199200
consensus.nPowTargetSpacing = 2.5 * 60; // Dash: 2.5 minutes
@@ -208,16 +209,6 @@ class CMainParams : public CChainParams {
208209
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
209210
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].min_activation_height = 0; // No activation delay
210211

211-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].bit = 10;
212-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nStartTime = 1704067200; // January 1, 2024
213-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nTimeout = 1767225600; // January 1, 2026
214-
// NOTE: nWindowSize for MN_RR __MUST__ be greater than or equal to nSuperblockMaturityWindow for CSuperblock::GetPaymentsLimit() to work correctly
215-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nWindowSize = 4032;
216-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nThresholdStart = 3226; // 80% of 4032
217-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nThresholdMin = 2420; // 60% of 4032
218-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nFalloffCoeff = 5; // this corresponds to 10 periods
219-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].useEHF = true;
220-
221212
// The best chain should have at least this much work.
222213
consensus.nMinimumChainWork = uint256S("0x00000000000000000000000000000000000000000000988117deadb0db9cd5b8"); // 2109672
223214

@@ -388,7 +379,8 @@ class CTestNetParams : public CChainParams {
388379
consensus.DIP0024QuorumsHeight = 770730; // 0000003c43b3ae7fffe61278ca5537a0e256ebf4d709d45f0ab040271074d51e
389380
consensus.V19Height = 850100; // 000004728b8ff2a16b9d4eebb0fd61eeffadc9c7fe4b0ec0b5a739869401ab5b
390381
consensus.V20Height = 905100; // 0000020c5e0f86f385cbf8e90210de9a9fd63633f01433bf47a6b3227a2851fd
391-
consensus.MinBIP9WarningHeight = 905100 + 2016; // v19 activation height + miner confirmation window
382+
consensus.MN_RRHeight = 1066900; // 000000d05d445958a9a4ad6bdc0f4bfb25af124b2326060703373ff2d3b397e9
383+
consensus.MinBIP9WarningHeight = 1066900 + 2016; // mn_rr activation height + miner confirmation window
392384
consensus.powLimit = uint256S("00000fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); // ~uint256(0) >> 20
393385
consensus.nPowTargetTimespan = 24 * 60 * 60; // Dash: 1 day
394386
consensus.nPowTargetSpacing = 2.5 * 60; // Dash: 2.5 minutes
@@ -403,15 +395,6 @@ class CTestNetParams : public CChainParams {
403395
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
404396
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].min_activation_height = 0; // No activation delay
405397

406-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].bit = 10;
407-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nStartTime = 1693526400; // Friday, September 1, 2023 0:00:00
408-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
409-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nWindowSize = 100;
410-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nThresholdStart = 80; // 80% of 100
411-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nThresholdMin = 60; // 60% of 100
412-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nFalloffCoeff = 5; // this corresponds to 10 periods
413-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].useEHF = true;
414-
415398
// The best chain should have at least this much work.
416399
consensus.nMinimumChainWork = uint256S("0x000000000000000000000000000000000000000000000000031779704a0f54b4"); // 1069875
417400

@@ -557,7 +540,8 @@ class CDevNetParams : public CChainParams {
557540
consensus.DIP0024QuorumsHeight = 300;
558541
consensus.V19Height = 300;
559542
consensus.V20Height = 300;
560-
consensus.MinBIP9WarningHeight = 300 + 2016; // v20 activation height + miner confirmation window
543+
consensus.MN_RRHeight = 300;
544+
consensus.MinBIP9WarningHeight = 300 + 2016; // mn_rr activation height + miner confirmation window
561545
consensus.powLimit = uint256S("7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); // ~uint256(0) >> 1
562546
consensus.nPowTargetTimespan = 24 * 60 * 60; // Dash: 1 day
563547
consensus.nPowTargetSpacing = 2.5 * 60; // Dash: 2.5 minutes
@@ -572,15 +556,6 @@ class CDevNetParams : public CChainParams {
572556
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
573557
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].min_activation_height = 0; // No activation delay
574558

575-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].bit = 10;
576-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nStartTime = 1661990400; // Sep 1st, 2022
577-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
578-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nWindowSize = 120;
579-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nThresholdStart = 80; // 80% of 100
580-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nThresholdMin = 60; // 60% of 100
581-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nFalloffCoeff = 5; // this corresponds to 10 periods
582-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].useEHF = true;
583-
584559
// The best chain should have at least this much work.
585560
consensus.nMinimumChainWork = uint256S("0x000000000000000000000000000000000000000000000000000000000000000");
586561

@@ -790,6 +765,7 @@ class CRegTestParams : public CChainParams {
790765
consensus.DIP0024QuorumsHeight = 900;
791766
consensus.V19Height = 900;
792767
consensus.V20Height = 900;
768+
consensus.MN_RRHeight = 900;
793769
consensus.MinBIP9WarningHeight = 0;
794770
consensus.powLimit = uint256S("7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"); // ~uint256(0) >> 1
795771
consensus.nPowTargetTimespan = 24 * 60 * 60; // Dash: 1 day
@@ -806,15 +782,6 @@ class CRegTestParams : public CChainParams {
806782
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
807783
consensus.vDeployments[Consensus::DEPLOYMENT_TESTDUMMY].min_activation_height = 0; // No activation delay
808784

809-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].bit = 10;
810-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nStartTime = 0;
811-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nTimeout = Consensus::BIP9Deployment::NO_TIMEOUT;
812-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nWindowSize = 12;
813-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nThresholdStart = 9; // 80% of 12
814-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nThresholdMin = 7; // 60% of 7
815-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].nFalloffCoeff = 5; // this corresponds to 10 periods
816-
consensus.vDeployments[Consensus::DEPLOYMENT_MN_RR].useEHF = true;
817-
818785
// The best chain should have at least this much work.
819786
consensus.nMinimumChainWork = uint256S("0x00");
820787

@@ -1036,6 +1003,8 @@ static void MaybeUpdateHeights(const ArgsManager& args, Consensus::Params& conse
10361003
consensus.DIP0020Height = int{height};
10371004
} else if (name == "v20") {
10381005
consensus.V20Height = int{height};
1006+
} else if (name == "mn_rr") {
1007+
consensus.MN_RRHeight = int{height};
10391008
} else {
10401009
throw std::runtime_error(strprintf("Invalid name (%s) for -testactivationheight=name@height.", arg));
10411010
}

src/chainparamsbase.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ void SetupChainParamsBaseOptions(ArgsManager& argsman)
2222
argsman.AddArg("-dip3params=<activation>:<enforcement>", "Override DIP3 activation and enforcement heights (regtest-only)", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::CHAINPARAMS);
2323
argsman.AddArg("-dip8params=<activation>", "Override DIP8 activation height (regtest-only)", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::CHAINPARAMS);
2424
argsman.AddArg("-bip147height=<activation>", "Override BIP147 activation height (regtest-only)", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::CHAINPARAMS);
25-
argsman.AddArg("-testactivationheight=name@height.", "Set the activation height of 'name' (bip147, bip34, dersig, cltv, csv, brr, dip0001, dip0008, dip0020, v20). (regtest-only)", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::DEBUG_TEST);
25+
argsman.AddArg("-testactivationheight=name@height.", "Set the activation height of 'name' (bip147, bip34, dersig, cltv, csv, brr, dip0001, dip0008, dip0020, v20, mn_rr). (regtest-only)", ArgsManager::ALLOW_ANY | ArgsManager::DEBUG_ONLY, OptionsCategory::DEBUG_TEST);
2626
argsman.AddArg("-highsubsidyblocks=<n>", "The number of blocks with a higher than normal subsidy to mine at the start of a chain. Block after that height will have fixed subsidy base. (default: 0, devnet-only)", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS);
2727
argsman.AddArg("-highsubsidyfactor=<n>", "The factor to multiply the normal block subsidy by while in the highsubsidyblocks window of a chain (default: 1, devnet-only)", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS);
2828
argsman.AddArg("-llmqchainlocks=<quorum name>", "Override the default LLMQ type used for ChainLocks. Allows using ChainLocks with smaller LLMQs. (default: llmq_devnet, devnet-only)", ArgsManager::ALLOW_ANY, OptionsCategory::CHAINPARAMS);

src/consensus/params.h

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,12 @@ enum BuriedDeployment : int16_t {
3333
DEPLOYMENT_BRR,
3434
DEPLOYMENT_V19,
3535
DEPLOYMENT_V20,
36+
DEPLOYMENT_MN_RR,
3637
};
37-
constexpr bool ValidDeployment(BuriedDeployment dep) { return dep <= DEPLOYMENT_V20; }
38+
constexpr bool ValidDeployment(BuriedDeployment dep) { return dep <= DEPLOYMENT_MN_RR; }
3839

3940
enum DeploymentPos : uint16_t {
4041
DEPLOYMENT_TESTDUMMY,
41-
DEPLOYMENT_MN_RR, // Deployment of Masternode Reward Location Reallocation
4242
// NOTE: Also add new deployments to VersionBitsDeploymentInfo in deploymentinfo.cpp
4343
MAX_VERSION_BITS_DEPLOYMENTS
4444
};
@@ -144,6 +144,8 @@ struct Params {
144144
int V19Height;
145145
/** Block height at which V20 (Deployment of EHF, LLMQ Randomness Beacon) becomes active */
146146
int V20Height;
147+
/** Block height at which MN_RR (Deployment of Masternode Reward Location Reallocation) becomes active */
148+
int MN_RRHeight;
147149
/** Don't warn about unknown BIP 9 activations below this height.
148150
* This prevents us from warning about the CSV and DIP activations. */
149151
int MinBIP9WarningHeight;
@@ -209,6 +211,8 @@ struct Params {
209211
return V19Height;
210212
case DEPLOYMENT_V20:
211213
return V20Height;
214+
case DEPLOYMENT_MN_RR:
215+
return MN_RRHeight;
212216
} // no default case, so the compiler can warn about missing cases
213217
return std::numeric_limits<int>::max();
214218
}

src/deploymentinfo.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,6 @@ const struct VBDeploymentInfo VersionBitsDeploymentInfo[Consensus::MAX_VERSION_B
1111
/*.name =*/ "testdummy",
1212
/*.gbt_force =*/ true,
1313
},
14-
{
15-
/*.name =*/"mn_rr",
16-
/*.gbt_force =*/true,
17-
},
1814
};
1915

2016
std::string DeploymentName(Consensus::BuriedDeployment dep)
@@ -47,6 +43,8 @@ std::string DeploymentName(Consensus::BuriedDeployment dep)
4743
return "v19";
4844
case Consensus::DEPLOYMENT_V20:
4945
return "v20";
46+
case Consensus::DEPLOYMENT_MN_RR:
47+
return "mn_rr";
5048
} // no default case, so the compiler can warn about missing cases
5149
return "";
5250
}

src/llmq/context.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ LLMQContext::LLMQContext(CChainState& chainstate, CConnman& connman, CDeterminis
4444
llmq::quorumInstantSendManager = std::make_unique<llmq::CInstantSendManager>(*llmq::chainLocksHandler, chainstate, connman, *qman, *sigman, *shareman, sporkman, mempool, mn_sync, peerman, is_masternode, unit_tests, wipe);
4545
return llmq::quorumInstantSendManager.get();
4646
}()},
47-
ehfSignalsHandler{std::make_unique<llmq::CEHFSignalsHandler>(chainstate, mnhfman, *sigman, *shareman, mempool,
48-
*qman, sporkman, peerman)}
47+
ehfSignalsHandler{
48+
std::make_unique<llmq::CEHFSignalsHandler>(chainstate, mnhfman, *sigman, *shareman, mempool, *qman, peerman)}
4949
{
5050
}
5151

src/llmq/ehf_signals.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
#include <index/txindex.h> // g_txindex
1717
#include <net_processing.h>
1818
#include <primitives/transaction.h>
19-
#include <spork.h>
2019
#include <txmempool.h>
2120
#include <validation.h>
2221

@@ -25,14 +24,13 @@ namespace llmq {
2524

2625
CEHFSignalsHandler::CEHFSignalsHandler(CChainState& chainstate, CMNHFManager& mnhfman, CSigningManager& sigman,
2726
CSigSharesManager& shareman, CTxMemPool& mempool, const CQuorumManager& qman,
28-
const CSporkManager& sporkman, const std::unique_ptr<PeerManager>& peerman) :
27+
const std::unique_ptr<PeerManager>& peerman) :
2928
chainstate(chainstate),
3029
mnhfman(mnhfman),
3130
sigman(sigman),
3231
shareman(shareman),
3332
mempool(mempool),
3433
qman(qman),
35-
sporkman(sporkman),
3634
m_peerman(peerman)
3735
{
3836
sigman.RegisterRecoveredSigsListener(this);
@@ -48,7 +46,7 @@ void CEHFSignalsHandler::UpdatedBlockTip(const CBlockIndex* const pindexNew, boo
4846
{
4947
if (!DeploymentActiveAfter(pindexNew, Params().GetConsensus(), Consensus::DEPLOYMENT_V20)) return;
5048

51-
if (!is_masternode || (Params().IsTestChain() && !sporkman.IsSporkActive(SPORK_24_TEST_EHF))) {
49+
if (!is_masternode) {
5250
return;
5351
}
5452

src/llmq/ehf_signals.h

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
class CBlockIndex;
1313
class CChainState;
1414
class CMNHFManager;
15-
class CSporkManager;
1615
class CTxMemPool;
1716
class PeerManager;
1817

@@ -31,7 +30,6 @@ class CEHFSignalsHandler : public CRecoveredSigsListener
3130
CSigSharesManager& shareman;
3231
CTxMemPool& mempool;
3332
const CQuorumManager& qman;
34-
const CSporkManager& sporkman;
3533
const std::unique_ptr<PeerManager>& m_peerman;
3634

3735
/**
@@ -42,7 +40,7 @@ class CEHFSignalsHandler : public CRecoveredSigsListener
4240
public:
4341
explicit CEHFSignalsHandler(CChainState& chainstate, CMNHFManager& mnhfman, CSigningManager& sigman,
4442
CSigSharesManager& shareman, CTxMemPool& mempool, const CQuorumManager& qman,
45-
const CSporkManager& sporkman, const std::unique_ptr<PeerManager>& peerman);
43+
const std::unique_ptr<PeerManager>& peerman);
4644
~CEHFSignalsHandler();
4745

4846

src/rpc/blockchain.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1840,7 +1840,7 @@ RPCHelpMan getblockchaininfo()
18401840
SoftForkDescPushBack(tip, softforks, consensusParams, Consensus::DEPLOYMENT_BRR);
18411841
SoftForkDescPushBack(tip, softforks, consensusParams, Consensus::DEPLOYMENT_V19);
18421842
SoftForkDescPushBack(tip, softforks, consensusParams, Consensus::DEPLOYMENT_V20);
1843-
SoftForkDescPushBack(tip, ehfSignals, softforks, consensusParams, Consensus::DEPLOYMENT_MN_RR);
1843+
SoftForkDescPushBack(tip, softforks, consensusParams, Consensus::DEPLOYMENT_MN_RR);
18441844
SoftForkDescPushBack(tip, ehfSignals, softforks, consensusParams, Consensus::DEPLOYMENT_TESTDUMMY);
18451845

18461846
obj.pushKV("softforks", softforks);

src/spork.h

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ enum SporkId : int32_t {
4242
SPORK_19_CHAINLOCKS_ENABLED = 10018,
4343
SPORK_21_QUORUM_ALL_CONNECTED = 10020,
4444
SPORK_23_QUORUM_POSE = 10022,
45-
SPORK_24_TEST_EHF = 10023,
45+
// SPORK_24_DEPRECATED = 10023,
4646

4747
SPORK_INVALID = -1,
4848
};
@@ -76,7 +76,6 @@ struct CSporkDef
7676
MAKE_SPORK_DEF(SPORK_19_CHAINLOCKS_ENABLED, 4070908800ULL), // OFF
7777
MAKE_SPORK_DEF(SPORK_21_QUORUM_ALL_CONNECTED, 4070908800ULL), // OFF
7878
MAKE_SPORK_DEF(SPORK_23_QUORUM_POSE, 4070908800ULL), // OFF
79-
MAKE_SPORK_DEF(SPORK_24_TEST_EHF, 4070908800ULL), // OFF
8079
};
8180
#undef MAKE_SPORK_DEF
8281

src/test/block_reward_reallocation_tests.cpp

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
#include <validation.h>
1919

2020
#include <evo/deterministicmns.h>
21-
#include <evo/mnhftx.h>
2221
#include <evo/providertx.h>
2322
#include <evo/specialtx.h>
2423
#include <masternode/payments.h>
@@ -37,7 +36,7 @@ struct TestChainBRRBeforeActivationSetup : public TestChainSetup
3736
// Force fast DIP3 activation
3837
TestChainBRRBeforeActivationSetup() :
3938
TestChainSetup(497, {"-dip3params=30:50", "-testactivationheight=brr@1000", "-testactivationheight=v20@1200",
40-
"-vbparams=mn_rr:0:999999999999:0:20:16:12:5:1"})
39+
"-testactivationheight=mn_rr@2200"})
4140
{
4241
}
4342
};
@@ -230,8 +229,7 @@ BOOST_FIXTURE_TEST_CASE(block_reward_reallocation, TestChainBRRBeforeActivationS
230229
BOOST_CHECK_EQUAL(pblocktemplate->voutMasternodePayments[0].nValue, 14423624841); // 0.4999999999
231230
}
232231

233-
// Reallocation should kick-in with the superblock mined at height = 2010,
234-
// there will be 19 adjustments, 3 superblocks long each
232+
// Reallocation should kick-in with the superblock after 19 adjustments, 3 superblocks long each
235233
for ([[maybe_unused]] auto i : irange::range(19)) {
236234
for ([[maybe_unused]] auto j : irange::range(3)) {
237235
for ([[maybe_unused]] auto k : irange::range(consensus_params.nSuperblockCycle)) {
@@ -268,12 +266,6 @@ BOOST_FIXTURE_TEST_CASE(block_reward_reallocation, TestChainBRRBeforeActivationS
268266
}
269267
BOOST_CHECK(!DeploymentActiveAfter(m_node.chainman->ActiveChain().Tip(), consensus_params, Consensus::DEPLOYMENT_MN_RR));
270268

271-
// Activate EHF "MN_RR"
272-
{
273-
LOCK(cs_main);
274-
m_node.mnhf_manager->AddSignal(m_node.chainman->ActiveChain().Tip(), 10);
275-
}
276-
277269
// Reward split should stay ~75/25 after reallocation is done,
278270
// check 10 next superblocks
279271
for ([[maybe_unused]] auto i : irange::range(10)) {

0 commit comments

Comments
 (0)