Skip to content
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: make few improvements to the prover #5636

Merged
merged 8 commits into from
Jun 14, 2023

Conversation

nazarhussain
Copy link
Contributor

Motivation

Make the @lodestar/prover useful for production.

Description

  • Utilize batch request to improve performance
  • Expose api object on the root provider
  • Verify the execution compatibility on start
  • Add support for the timeout to the proxy

Partially #4706

Steps to test or reproduce

  • Run all tests

@nazarhussain nazarhussain changed the title chore: Make few improvements to the prover. chore: make few improvements to the prover. Jun 13, 2023
@github-actions
Copy link
Contributor

github-actions bot commented Jun 13, 2023

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: f8e0f18 Previous: 2485944 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 579.32 us/op 1.1071 ms/op 0.52
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 51.419 us/op 89.156 us/op 0.58
BLS verify - blst-native 1.2569 ms/op 2.1545 ms/op 0.58
BLS verifyMultipleSignatures 3 - blst-native 2.5261 ms/op 3.2877 ms/op 0.77
BLS verifyMultipleSignatures 8 - blst-native 5.6373 ms/op 7.7509 ms/op 0.73
BLS verifyMultipleSignatures 32 - blst-native 19.587 ms/op 30.310 ms/op 0.65
BLS aggregatePubkeys 32 - blst-native 26.367 us/op 35.305 us/op 0.75
BLS aggregatePubkeys 128 - blst-native 102.15 us/op 138.31 us/op 0.74
getAttestationsForBlock 72.876 ms/op 82.441 ms/op 0.88
isKnown best case - 1 super set check 268.00 ns/op 418.00 ns/op 0.64
isKnown normal case - 2 super set checks 262.00 ns/op 568.00 ns/op 0.46
isKnown worse case - 16 super set checks 263.00 ns/op 372.00 ns/op 0.71
CheckpointStateCache - add get delete 5.9880 us/op 11.510 us/op 0.52
validate gossip signedAggregateAndProof - struct 2.8121 ms/op 6.3130 ms/op 0.45
validate gossip attestation - struct 1.3629 ms/op 3.0364 ms/op 0.45
pickEth1Vote - no votes 1.3952 ms/op 2.8580 ms/op 0.49
pickEth1Vote - max votes 11.534 ms/op 20.320 ms/op 0.57
pickEth1Vote - Eth1Data hashTreeRoot value x2048 9.9375 ms/op 13.066 ms/op 0.76
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 17.638 ms/op 22.008 ms/op 0.80
pickEth1Vote - Eth1Data fastSerialize value x2048 772.39 us/op 1.2891 ms/op 0.60
pickEth1Vote - Eth1Data fastSerialize tree x2048 8.5291 ms/op 10.369 ms/op 0.82
bytes32 toHexString 752.00 ns/op 990.00 ns/op 0.76
bytes32 Buffer.toString(hex) 449.00 ns/op 654.00 ns/op 0.69
bytes32 Buffer.toString(hex) from Uint8Array 631.00 ns/op 988.00 ns/op 0.64
bytes32 Buffer.toString(hex) + 0x 433.00 ns/op 571.00 ns/op 0.76
Object access 1 prop 0.19900 ns/op 0.25300 ns/op 0.79
Map access 1 prop 0.17300 ns/op 0.21300 ns/op 0.81
Object get x1000 6.8290 ns/op 9.3170 ns/op 0.73
Map get x1000 0.67300 ns/op 0.85100 ns/op 0.79
Object set x1000 75.536 ns/op 93.217 ns/op 0.81
Map set x1000 58.544 ns/op 67.353 ns/op 0.87
Return object 10000 times 0.24920 ns/op 0.31690 ns/op 0.79
Throw Error 10000 times 4.5646 us/op 6.6877 us/op 0.68
fastMsgIdFn sha256 / 200 bytes 3.6600 us/op 5.5240 us/op 0.66
fastMsgIdFn h32 xxhash / 200 bytes 322.00 ns/op 515.00 ns/op 0.63
fastMsgIdFn h64 xxhash / 200 bytes 475.00 ns/op 642.00 ns/op 0.74
fastMsgIdFn sha256 / 1000 bytes 12.097 us/op 15.972 us/op 0.76
fastMsgIdFn h32 xxhash / 1000 bytes 439.00 ns/op 634.00 ns/op 0.69
fastMsgIdFn h64 xxhash / 1000 bytes 539.00 ns/op 694.00 ns/op 0.78
fastMsgIdFn sha256 / 10000 bytes 105.03 us/op 139.14 us/op 0.75
fastMsgIdFn h32 xxhash / 10000 bytes 2.0190 us/op 2.4600 us/op 0.82
fastMsgIdFn h64 xxhash / 10000 bytes 1.4730 us/op 1.7660 us/op 0.83
enrSubnets - fastDeserialize 64 bits 1.6480 us/op 1.9980 us/op 0.82
enrSubnets - ssz BitVector 64 bits 559.00 ns/op 753.00 ns/op 0.74
enrSubnets - fastDeserialize 4 bits 189.00 ns/op 285.00 ns/op 0.66
enrSubnets - ssz BitVector 4 bits 564.00 ns/op 741.00 ns/op 0.76
prioritizePeers score -10:0 att 32-0.1 sync 2-0 108.98 us/op 135.21 us/op 0.81
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 156.41 us/op 221.11 us/op 0.71
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 192.19 us/op 288.48 us/op 0.67
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 339.86 us/op 584.32 us/op 0.58
prioritizePeers score 0:0 att 64-1 sync 4-1 449.76 us/op 647.21 us/op 0.69
array of 16000 items push then shift 1.6992 us/op 2.1986 us/op 0.77
LinkedList of 16000 items push then shift 9.6520 ns/op 12.888 ns/op 0.75
array of 16000 items push then pop 119.89 ns/op 134.97 ns/op 0.89
LinkedList of 16000 items push then pop 9.1600 ns/op 11.646 ns/op 0.79
array of 24000 items push then shift 2.4224 us/op 3.4172 us/op 0.71
LinkedList of 24000 items push then shift 9.6200 ns/op 12.264 ns/op 0.78
array of 24000 items push then pop 85.507 ns/op 114.19 ns/op 0.75
LinkedList of 24000 items push then pop 9.0000 ns/op 10.746 ns/op 0.84
intersect bitArray bitLen 8 14.045 ns/op 16.907 ns/op 0.83
intersect array and set length 8 100.06 ns/op 145.90 ns/op 0.69
intersect bitArray bitLen 128 44.541 ns/op 70.505 ns/op 0.63
intersect array and set length 128 1.3131 us/op 1.8909 us/op 0.69
Buffer.concat 32 items 3.0130 us/op 5.0370 us/op 0.60
Uint8Array.set 32 items 2.6590 us/op 4.1600 us/op 0.64
transfer serialized Status (84 B) 2.2260 us/op 3.5350 us/op 0.63
copy serialized Status (84 B) 1.8320 us/op 2.5780 us/op 0.71
transfer serialized SignedVoluntaryExit (112 B) 2.4400 us/op 2.9150 us/op 0.84
copy serialized SignedVoluntaryExit (112 B) 1.8010 us/op 2.5640 us/op 0.70
transfer serialized ProposerSlashing (416 B) 2.2280 us/op 3.2830 us/op 0.68
copy serialized ProposerSlashing (416 B) 1.9740 us/op 3.9430 us/op 0.50
transfer serialized Attestation (485 B) 2.2410 us/op 3.8770 us/op 0.58
copy serialized Attestation (485 B) 2.3900 us/op 3.7720 us/op 0.63
transfer serialized AttesterSlashing (33232 B) 2.9900 us/op 4.3850 us/op 0.68
copy serialized AttesterSlashing (33232 B) 6.6330 us/op 10.743 us/op 0.62
transfer serialized Small SignedBeaconBlock (128000 B) 3.0620 us/op 4.2330 us/op 0.72
copy serialized Small SignedBeaconBlock (128000 B) 20.923 us/op 23.924 us/op 0.87
transfer serialized Avg SignedBeaconBlock (200000 B) 4.1730 us/op 4.9370 us/op 0.85
copy serialized Avg SignedBeaconBlock (200000 B) 68.173 us/op 46.501 us/op 1.47
transfer serialized BlobsSidecar (524380 B) 3.8120 us/op 5.2370 us/op 0.73
copy serialized BlobsSidecar (524380 B) 172.29 us/op 194.31 us/op 0.89
transfer serialized Big SignedBeaconBlock (1000000 B) 3.7500 us/op 5.3890 us/op 0.70
copy serialized Big SignedBeaconBlock (1000000 B) 298.05 us/op 244.18 us/op 1.22
pass gossip attestations to forkchoice per slot 2.7703 ms/op 3.4066 ms/op 0.81
forkChoice updateHead vc 100000 bc 64 eq 0 2.1208 ms/op 2.6156 ms/op 0.81
forkChoice updateHead vc 600000 bc 64 eq 0 11.614 ms/op 19.906 ms/op 0.58
forkChoice updateHead vc 1000000 bc 64 eq 0 23.339 ms/op 28.654 ms/op 0.81
forkChoice updateHead vc 600000 bc 320 eq 0 17.418 ms/op 30.255 ms/op 0.58
forkChoice updateHead vc 600000 bc 1200 eq 0 86.403 ms/op 107.93 ms/op 0.80
forkChoice updateHead vc 600000 bc 64 eq 1000 23.510 ms/op 42.394 ms/op 0.55
forkChoice updateHead vc 600000 bc 64 eq 10000 23.301 ms/op 35.126 ms/op 0.66
forkChoice updateHead vc 600000 bc 64 eq 300000 31.028 ms/op 54.555 ms/op 0.57
computeDeltas 4.1936 ms/op 4.3590 ms/op 0.96
computeProposerBoostScoreFromBalances 1.9051 ms/op 2.3285 ms/op 0.82
altair processAttestation - 250000 vs - 7PWei normalcase 2.3327 ms/op 3.7304 ms/op 0.63
altair processAttestation - 250000 vs - 7PWei worstcase 3.3384 ms/op 5.1693 ms/op 0.65
altair processAttestation - setStatus - 1/6 committees join 137.79 us/op 193.86 us/op 0.71
altair processAttestation - setStatus - 1/3 committees join 280.02 us/op 355.87 us/op 0.79
altair processAttestation - setStatus - 1/2 committees join 379.89 us/op 515.21 us/op 0.74
altair processAttestation - setStatus - 2/3 committees join 475.71 us/op 694.43 us/op 0.69
altair processAttestation - setStatus - 4/5 committees join 659.62 us/op 836.16 us/op 0.79
altair processAttestation - setStatus - 100% committees join 764.21 us/op 1.0736 ms/op 0.71
altair processBlock - 250000 vs - 7PWei normalcase 18.012 ms/op 18.830 ms/op 0.96
altair processBlock - 250000 vs - 7PWei normalcase hashState 28.041 ms/op 35.987 ms/op 0.78
altair processBlock - 250000 vs - 7PWei worstcase 46.172 ms/op 59.098 ms/op 0.78
altair processBlock - 250000 vs - 7PWei worstcase hashState 66.405 ms/op 100.28 ms/op 0.66
phase0 processBlock - 250000 vs - 7PWei normalcase 1.9625 ms/op 3.2428 ms/op 0.61
phase0 processBlock - 250000 vs - 7PWei worstcase 28.245 ms/op 42.679 ms/op 0.66
altair processEth1Data - 250000 vs - 7PWei normalcase 470.87 us/op 649.63 us/op 0.72
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 6.8600 us/op 8.7360 us/op 0.79
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 20.995 us/op 23.126 us/op 0.91
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 8.6040 us/op 9.3420 us/op 0.92
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 6.6350 us/op 7.9740 us/op 0.83
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 74.543 us/op 93.429 us/op 0.80
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 626.95 us/op 971.73 us/op 0.65
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 910.66 us/op 1.2219 ms/op 0.75
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 932.59 us/op 1.1962 ms/op 0.78
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 2.3334 ms/op 3.2846 ms/op 0.71
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 1.6096 ms/op 1.8618 ms/op 0.86
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 3.9101 ms/op 4.9495 ms/op 0.79
Tree 40 250000 create 338.95 ms/op 440.42 ms/op 0.77
Tree 40 250000 get(125000) 194.17 ns/op 236.88 ns/op 0.82
Tree 40 250000 set(125000) 960.84 ns/op 1.1848 us/op 0.81
Tree 40 250000 toArray() 21.736 ms/op 23.377 ms/op 0.93
Tree 40 250000 iterate all - toArray() + loop 21.915 ms/op 23.002 ms/op 0.95
Tree 40 250000 iterate all - get(i) 74.391 ms/op 88.924 ms/op 0.84
MutableVector 250000 create 11.486 ms/op 11.599 ms/op 0.99
MutableVector 250000 get(125000) 6.2910 ns/op 7.6330 ns/op 0.82
MutableVector 250000 set(125000) 255.72 ns/op 299.66 ns/op 0.85
MutableVector 250000 toArray() 3.0788 ms/op 3.6402 ms/op 0.85
MutableVector 250000 iterate all - toArray() + loop 3.1988 ms/op 3.6062 ms/op 0.89
MutableVector 250000 iterate all - get(i) 1.5288 ms/op 1.9122 ms/op 0.80
Array 250000 create 2.6883 ms/op 3.1253 ms/op 0.86
Array 250000 clone - spread 1.1257 ms/op 1.3298 ms/op 0.85
Array 250000 get(125000) 0.57700 ns/op 0.70300 ns/op 0.82
Array 250000 set(125000) 0.63300 ns/op 0.76000 ns/op 0.83
Array 250000 iterate all - loop 89.549 us/op 98.102 us/op 0.91
effectiveBalanceIncrements clone Uint8Array 300000 37.279 us/op 40.109 us/op 0.93
effectiveBalanceIncrements clone MutableVector 300000 348.00 ns/op 420.00 ns/op 0.83
effectiveBalanceIncrements rw all Uint8Array 300000 168.16 us/op 201.96 us/op 0.83
effectiveBalanceIncrements rw all MutableVector 300000 84.592 ms/op 94.573 ms/op 0.89
phase0 afterProcessEpoch - 250000 vs - 7PWei 116.18 ms/op 134.86 ms/op 0.86
phase0 beforeProcessEpoch - 250000 vs - 7PWei 43.481 ms/op 49.078 ms/op 0.89
altair processEpoch - mainnet_e81889 309.84 ms/op 377.55 ms/op 0.82
mainnet_e81889 - altair beforeProcessEpoch 53.697 ms/op 77.893 ms/op 0.69
mainnet_e81889 - altair processJustificationAndFinalization 18.548 us/op 23.316 us/op 0.80
mainnet_e81889 - altair processInactivityUpdates 5.7230 ms/op 6.6062 ms/op 0.87
mainnet_e81889 - altair processRewardsAndPenalties 68.013 ms/op 74.621 ms/op 0.91
mainnet_e81889 - altair processRegistryUpdates 2.6160 us/op 3.8610 us/op 0.68
mainnet_e81889 - altair processSlashings 518.00 ns/op 529.00 ns/op 0.98
mainnet_e81889 - altair processEth1DataReset 541.00 ns/op 524.00 ns/op 1.03
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.2596 ms/op 1.3311 ms/op 0.95
mainnet_e81889 - altair processSlashingsReset 4.4760 us/op 4.9260 us/op 0.91
mainnet_e81889 - altair processRandaoMixesReset 5.0620 us/op 6.1240 us/op 0.83
mainnet_e81889 - altair processHistoricalRootsUpdate 685.00 ns/op 1.3750 us/op 0.50
mainnet_e81889 - altair processParticipationFlagUpdates 3.8860 us/op 3.5330 us/op 1.10
mainnet_e81889 - altair processSyncCommitteeUpdates 926.00 ns/op 814.00 ns/op 1.14
mainnet_e81889 - altair afterProcessEpoch 127.90 ms/op 153.61 ms/op 0.83
phase0 processEpoch - mainnet_e58758 359.65 ms/op 417.58 ms/op 0.86
mainnet_e58758 - phase0 beforeProcessEpoch 131.45 ms/op 161.61 ms/op 0.81
mainnet_e58758 - phase0 processJustificationAndFinalization 17.600 us/op 24.710 us/op 0.71
mainnet_e58758 - phase0 processRewardsAndPenalties 59.813 ms/op 76.635 ms/op 0.78
mainnet_e58758 - phase0 processRegistryUpdates 8.3300 us/op 12.594 us/op 0.66
mainnet_e58758 - phase0 processSlashings 491.00 ns/op 904.00 ns/op 0.54
mainnet_e58758 - phase0 processEth1DataReset 622.00 ns/op 767.00 ns/op 0.81
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.0110 ms/op 1.2613 ms/op 0.80
mainnet_e58758 - phase0 processSlashingsReset 3.6330 us/op 6.1840 us/op 0.59
mainnet_e58758 - phase0 processRandaoMixesReset 4.4630 us/op 5.8220 us/op 0.77
mainnet_e58758 - phase0 processHistoricalRootsUpdate 739.00 ns/op 1.0580 us/op 0.70
mainnet_e58758 - phase0 processParticipationRecordUpdates 4.3060 us/op 4.8340 us/op 0.89
mainnet_e58758 - phase0 afterProcessEpoch 96.161 ms/op 136.17 ms/op 0.71
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.2273 ms/op 1.4377 ms/op 0.85
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.4934 ms/op 1.8377 ms/op 0.81
altair processInactivityUpdates - 250000 normalcase 24.004 ms/op 24.398 ms/op 0.98
altair processInactivityUpdates - 250000 worstcase 25.013 ms/op 29.056 ms/op 0.86
phase0 processRegistryUpdates - 250000 normalcase 6.9600 us/op 7.7270 us/op 0.90
phase0 processRegistryUpdates - 250000 badcase_full_deposits 238.99 us/op 261.80 us/op 0.91
phase0 processRegistryUpdates - 250000 worstcase 0.5 125.53 ms/op 141.28 ms/op 0.89
altair processRewardsAndPenalties - 250000 normalcase 65.039 ms/op 75.446 ms/op 0.86
altair processRewardsAndPenalties - 250000 worstcase 68.013 ms/op 74.837 ms/op 0.91
phase0 getAttestationDeltas - 250000 normalcase 6.6311 ms/op 8.4012 ms/op 0.79
phase0 getAttestationDeltas - 250000 worstcase 6.5436 ms/op 8.8813 ms/op 0.74
phase0 processSlashings - 250000 worstcase 3.3328 ms/op 3.9880 ms/op 0.84
altair processSyncCommitteeUpdates - 250000 171.07 ms/op 208.92 ms/op 0.82
BeaconState.hashTreeRoot - No change 263.00 ns/op 328.00 ns/op 0.80
BeaconState.hashTreeRoot - 1 full validator 52.830 us/op 62.666 us/op 0.84
BeaconState.hashTreeRoot - 32 full validator 511.77 us/op 688.96 us/op 0.74
BeaconState.hashTreeRoot - 512 full validator 5.0058 ms/op 7.2098 ms/op 0.69
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 68.484 us/op 73.337 us/op 0.93
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 850.67 us/op 1.1711 ms/op 0.73
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 11.347 ms/op 13.874 ms/op 0.82
BeaconState.hashTreeRoot - 1 balances 48.420 us/op 58.741 us/op 0.82
BeaconState.hashTreeRoot - 32 balances 434.42 us/op 604.18 us/op 0.72
BeaconState.hashTreeRoot - 512 balances 4.2507 ms/op 5.3274 ms/op 0.80
BeaconState.hashTreeRoot - 250000 balances 75.537 ms/op 93.648 ms/op 0.81
aggregationBits - 2048 els - zipIndexesInBitList 15.545 us/op 20.219 us/op 0.77
regular array get 100000 times 43.688 us/op 53.764 us/op 0.81
wrappedArray get 100000 times 32.873 us/op 56.551 us/op 0.58
arrayWithProxy get 100000 times 15.850 ms/op 20.236 ms/op 0.78
ssz.Root.equals 543.00 ns/op 722.00 ns/op 0.75
byteArrayEquals 545.00 ns/op 725.00 ns/op 0.75
shuffle list - 16384 els 6.9622 ms/op 9.0379 ms/op 0.77
shuffle list - 250000 els 104.75 ms/op 126.82 ms/op 0.83
processSlot - 1 slots 9.5550 us/op 12.449 us/op 0.77
processSlot - 32 slots 1.3405 ms/op 1.8263 ms/op 0.73
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 37.334 ms/op 41.604 ms/op 0.90
getCommitteeAssignments - req 1 vs - 250000 vc 2.9273 ms/op 3.7254 ms/op 0.79
getCommitteeAssignments - req 100 vs - 250000 vc 4.1472 ms/op 5.2527 ms/op 0.79
getCommitteeAssignments - req 1000 vs - 250000 vc 4.7750 ms/op 5.6503 ms/op 0.85
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 5.1900 ns/op 5.8300 ns/op 0.89
state getBlockRootAtSlot - 250000 vs - 7PWei 651.11 ns/op 674.73 ns/op 0.96
computeProposers - vc 250000 11.653 ms/op 12.583 ms/op 0.93
computeEpochShuffling - vc 250000 106.62 ms/op 123.17 ms/op 0.87
getNextSyncCommittee - vc 250000 191.81 ms/op 215.83 ms/op 0.89
computeSigningRoot for AttestationData 15.054 us/op 16.107 us/op 0.93
hash AttestationData serialized data then Buffer.toString(base64) 2.5304 us/op 3.0323 us/op 0.83
toHexString serialized data 1.1579 us/op 1.4782 us/op 0.78
Buffer.toString(base64) 356.71 ns/op 389.48 ns/op 0.92

by benchmarkbot/action

@nazarhussain nazarhussain self-assigned this Jun 13, 2023
@nazarhussain nazarhussain marked this pull request as ready for review June 13, 2023 11:58
@nazarhussain nazarhussain requested a review from a team as a code owner June 13, 2023 11:58
@wemeetagain wemeetagain changed the title chore: make few improvements to the prover. feat: make few improvements to the prover. Jun 13, 2023
@nflaig nflaig changed the title feat: make few improvements to the prover. feat: make few improvements to the prover Jun 14, 2023
for (const {method, params} of opts.dependentRequests ?? []) {
const {payload, response} = await rawEth(network, method, params);
if (response.error || !response.result) {
for (const req of opts.dependentRequests ?? []) {
Copy link
Member

Choose a reason for hiding this comment

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

why is there opts.dependentRequests and const dependentRequests = [];, are those the same thing?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

opts.dependentRequests contains only partial requests while dependentRequests contains full payload and response.

packages/prover/src/cli/cmds/start/options.ts Show resolved Hide resolved
packages/prover/src/utils/conversion.ts Show resolved Hide resolved
packages/prover/src/utils/evm.ts Outdated Show resolved Hide resolved
packages/prover/src/constants.ts Show resolved Hide resolved
packages/prover/src/utils/rpc.ts Show resolved Hide resolved
@nazarhussain nazarhussain requested a review from nflaig June 14, 2023 17:25
Copy link
Member

@nflaig nflaig left a comment

Choose a reason for hiding this comment

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

LGTM!

@nazarhussain nazarhussain merged commit 08b82af into unstable Jun 14, 2023
@nazarhussain nazarhussain deleted the nh/prover-improvements branch June 14, 2023 17:56
@wemeetagain
Copy link
Member

🎉 This PR is included in v1.9.0 🎉

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.

3 participants