Skip to content

Enable execution only mode in nitro#4386

Draft
bragaigor wants to merge 6 commits intomasterfrom
braga/consensus-exec-diff-proc
Draft

Enable execution only mode in nitro#4386
bragaigor wants to merge 6 commits intomasterfrom
braga/consensus-exec-diff-proc

Conversation

@bragaigor
Copy link
Contributor

Enable execution only mode in nitro as well as consensus only mode

closes NIT-4241
relates to NIT-4202

pulls in OffchainLabs/nitro-testnode#177

@github-actions
Copy link
Contributor

github-actions bot commented Feb 14, 2026

❌ 3 Tests Failed:

Tests completed Failed Passed Skipped
4217 3 4214 0
View the top 3 failed tests by shortest run time
TestRedisProduceComplex/one_producer,_all_consumers_are_active
Stack Traces | 1.310s run time
... [CONTENT TRUNCATED: Keeping last 20 lines]
�[36mDEBUG�[0m[02-19|17:08:19.220] consumer: xack                           �[36mcid�[0m=31875e97-ffe0-4022-8839-06be612946ed �[36mmessageId�[0m=1771520898115-3
�[36mDEBUG�[0m[02-19|17:08:19.220] consumer: xack                           �[36mcid�[0m=0707ac11-a335-4f4f-856d-b513b1c5cf61 �[36mmessageId�[0m=1771520898116-1
�[36mDEBUG�[0m[02-19|17:08:19.220] consumer: xdel                           �[36mcid�[0m=8c821296-66da-4dc5-b6f2-6c5edd107e51 �[36mmessageId�[0m=1771520898115-2
�[36mDEBUG�[0m[02-19|17:08:19.220] consumer: xdel                           �[36mcid�[0m=6944d642-7b32-42af-a9ea-4eaeb9b2b781 �[36mmessageId�[0m=1771520898115-4
�[36mDEBUG�[0m[02-19|17:08:19.220] consumer: xdel                           �[36mcid�[0m=0707ac11-a335-4f4f-856d-b513b1c5cf61 �[36mmessageId�[0m=1771520898116-1
�[36mDEBUG�[0m[02-19|17:08:19.220] consumer: xdel                           �[36mcid�[0m=31875e97-ffe0-4022-8839-06be612946ed �[36mmessageId�[0m=1771520898115-3
�[36mDEBUG�[0m[02-19|17:08:19.227] Redis stream consuming                   �[36mconsumer_id�[0m=cf2758c6-b1e9-4753-b3bf-2772d777b974 �[36mmessage_id�[0m=1771520898115-5
�[36mDEBUG�[0m[02-19|17:08:19.227] consumer: setting result                 �[36mcid�[0m=cf2758c6-b1e9-4753-b3bf-2772d777b974 �[36mmsgIdInStream�[0m=1771520898115-5  �[36mresultKeyInRedis�[0m=result-key:stream:cb04a066-0e7f-43c5-8c25-309cb8972e0b.1771520898115-5
�[36mDEBUG�[0m[02-19|17:08:19.227] Redis stream consuming                   �[36mconsumer_id�[0m=59028fd5-66e7-44c2-b39b-bf32158106ef �[36mmessage_id�[0m=1771520898116-0
�[36mDEBUG�[0m[02-19|17:08:19.227] consumer: setting result                 �[36mcid�[0m=59028fd5-66e7-44c2-b39b-bf32158106ef �[36mmsgIdInStream�[0m=1771520898116-0  �[36mresultKeyInRedis�[0m=result-key:stream:cb04a066-0e7f-43c5-8c25-309cb8972e0b.1771520898116-0
�[36mDEBUG�[0m[02-19|17:08:19.228] consumer: xack                           �[36mcid�[0m=cf2758c6-b1e9-4753-b3bf-2772d777b974 �[36mmessageId�[0m=1771520898115-5
�[36mDEBUG�[0m[02-19|17:08:19.228] consumer: xack                           �[36mcid�[0m=59028fd5-66e7-44c2-b39b-bf32158106ef �[36mmessageId�[0m=1771520898116-0
�[36mDEBUG�[0m[02-19|17:08:19.228] consumer: xdel                           �[36mcid�[0m=cf2758c6-b1e9-4753-b3bf-2772d777b974 �[36mmessageId�[0m=1771520898115-5
�[36mDEBUG�[0m[02-19|17:08:19.228] consumer: xdel                           �[36mcid�[0m=59028fd5-66e7-44c2-b39b-bf32158106ef �[36mmessageId�[0m=1771520898116-0
�[33mWARN �[0m[02-19|17:08:19.229] XClaimJustID returned empty response when indicating heartbeat �[33mmsgID�[0m=1771520898115-5
�[36mDEBUG�[0m[02-19|17:08:19.268] checkResponses                           �[36mresponded�[0m=65 �[36merrored�[0m=0 �[36mchecked�[0m=100
�[36mDEBUG�[0m[02-19|17:08:19.280] redis producer: check responses starting
�[36mDEBUG�[0m[02-19|17:08:19.300] checkResponses                           �[36mresponded�[0m=35 �[36merrored�[0m=0 �[36mchecked�[0m=35
�[36mDEBUG�[0m[02-19|17:08:19.385] Error destroying a stream group          �[36merror�[0m="dial tcp 127.0.0.1:45829: connect: connection refused"
--- FAIL: TestRedisProduceComplex/one_producer,_all_consumers_are_active (1.31s)
TestVersion40
Stack Traces | 5.590s run time
... [CONTENT TRUNCATED: Keeping last 20 lines]
INFO [02-19|17:20:57.733] Imported new potential chain segment     number=28   hash=3cbec1..d713d0 blocks=1   txs=1   mgas=0.139  elapsed=52.502ms    mgasps=2.640    triediffs=139.51KiB  triedirty=0.00B
INFO [02-19|17:20:57.741] Chain head was updated                   number=28   hash=3cbec1..d713d0 root=966f0a..e5838b elapsed="362.156µs"
INFO [02-19|17:20:57.710] InboxTracker                             sequencerBatchCount=23  messageCount=70   l1Block=1284 l1Timestamp=2026-02-19T17:38:56+0000
INFO [02-19|17:20:57.735] Imported new potential chain segment     number=9    hash=9e363c..4eafd6 blocks=1   txs=1   mgas=1.935  elapsed=32.198ms    mgasps=60.080   triediffs=28.32KiB   triedirty=0.00B
INFO [02-19|17:20:57.749] Chain head was updated                   number=9    hash=9e363c..4eafd6 root=54fa1c..d6d132 elapsed="694.567µs"
INFO [02-19|17:20:57.752] Stopping work on payload                 id=0x03f70fb7130cf508 reason=delivery
INFO [02-19|17:20:57.734] InboxTracker                             sequencerBatchCount=463 messageCount=3614 l1Block=494  l1Timestamp=2026-02-19T17:20:57+0000
INFO [02-19|17:20:57.760] Submitted contract creation              hash=0xae297e1deaae4799999b94a617eb8eda24a09979924b3bcb8a3beeb06ff47d50 from=0x57Ff0F473737a1c161bfF9efDF016F7991585088 nonce=23   contract=0xB211efa485d87C29b9486E7631D3140e16D28E08 value=0
INFO [02-19|17:20:57.764] Imported new potential chain segment     number=1347 hash=253a43..fa58e5 blocks=1   txs=1   mgas=0.143  elapsed=59.382ms    mgasps=2.405    triediffs=708.33KiB  triedirty=610.11KiB
INFO [02-19|17:20:57.764] Chain head was updated                   number=1347 hash=253a43..fa58e5 root=13318b..ad9952 elapsed="106.648µs"
INFO [02-19|17:20:57.761] Starting work on payload                 id=0x03a48c034a0d8d7f
INFO [02-19|17:20:57.765] Deploying validator wallet creator contract
INFO [02-19|17:20:57.767] Writing cached state to disk             block=1   hash=b7f1ad..ae79c9 root=8448b4..050cee
INFO [02-19|17:20:57.767] Persisted trie from memory database      nodes=20  flushnodes=0 size=3.26KiB   flushsize=0.00B time="132.016µs" flushtime=0s gcnodes=0 gcsize=0.00B gctime="2.003µs"  livenodes=0    livesize=0.00B
INFO [02-19|17:20:57.767] Writing cached state to disk             block=1   hash=b7f1ad..ae79c9 root=8448b4..050cee
INFO [02-19|17:20:57.767] Persisted trie from memory database      nodes=0   flushnodes=0 size=0.00B     flushsize=0.00B time=681ns       flushtime=0s gcnodes=0 gcsize=0.00B gctime=0s         livenodes=0    livesize=0.00B
INFO [02-19|17:20:57.767] Writing snapshot state to disk           root=6b754c..7398ca
INFO [02-19|17:20:57.767] Persisted trie from memory database      nodes=0   flushnodes=0 size=0.00B     flushsize=0.00B time=521ns       flushtime=0s gcnodes=0 gcsize=0.00B gctime=0s         livenodes=0    livesize=0.00B
INFO [02-19|17:20:57.767] Blockchain stopped
--- FAIL: TestVersion40 (5.59s)
TestRedisProduceComplex
Stack Traces | 20.940s run time
=== RUN   TestRedisProduceComplex
=== PAUSE TestRedisProduceComplex
=== CONT  TestRedisProduceComplex
--- FAIL: TestRedisProduceComplex (20.94s)

📣 Thoughts on this report? Let Codecov know! | Powered by Codecov

@bragaigor bragaigor force-pushed the braga/consensus-exec-diff-proc branch from be02672 to b2f5213 Compare February 18, 2026 19:14
@codecov
Copy link

codecov bot commented Feb 18, 2026

Codecov Report

❌ Patch coverage is 1.93548% with 152 lines in your changes missing coverage. Please review.
✅ Project coverage is 32.79%. Comparing base (0b4a8fa) to head (da045ab).

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #4386      +/-   ##
==========================================
- Coverage   34.73%   32.79%   -1.95%     
==========================================
  Files         489      489              
  Lines       58125    58157      +32     
==========================================
- Hits        20190    19070    -1120     
- Misses      34347    35744    +1397     
+ Partials     3588     3343     -245     

Conversily enable consensus only mode in nitro

Signed-off-by: Igor Braga <5835477+bragaigor@users.noreply.github.com>
Signed-off-by: Igor Braga <5835477+bragaigor@users.noreply.github.com>
Signed-off-by: Igor Braga <5835477+bragaigor@users.noreply.github.com>
Signed-off-by: Igor Braga <5835477+bragaigor@users.noreply.github.com>
Signed-off-by: Igor Braga <5835477+bragaigor@users.noreply.github.com>
Signed-off-by: Igor Braga <5835477+bragaigor@users.noreply.github.com>
Comment on lines +569 to +581
if consensusNodeEnabled {
// TODO: where will chainConfig come from in the case (consensusNodeEnabled && !executionNodeEnabled) ?
var chainConfig *params.ChainConfig
if !executionNodeEnabled && l2BlockChain == nil {
genesisBlockNr := uint64(0)
chainConfig, err = chaininfo.GetChainConfig(new(big.Int).SetUint64(nodeConfig.Chain.ID), nodeConfig.Chain.Name, genesisBlockNr, nodeConfig.Chain.InfoFiles, nodeConfig.Chain.InfoJson)
if err != nil {
log.Error("failed to get chainConfig for consensus node", "err", err)
return 1
}
} else {
chainConfig = l2BlockChain.Config()
}
Copy link
Contributor Author

@bragaigor bragaigor Mar 5, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we'll probably need genesis block number to get parsedInitMSg for consensus (hardcoded above), for which we could add a new command line parameter for it and assign 0 as the default value

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant