Conversation
|
Merging to
After your PR is submitted to the merge queue, this comment will be automatically updated with its status. If the PR fails, failure details will also be posted here |
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
Node: HAPI Test (Misc) Results 157 files ± 0 1 errors 156 suites - 1 1h 13m 14s ⏱️ - 11m 0s For more details on these parsing errors, see this check. Results for commit 69b5b6a. ± Comparison against base commit f3f6ed6. This pull request removes 1 test.♻️ This comment has been updated with latest results. |
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Codecov Report❌ Patch coverage is @@ Coverage Diff @@
## main #25612 +/- ##
============================================
- Coverage 75.11% 74.84% -0.27%
- Complexity 11548 11553 +5
============================================
Files 2585 2586 +1
Lines 101419 101455 +36
Branches 11241 11245 +4
============================================
- Hits 76179 75938 -241
- Misses 21335 21616 +281
+ Partials 3905 3901 -4
... and 26 files with indirect coverage changes 🚀 New features to boost your workflow:
|
BLOCKS-mode embedded node can't sustain 10 concurrent contract deployments after heavy preceding test classes (PrecompileSCTest). Receipt polling times out with UNKNOWN on FileCreate/CryptoCreate. Signed-off-by: aderevets <artem.derevets@limechain.tech>
In BLOCKS mode the legacy BlockInfo singleton is not maintained, so ContractCallLocal queries read block number 0 from BlockRecordInfoImpl, making blockhash(block.number - 1) underflow and revert. Mirror the handle path (ParentTxnFactory) by deriving query block info from BlockStreamInfo state. Read from the immutable snapshot, not the live BlockStreamManager, whose fields are mutated off the query thread. Signed-off-by: aderevets <artem.derevets@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: aderevets <artem.derevets@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
Signed-off-by: Alex Kehayov <aleks.kehayov@limechain.tech>
Signed-off-by: Petar Tonev <petar.tonev@limechain.tech>
✅ All tests passed ✅🏷️ Commit: 69b5b6a Learn more about TestLens at testlens.app. |
Description:
Adds full support for running the consensus node with
blockStream.streamMode=BLOCKS, where only block stream files are produced — no legacy V6 record files. This PR does not change the production default; it switches the default in test configuration to validate that all code paths work correctly whenstreamMode=BLOCKSis eventually enabled in production.Test config changes:
streamMode=BLOCKS,writerMode=FILE,streamWrappedRecordBlocks=falseProduction Changes
streamMode != BLOCKS, using block-native alternatives (addInitcode,addActions,addContractSlotUsages)streamModefrom config;HandleOutput.singleTransactionRecords()provides unifiedList<SingleTransactionRecord>viaBlockRecordSource.precomputedRecords()in BLOCKS modeBlockStreamInfostate in BLOCKS mode instead of the unmaintained legacyBlockInfosingletonTest Infrastructure
streamMust*DSL verbs replacerecordStreamMust*andblockStreamMust*— dynamically route to record or block stream based onstreamModeviaStreamAssertionmarker interfaceRecordStreamItemfor existing validators; lenient mode suppresses translation-fidelity errors in no-failures assertionsstreamModeTest Changes
All
recordStreamMust*andblockStreamMust*usages migrated tostreamMust*across ~20 test files12 new BLOCKS-mode unit tests verify block-native code paths
Existing unit tests that verify legacy behavior explicitly set
streamMode=BOTHin configRemoved
overriding("blockStream.streamMode", "BOTH")calls from subprocess tests — these corrupt the shared network config without affecting the cachedHandleWorkflow.streamModeWrappedRecordHashesFlagUpgradeSubprocessTestskips in BLOCKS mode (WRB requires record stream)Related issue(s):
Fixes #25646
Notes for reviewer:
Checklist