Question coming from Discord dev-discussion channel:
could anyone help me run narhwal locally? Ive spent last 3 days trying to get it to work and am now stuck on one last issue. I have two primarys with 1 worker each and am sending the transaction to primary 0 worker 0 but its getting an error back from primary 1 worker 0 saying primary 1 is not set up
primary 1 is definitely set up though because its talking with primary 0 and progressing DAG rounds2024-06-14T20:15:59.710624Z WARN request{route=/narwhal.WorkerToWorker/ReportBatch remote_peer_id=42f28e83 direction=outbound}: anemo_tower::trace::on_failure: response failed error=Status code: 500 Internal Server Error Primary eb9302f0d5ad9edbfc3b08d008ff354f815830a29413d1f9438039fe74ff814b has not started yet. latency=5109 ms
here is my commitee.json which I generated using the scripts :
{ "authorities": { "omHynOXcJkn6xd9srFQu4P4gsLTdDqMif6YFQPA/fnYICGMwvYs5JOvUjUnMSoBpFbDX/Mk8HRWMT8k6QXJU7ZFVnZAmqWMbu86zqWBQVv5mIi47aWFNEaebQYh+ke+9": { "protocol_key": "omHynOXcJkn6xd9srFQu4P4gsLTdDqMif6YFQPA/fnYICGMwvYs5JOvUjUnMSoBpFbDX/Mk8HRWMT8k6QXJU7ZFVnZAmqWMbu86zqWBQVv5mIi47aWFNEaebQYh+ke+9", "protocol_key_bytes": "omHynOXcJkn6xd9srFQu4P4gsLTdDqMif6YFQPA/fnYICGMwvYs5JOvUjUnMSoBpFbDX/Mk8HRWMT8k6QXJU7ZFVnZAmqWMbu86zqWBQVv5mIi47aWFNEaebQYh+ke+9", "stake": 1, "primary_address": "/ip4/127.0.0.1/udp/3000", "network_key": "eAEuLPmdZTd5NBp3ohPxFBZku5djue5C8aE3Tff4lZw=", "hostname": "/ip4/127.0.0.1/udp/1000" }, "pVXPr9jBJVikmb4IG3OmIxvBI2fKW72Dqxdxa7AYny8oXQZrRcZucDradbad5xGPFpnIaprEqV6cLVnqKBErtYw6no5HbmxAb8bwXVgd7QfqhWmUR0lko8KPcHOJVI2A": { "protocol_key": "pVXPr9jBJVikmb4IG3OmIxvBI2fKW72Dqxdxa7AYny8oXQZrRcZucDradbad5xGPFpnIaprEqV6cLVnqKBErtYw6no5HbmxAb8bwXVgd7QfqhWmUR0lko8KPcHOJVI2A", "protocol_key_bytes": "pVXPr9jBJVikmb4IG3OmIxvBI2fKW72Dqxdxa7AYny8oXQZrRcZucDradbad5xGPFpnIaprEqV6cLVnqKBErtYw6no5HbmxAb8bwXVgd7QfqhWmUR0lko8KPcHOJVI2A", "stake": 1, "primary_address": "/ip4/127.0.0.1/udp/30001", "network_key": "65MC8NWtntv8OwjQCP81T4FYMKKUE9H5Q4A5/nT/gUs=", "hostname": "/ip4/127.0.0.1/udp/1001" } }, "epoch": 0 }
and my worker.json
{ "workers": { "omHynOXcJkn6xd9srFQu4P4gsLTdDqMif6YFQPA/fnYICGMwvYs5JOvUjUnMSoBpFbDX/Mk8HRWMT8k6QXJU7ZFVnZAmqWMbu86zqWBQVv5mIi47aWFNEaebQYh+ke+9": { "0": { "name": "tVbCtEcFJg8uI2uYr7hKNbuVu+brORJT9oQndNaPWtQ=", "transactions": "/ip4/127.0.0.1/tcp/8080/http", "worker_address": "/ip4/127.0.0.1/udp/2555" } }, "pVXPr9jBJVikmb4IG3OmIxvBI2fKW72Dqxdxa7AYny8oXQZrRcZucDradbad5xGPFpnIaprEqV6cLVnqKBErtYw6no5HbmxAb8bwXVgd7QfqhWmUR0lko8KPcHOJVI2A": { "0": { "name": "QvKOg3KP8u6bTrveYyFg6YNnOHWl8jYtZXO/V00NcB0=", "transactions": "/ip4/127.0.0.1/tcp/8081/http", "worker_address": "/ip4/127.0.0.1/udp/2556" } } }, "epoch": 0 }
my start command for primary 0
./target/debug/narwhal-node run --primary-keys ./narwhal/crucible_validators/1/validator.txt --worker-keys ./narwhal/crucible_validators/1/worker.txt --primary-network-keys ./narwhal/crucible_validators/1/network.txt --committee ./narwhal/crucible_validators/committee.json --workers ./narwhal/crucible_validators/workers.json --store ./test1 primary
my start command for worker 0
./target/debug/narwhal-node run --primary-keys ./narwhal/crucible_validators/1/validator.txt --primary-network-keys ./narwhal/crucible_validators/1/network.txt --worker-keys ./narwhal/crucible_validators/1/worker.txt --committee ./narwhal/crucible_validators/committee.json --workers ./narwhal/crucible_validators/workers.json --store ./test2 worker 0
proof the primaries are working:
2024-06-14T20:19:02.482649Z DEBUG narwhal_primary::consensus::bullshark: Processing ruoMpt4E5lb5RpEJ: C1755(0, ruoMpt4E5lb5RpEJ, E0) 2024-06-14T20:19:02.482717Z DEBUG narwhal_primary::consensus::bullshark: Leader PjLgIl7nEyBgis41: C1754(0, PjLgIl7nEyBgis41, E0) has enough support 2024-06-14T20:19:02.482758Z DEBUG narwhal_primary::consensus::bullshark: Leader PjLgIl7nEyBgis41: C1754(0, PjLgIl7nEyBgis41, E0) has enough support 2024-06-14T20:19:02.482769Z DEBUG narwhal_primary::consensus::utils: Processing sub-dag of PjLgIl7nEyBgis41: C1754(0, PjLgIl7nEyBgis41, E0) 2024-06-14T20:19:02.482779Z DEBUG narwhal_primary::consensus::utils: Sequencing PjLgIl7nEyBgis41: C1754(0, PjLgIl7nEyBgis41, E0) 2024-06-14T20:19:02.482807Z DEBUG narwhal_primary::consensus::utils: Sequencing 8gBUsyIHdZ6uLZXi: C1753(0, 8gBUsyIHdZ6uLZXi, E0) 2024-06-14T20:19:02.482824Z DEBUG narwhal_primary::consensus::utils: Sequencing +vn5QR/SryuaUuBo: C1752(0, +vn5QR/SryuaUuBo, E0) 2024-06-14T20:19:02.482844Z DEBUG request{route=/narwhal.PrimaryToPrimary/SendCertificate remote_peer_id=eb9302f0 direction=outbound}: anemo_tower::trace::on_request: started processing request 2024-06-14T20:19:02.482845Z DEBUG narwhal_primary::consensus::utils: Sequencing ag5+0YhoOV9JN8ET: C1753(1, ag5+0YhoOV9JN8ET, E0) 2024-06-14T20:19:02.482873Z DEBUG narwhal_primary::consensus::state: Certificate +vn5QR/SryuaUuBo7+qywzECHGlglIwEIACQHIGKGZk= took 0.554 seconds to be committed at round 1752 2024-06-14T20:19:02.482894Z DEBUG narwhal_primary::consensus::state: Certificate 8gBUsyIHdZ6uLZXig95KHkeRjervWuW06RNRGK7hzTU= took 0.534 seconds to be committed at round 1753 2024-06-14T20:19:02.482923Z DEBUG narwhal_primary::consensus::state: Certificate ag5+0YhoOV9JN8ETgmKTf2BXST7p6E/poyRxY7wfqtA= took 0.529 seconds to be committed at round 1753 2024-06-14T20:19:02.482940Z DEBUG narwhal_primary::consensus::state: Certificate PjLgIl7nEyBgis41wiyMESpfi3g49nJNzO3v4E3fSzY= took 0.52 seconds to be committed at round 1754 2024-06-14T20:19:02.482958Z DEBUG narwhal_primary::consensus::bullshark: Subdag has 4 certificates min_round=1752 2024-06-14T20:19:02.483078Z DEBUG narwhal_primary::consensus::bullshark: Latest commit of 1: Round 1753 2024-06-14T20:19:02.483089Z DEBUG narwhal_primary::consensus::bullshark: Latest commit of 0: Round 1754 2024-06-14T20:19:02.483100Z DEBUG narwhal_primary::consensus::state: Commit in Sequence 877 2024-06-14T20:19:02.483187Z DEBUG narwhal_executor::subscriber: No batches to fetch, payload is empty 2024-06-14T20:19:02.483175Z DEBUG request{route=/narwhal.PrimaryToPrimary/SendCertificate remote_peer_id=eb9302f0 direction=inbound}: anemo_tower::trace::on_request: started processing request 2024-06-14T20:19:02.483201Z DEBUG narwhal_primary::state_handler: state handler: received 4 sequenced certificates at round 1754