-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: improvements for v19, v20 and dip3 - fire up test chains by first block 5/n #6269
Changes from all commits
e0d97cf
4b4001b
1d96fbf
3fffb0c
0add6bc
8639298
b3e9e5c
f01338f
6030611
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -48,23 +48,10 @@ static bool CheckSpecialTxInner(CDeterministicMNManager& dmnman, const Chainstat | |
case TRANSACTION_QUORUM_COMMITMENT: | ||
return llmq::CheckLLMQCommitment(dmnman, chainman, tx, pindexPrev, state); | ||
case TRANSACTION_MNHF_SIGNAL: | ||
if (!DeploymentActiveAfter(pindexPrev, consensusParams, Consensus::DEPLOYMENT_V20)) { | ||
return state.Invalid(TxValidationResult::TX_CONSENSUS, "mnhf-before-v20"); | ||
} | ||
return CheckMNHFTx(chainman, qman, tx, pindexPrev, state); | ||
case TRANSACTION_ASSET_LOCK: | ||
if (!DeploymentActiveAfter(pindexPrev, consensusParams, Consensus::DEPLOYMENT_V20)) { | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. why keeping similar checks for "unlock" and "mnhf" if we drop this one? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @UdjinM6 don't we normally keep checks like this? for stuff like new devnets, or in case someone is sending us a bad fork I guess? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. what will happen if someone will send us a bad fork for devnet? If fork will be accepted - that's fine, whatever it has asset-unlock/mnehf/etc transaction or not. we have chainlocks also. That's important to keep conditions like that if they change behavior incompatible way. For example DIP0001 has not only introduced a bigger blocks size, but also introduced a limit for size of transaction and some old blocks do not satisfy that requirement. So, for that type of consensus condition we should keep it, otherwise mainnet/testnet can't re-sync properly for old blocks. But there's completely fine. Can you show in our code base any condition like that which we keep intentionally over-versions? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. also, we have all soft-forks on all devnets activated from blocks 300 (soon from block 2), so, it should not be a problem also There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. with headers-first sync and assumevalid in place these checks do not matter that much anymore and we can drop them safely imo |
||
return state.Invalid(TxValidationResult::TX_CONSENSUS, "assetlocks-before-v20"); | ||
} | ||
return CheckAssetLockUnlockTx(chainman.m_blockman, qman, tx, pindexPrev, indexes, state); | ||
case TRANSACTION_ASSET_UNLOCK: | ||
if (Params().NetworkIDString() == CBaseChainParams::REGTEST && !DeploymentActiveAfter(pindexPrev, consensusParams, Consensus::DEPLOYMENT_V20)) { | ||
// TODO: adjust functional tests to make it activated by MN_RR on regtest too | ||
return state.Invalid(TxValidationResult::TX_CONSENSUS, "assetunlocks-before-v20"); | ||
} | ||
if (Params().NetworkIDString() != CBaseChainParams::REGTEST && !DeploymentActiveAfter(pindexPrev, consensusParams, Consensus::DEPLOYMENT_MN_RR)) { | ||
return state.Invalid(TxValidationResult::TX_CONSENSUS, "assetunlocks-before-mn_rr"); | ||
} | ||
Comment on lines
-65
to
-67
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. same as before comment, re: devnets bad chain etc? |
||
return CheckAssetLockUnlockTx(chainman.m_blockman, qman, tx, pindexPrev, indexes, state); | ||
} | ||
} catch (const std::exception& e) { | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
same