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

chore: remove redundant eventstream error listener #5798

Merged
merged 2 commits into from Jul 24, 2023

Conversation

nflaig
Copy link
Member

@nflaig nflaig commented Jul 24, 2023

Motivation

Noticed that after changes done in #5795 the error listener will always be called after socket close listener. This means that calling reject will not do anything as promise is already resolved.

As per my understanding, it was redundant before as well because the only error it would report is ECONNRESET if client disconnects which we don't want to log on the server (see previous PR #5722).

These two PRs on node further indicate that the only error event that is emitted is due to client disconnect (ECONNRESET)

If there are actual error trying to write an event to the stream on the server, it would be caught by this

} catch (e) {
reject(e as Error);
}

The server is not really concerned about anything else than writing data, if there is an error it must be detected by the client which is what we are doing already.

Invalid json data sent would be detected here

eventSource.addEventListener(topic, ((event: MessageEvent) => {
const message = eventSerdes.fromJson(topic, JSON.parse(event.data));
onEvent({type: topic, message} as BeaconEvent);
}) as EventListener);

and any other errors are caught here and reported here

eventSource.onerror = function onerror(err) {
const errEs = err as unknown as EventSourceError;
// Consider 400 and 500 status errors unrecoverable, close the eventsource
if (errEs.status === 400) {
reject(Error(`400 Invalid topics: ${errEs.message}`));
}
if (errEs.status === 500) {
reject(Error(`500 Internal Server Error: ${errEs.message}`));
}

Description

Remove redundant eventstream error listener on the server.

@nflaig nflaig requested a review from a team as a code owner July 24, 2023 15:17
@github-actions
Copy link
Contributor

github-actions bot commented Jul 24, 2023

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: a5e0b2d Previous: 7b5fc63 Ratio
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 851.04 us/op 928.53 us/op 0.92
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 82.039 us/op 82.524 us/op 0.99
BLS verify - blst-native 1.2048 ms/op 1.2695 ms/op 0.95
BLS verifyMultipleSignatures 3 - blst-native 2.4608 ms/op 2.5754 ms/op 0.96
BLS verifyMultipleSignatures 8 - blst-native 5.2977 ms/op 5.5394 ms/op 0.96
BLS verifyMultipleSignatures 32 - blst-native 19.172 ms/op 20.085 ms/op 0.95
BLS aggregatePubkeys 32 - blst-native 25.272 us/op 26.494 us/op 0.95
BLS aggregatePubkeys 128 - blst-native 99.666 us/op 103.35 us/op 0.96
getAttestationsForBlock 61.741 ms/op 57.812 ms/op 1.07
isKnown best case - 1 super set check 290.00 ns/op 302.00 ns/op 0.96
isKnown normal case - 2 super set checks 294.00 ns/op 352.00 ns/op 0.84
isKnown worse case - 16 super set checks 292.00 ns/op 401.00 ns/op 0.73
CheckpointStateCache - add get delete 4.8870 us/op 5.9660 us/op 0.82
validate api signedAggregateAndProof - struct 2.7398 ms/op 2.8671 ms/op 0.96
validate gossip signedAggregateAndProof - struct 2.7791 ms/op 2.9022 ms/op 0.96
validate api attestation - struct 1.3481 ms/op 1.3978 ms/op 0.96
validate gossip attestation - struct 1.3476 ms/op 1.4153 ms/op 0.95
pickEth1Vote - no votes 1.1353 ms/op 1.3908 ms/op 0.82
pickEth1Vote - max votes 10.165 ms/op 10.210 ms/op 1.00
pickEth1Vote - Eth1Data hashTreeRoot value x2048 8.4858 ms/op 9.0589 ms/op 0.94
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 17.224 ms/op 14.414 ms/op 1.19
pickEth1Vote - Eth1Data fastSerialize value x2048 582.28 us/op 629.42 us/op 0.93
pickEth1Vote - Eth1Data fastSerialize tree x2048 8.4814 ms/op 4.8748 ms/op 1.74
bytes32 toHexString 485.00 ns/op 592.00 ns/op 0.82
bytes32 Buffer.toString(hex) 285.00 ns/op 322.00 ns/op 0.89
bytes32 Buffer.toString(hex) from Uint8Array 430.00 ns/op 489.00 ns/op 0.88
bytes32 Buffer.toString(hex) + 0x 285.00 ns/op 314.00 ns/op 0.91
Object access 1 prop 0.15600 ns/op 0.17400 ns/op 0.90
Map access 1 prop 0.15300 ns/op 0.15800 ns/op 0.97
Object get x1000 7.6240 ns/op 7.5170 ns/op 1.01
Map get x1000 0.65500 ns/op 0.60700 ns/op 1.08
Object set x1000 53.035 ns/op 55.483 ns/op 0.96
Map set x1000 42.613 ns/op 45.855 ns/op 0.93
Return object 10000 times 0.24290 ns/op 0.25120 ns/op 0.97
Throw Error 10000 times 3.9211 us/op 3.9890 us/op 0.98
fastMsgIdFn sha256 / 200 bytes 3.3310 us/op 3.4790 us/op 0.96
fastMsgIdFn h32 xxhash / 200 bytes 332.00 ns/op 301.00 ns/op 1.10
fastMsgIdFn h64 xxhash / 200 bytes 343.00 ns/op 364.00 ns/op 0.94
fastMsgIdFn sha256 / 1000 bytes 11.325 us/op 11.819 us/op 0.96
fastMsgIdFn h32 xxhash / 1000 bytes 462.00 ns/op 436.00 ns/op 1.06
fastMsgIdFn h64 xxhash / 1000 bytes 423.00 ns/op 436.00 ns/op 0.97
fastMsgIdFn sha256 / 10000 bytes 104.30 us/op 106.58 us/op 0.98
fastMsgIdFn h32 xxhash / 10000 bytes 1.9450 us/op 2.0110 us/op 0.97
fastMsgIdFn h64 xxhash / 10000 bytes 1.3350 us/op 1.3900 us/op 0.96
enrSubnets - fastDeserialize 64 bits 1.2870 us/op 1.3180 us/op 0.98
enrSubnets - ssz BitVector 64 bits 451.00 ns/op 444.00 ns/op 1.02
enrSubnets - fastDeserialize 4 bits 174.00 ns/op 191.00 ns/op 0.91
enrSubnets - ssz BitVector 4 bits 426.00 ns/op 473.00 ns/op 0.90
prioritizePeers score -10:0 att 32-0.1 sync 2-0 134.04 us/op 107.20 us/op 1.25
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 119.12 us/op 144.11 us/op 0.83
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 154.28 us/op 192.25 us/op 0.80
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 280.21 us/op 334.58 us/op 0.84
prioritizePeers score 0:0 att 64-1 sync 4-1 328.92 us/op 367.78 us/op 0.89
array of 16000 items push then shift 1.6120 us/op 1.6426 us/op 0.98
LinkedList of 16000 items push then shift 8.8580 ns/op 9.2400 ns/op 0.96
array of 16000 items push then pop 60.539 ns/op 60.628 ns/op 1.00
LinkedList of 16000 items push then pop 8.6090 ns/op 8.9530 ns/op 0.96
array of 24000 items push then shift 2.4193 us/op 2.5240 us/op 0.96
LinkedList of 24000 items push then shift 8.8900 ns/op 9.2140 ns/op 0.96
array of 24000 items push then pop 113.95 ns/op 119.84 ns/op 0.95
LinkedList of 24000 items push then pop 8.8090 ns/op 8.8960 ns/op 0.99
intersect bitArray bitLen 8 6.7850 ns/op 7.0160 ns/op 0.97
intersect array and set length 8 53.706 ns/op 63.762 ns/op 0.84
intersect bitArray bitLen 128 54.976 ns/op 32.767 ns/op 1.68
intersect array and set length 128 821.54 ns/op 842.54 ns/op 0.98
bitArray.getTrueBitIndexes() bitLen 128 1.4120 us/op 1.8080 us/op 0.78
bitArray.getTrueBitIndexes() bitLen 248 2.4170 us/op 3.0050 us/op 0.80
bitArray.getTrueBitIndexes() bitLen 512 4.6900 us/op 6.0990 us/op 0.77
Buffer.concat 32 items 909.00 ns/op 1.0990 us/op 0.83
Uint8Array.set 32 items 1.6890 us/op 1.8240 us/op 0.93
transfer serialized Status (84 B) 1.7830 us/op 1.9150 us/op 0.93
copy serialized Status (84 B) 1.4770 us/op 1.6440 us/op 0.90
transfer serialized SignedVoluntaryExit (112 B) 1.8930 us/op 2.2100 us/op 0.86
copy serialized SignedVoluntaryExit (112 B) 1.5700 us/op 1.7950 us/op 0.87
transfer serialized ProposerSlashing (416 B) 2.0710 us/op 2.2820 us/op 0.91
copy serialized ProposerSlashing (416 B) 1.8740 us/op 2.0180 us/op 0.93
transfer serialized Attestation (485 B) 2.8860 us/op 2.1950 us/op 1.31
copy serialized Attestation (485 B) 3.2440 us/op 1.9600 us/op 1.66
transfer serialized AttesterSlashing (33232 B) 2.9900 us/op 2.2230 us/op 1.35
copy serialized AttesterSlashing (33232 B) 6.2680 us/op 4.8400 us/op 1.30
transfer serialized Small SignedBeaconBlock (128000 B) 3.1360 us/op 2.5460 us/op 1.23
copy serialized Small SignedBeaconBlock (128000 B) 13.543 us/op 12.440 us/op 1.09
transfer serialized Avg SignedBeaconBlock (200000 B) 2.9930 us/op 2.9510 us/op 1.01
copy serialized Avg SignedBeaconBlock (200000 B) 18.660 us/op 19.549 us/op 0.95
transfer serialized BlobsSidecar (524380 B) 3.4280 us/op 2.7890 us/op 1.23
copy serialized BlobsSidecar (524380 B) 138.93 us/op 82.319 us/op 1.69
transfer serialized Big SignedBeaconBlock (1000000 B) 3.0440 us/op 3.1810 us/op 0.96
copy serialized Big SignedBeaconBlock (1000000 B) 155.20 us/op 165.01 us/op 0.94
pass gossip attestations to forkchoice per slot 2.0941 ms/op 2.1672 ms/op 0.97
forkChoice updateHead vc 100000 bc 64 eq 0 2.3663 ms/op 2.1792 ms/op 1.09
forkChoice updateHead vc 600000 bc 64 eq 0 11.071 ms/op 14.252 ms/op 0.78
forkChoice updateHead vc 1000000 bc 64 eq 0 18.499 ms/op 20.409 ms/op 0.91
forkChoice updateHead vc 600000 bc 320 eq 0 16.141 ms/op 17.188 ms/op 0.94
forkChoice updateHead vc 600000 bc 1200 eq 0 81.455 ms/op 95.200 ms/op 0.86
forkChoice updateHead vc 600000 bc 64 eq 1000 18.624 ms/op 22.563 ms/op 0.83
forkChoice updateHead vc 600000 bc 64 eq 10000 20.653 ms/op 26.018 ms/op 0.79
forkChoice updateHead vc 600000 bc 64 eq 300000 27.724 ms/op 35.383 ms/op 0.78
computeDeltas 2.9849 ms/op 3.2024 ms/op 0.93
computeProposerBoostScoreFromBalances 388.34 us/op 402.03 us/op 0.97
altair processAttestation - 250000 vs - 7PWei normalcase 2.9286 ms/op 2.6679 ms/op 1.10
altair processAttestation - 250000 vs - 7PWei worstcase 3.4817 ms/op 4.0855 ms/op 0.85
altair processAttestation - setStatus - 1/6 committees join 238.53 us/op 289.58 us/op 0.82
altair processAttestation - setStatus - 1/3 committees join 468.41 us/op 481.14 us/op 0.97
altair processAttestation - setStatus - 1/2 committees join 638.68 us/op 717.63 us/op 0.89
altair processAttestation - setStatus - 2/3 committees join 712.78 us/op 841.16 us/op 0.85
altair processAttestation - setStatus - 4/5 committees join 1.0767 ms/op 1.1368 ms/op 0.95
altair processAttestation - setStatus - 100% committees join 1.2474 ms/op 1.2235 ms/op 1.02
altair processBlock - 250000 vs - 7PWei normalcase 9.3656 ms/op 10.250 ms/op 0.91
altair processBlock - 250000 vs - 7PWei normalcase hashState 16.735 ms/op 17.765 ms/op 0.94
altair processBlock - 250000 vs - 7PWei worstcase 37.499 ms/op 43.224 ms/op 0.87
altair processBlock - 250000 vs - 7PWei worstcase hashState 58.492 ms/op 60.572 ms/op 0.97
phase0 processBlock - 250000 vs - 7PWei normalcase 2.1622 ms/op 2.0978 ms/op 1.03
phase0 processBlock - 250000 vs - 7PWei worstcase 32.082 ms/op 30.170 ms/op 1.06
altair processEth1Data - 250000 vs - 7PWei normalcase 666.24 us/op 536.29 us/op 1.24
getExpectedWithdrawals 250000 eb:1,eth1:1,we:0,wn:0,smpl:15 15.686 us/op 10.409 us/op 1.51
getExpectedWithdrawals 250000 eb:0.95,eth1:0.1,we:0.05,wn:0,smpl:219 73.490 us/op 78.573 us/op 0.94
getExpectedWithdrawals 250000 eb:0.95,eth1:0.3,we:0.05,wn:0,smpl:42 26.441 us/op 21.144 us/op 1.25
getExpectedWithdrawals 250000 eb:0.95,eth1:0.7,we:0.05,wn:0,smpl:18 20.754 us/op 15.205 us/op 1.36
getExpectedWithdrawals 250000 eb:0.1,eth1:0.1,we:0,wn:0,smpl:1020 181.78 us/op 163.73 us/op 1.11
getExpectedWithdrawals 250000 eb:0.03,eth1:0.03,we:0,wn:0,smpl:11777 1.1456 ms/op 1.3000 ms/op 0.88
getExpectedWithdrawals 250000 eb:0.01,eth1:0.01,we:0,wn:0,smpl:16384 1.9976 ms/op 1.8612 ms/op 1.07
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,smpl:16384 1.8920 ms/op 1.9591 ms/op 0.97
getExpectedWithdrawals 250000 eb:0,eth1:0,we:0,wn:0,nocache,smpl:16384 4.0072 ms/op 3.5362 ms/op 1.13
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,smpl:16384 2.5538 ms/op 2.6070 ms/op 0.98
getExpectedWithdrawals 250000 eb:0,eth1:1,we:0,wn:0,nocache,smpl:16384 6.3857 ms/op 6.0792 ms/op 1.05
Tree 40 250000 create 361.66 ms/op 376.00 ms/op 0.96
Tree 40 250000 get(125000) 206.04 ns/op 216.22 ns/op 0.95
Tree 40 250000 set(125000) 929.75 ns/op 987.19 ns/op 0.94
Tree 40 250000 toArray() 20.305 ms/op 21.016 ms/op 0.97
Tree 40 250000 iterate all - toArray() + loop 21.572 ms/op 20.479 ms/op 1.05
Tree 40 250000 iterate all - get(i) 72.215 ms/op 74.251 ms/op 0.97
MutableVector 250000 create 15.821 ms/op 10.605 ms/op 1.49
MutableVector 250000 get(125000) 7.0920 ns/op 6.7190 ns/op 1.06
MutableVector 250000 set(125000) 298.23 ns/op 275.72 ns/op 1.08
MutableVector 250000 toArray() 3.4775 ms/op 2.9547 ms/op 1.18
MutableVector 250000 iterate all - toArray() + loop 3.0486 ms/op 2.9577 ms/op 1.03
MutableVector 250000 iterate all - get(i) 1.5558 ms/op 1.5534 ms/op 1.00
Array 250000 create 3.0420 ms/op 2.6235 ms/op 1.16
Array 250000 clone - spread 1.2662 ms/op 1.2456 ms/op 1.02
Array 250000 get(125000) 0.63700 ns/op 0.62600 ns/op 1.02
Array 250000 set(125000) 0.72000 ns/op 0.70200 ns/op 1.03
Array 250000 iterate all - loop 85.207 us/op 89.518 us/op 0.95
effectiveBalanceIncrements clone Uint8Array 300000 36.584 us/op 30.353 us/op 1.21
effectiveBalanceIncrements clone MutableVector 300000 400.00 ns/op 367.00 ns/op 1.09
effectiveBalanceIncrements rw all Uint8Array 300000 181.05 us/op 180.54 us/op 1.00
effectiveBalanceIncrements rw all MutableVector 300000 88.910 ms/op 90.764 ms/op 0.98
phase0 afterProcessEpoch - 250000 vs - 7PWei 116.66 ms/op 118.06 ms/op 0.99
phase0 beforeProcessEpoch - 250000 vs - 7PWei 33.721 ms/op 36.893 ms/op 0.91
altair processEpoch - mainnet_e81889 347.84 ms/op 323.90 ms/op 1.07
mainnet_e81889 - altair beforeProcessEpoch 68.407 ms/op 67.669 ms/op 1.01
mainnet_e81889 - altair processJustificationAndFinalization 18.854 us/op 14.448 us/op 1.30
mainnet_e81889 - altair processInactivityUpdates 6.4539 ms/op 6.1059 ms/op 1.06
mainnet_e81889 - altair processRewardsAndPenalties 79.525 ms/op 52.990 ms/op 1.50
mainnet_e81889 - altair processRegistryUpdates 3.6920 us/op 2.7170 us/op 1.36
mainnet_e81889 - altair processSlashings 716.00 ns/op 574.00 ns/op 1.25
mainnet_e81889 - altair processEth1DataReset 663.00 ns/op 460.00 ns/op 1.44
mainnet_e81889 - altair processEffectiveBalanceUpdates 1.5125 ms/op 1.2761 ms/op 1.19
mainnet_e81889 - altair processSlashingsReset 3.8500 us/op 3.4260 us/op 1.12
mainnet_e81889 - altair processRandaoMixesReset 6.8550 us/op 5.6430 us/op 1.21
mainnet_e81889 - altair processHistoricalRootsUpdate 1.0900 us/op 716.00 ns/op 1.52
mainnet_e81889 - altair processParticipationFlagUpdates 2.5890 us/op 2.4060 us/op 1.08
mainnet_e81889 - altair processSyncCommitteeUpdates 1.3040 us/op 683.00 ns/op 1.91
mainnet_e81889 - altair afterProcessEpoch 132.43 ms/op 128.52 ms/op 1.03
phase0 processEpoch - mainnet_e58758 383.61 ms/op 386.98 ms/op 0.99
mainnet_e58758 - phase0 beforeProcessEpoch 142.45 ms/op 151.71 ms/op 0.94
mainnet_e58758 - phase0 processJustificationAndFinalization 23.088 us/op 21.585 us/op 1.07
mainnet_e58758 - phase0 processRewardsAndPenalties 68.281 ms/op 66.187 ms/op 1.03
mainnet_e58758 - phase0 processRegistryUpdates 14.607 us/op 10.958 us/op 1.33
mainnet_e58758 - phase0 processSlashings 772.00 ns/op 485.00 ns/op 1.59
mainnet_e58758 - phase0 processEth1DataReset 892.00 ns/op 589.00 ns/op 1.51
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 1.4789 ms/op 1.4424 ms/op 1.03
mainnet_e58758 - phase0 processSlashingsReset 3.7820 us/op 3.2630 us/op 1.16
mainnet_e58758 - phase0 processRandaoMixesReset 6.4880 us/op 5.0850 us/op 1.28
mainnet_e58758 - phase0 processHistoricalRootsUpdate 1.0840 us/op 836.00 ns/op 1.30
mainnet_e58758 - phase0 processParticipationRecordUpdates 4.1370 us/op 3.4960 us/op 1.18
mainnet_e58758 - phase0 afterProcessEpoch 99.396 ms/op 101.25 ms/op 0.98
phase0 processEffectiveBalanceUpdates - 250000 normalcase 1.2707 ms/op 1.2904 ms/op 0.98
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 1.4408 ms/op 1.4489 ms/op 0.99
altair processInactivityUpdates - 250000 normalcase 24.670 ms/op 30.042 ms/op 0.82
altair processInactivityUpdates - 250000 worstcase 27.933 ms/op 31.312 ms/op 0.89
phase0 processRegistryUpdates - 250000 normalcase 12.333 us/op 17.475 us/op 0.71
phase0 processRegistryUpdates - 250000 badcase_full_deposits 633.39 us/op 391.81 us/op 1.62
phase0 processRegistryUpdates - 250000 worstcase 0.5 138.09 ms/op 128.45 ms/op 1.08
altair processRewardsAndPenalties - 250000 normalcase 81.379 ms/op 65.848 ms/op 1.24
altair processRewardsAndPenalties - 250000 worstcase 73.670 ms/op 65.889 ms/op 1.12
phase0 getAttestationDeltas - 250000 normalcase 7.7429 ms/op 8.0919 ms/op 0.96
phase0 getAttestationDeltas - 250000 worstcase 7.8253 ms/op 7.9113 ms/op 0.99
phase0 processSlashings - 250000 worstcase 2.2676 ms/op 2.3498 ms/op 0.97
altair processSyncCommitteeUpdates - 250000 158.64 ms/op 157.85 ms/op 1.01
BeaconState.hashTreeRoot - No change 282.00 ns/op 292.00 ns/op 0.97
BeaconState.hashTreeRoot - 1 full validator 49.505 us/op 50.773 us/op 0.98
BeaconState.hashTreeRoot - 32 full validator 486.02 us/op 500.18 us/op 0.97
BeaconState.hashTreeRoot - 512 full validator 5.0402 ms/op 5.1775 ms/op 0.97
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 59.728 us/op 62.756 us/op 0.95
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 835.74 us/op 854.22 us/op 0.98
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 10.269 ms/op 10.303 ms/op 1.00
BeaconState.hashTreeRoot - 1 balances 46.770 us/op 48.292 us/op 0.97
BeaconState.hashTreeRoot - 32 balances 421.49 us/op 443.36 us/op 0.95
BeaconState.hashTreeRoot - 512 balances 3.9097 ms/op 3.9629 ms/op 0.99
BeaconState.hashTreeRoot - 250000 balances 81.620 ms/op 75.698 ms/op 1.08
aggregationBits - 2048 els - zipIndexesInBitList 14.387 us/op 15.212 us/op 0.95
regular array get 100000 times 32.275 us/op 33.474 us/op 0.96
wrappedArray get 100000 times 32.139 us/op 33.251 us/op 0.97
arrayWithProxy get 100000 times 14.328 ms/op 14.519 ms/op 0.99
ssz.Root.equals 202.00 ns/op 205.00 ns/op 0.99
byteArrayEquals 199.00 ns/op 199.00 ns/op 1.00
shuffle list - 16384 els 6.7916 ms/op 7.0885 ms/op 0.96
shuffle list - 250000 els 99.838 ms/op 103.02 ms/op 0.97
processSlot - 1 slots 7.6410 us/op 7.5730 us/op 1.01
processSlot - 32 slots 1.2487 ms/op 1.2736 ms/op 0.98
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 63.049 ms/op 55.326 ms/op 1.14
getCommitteeAssignments - req 1 vs - 250000 vc 2.4794 ms/op 2.5808 ms/op 0.96
getCommitteeAssignments - req 100 vs - 250000 vc 3.6865 ms/op 3.8194 ms/op 0.97
getCommitteeAssignments - req 1000 vs - 250000 vc 4.0397 ms/op 4.2605 ms/op 0.95
RootCache.getBlockRootAtSlot - 250000 vs - 7PWei 4.5600 ns/op 4.9200 ns/op 0.93
state getBlockRootAtSlot - 250000 vs - 7PWei 677.42 ns/op 519.31 ns/op 1.30
computeProposers - vc 250000 8.9309 ms/op 8.9190 ms/op 1.00
computeEpochShuffling - vc 250000 102.78 ms/op 107.05 ms/op 0.96
getNextSyncCommittee - vc 250000 159.15 ms/op 153.70 ms/op 1.04
computeSigningRoot for AttestationData 13.692 us/op 13.364 us/op 1.02
hash AttestationData serialized data then Buffer.toString(base64) 2.2721 us/op 2.3893 us/op 0.95
toHexString serialized data 1.0395 us/op 1.1081 us/op 0.94
Buffer.toString(base64) 221.59 ns/op 218.61 ns/op 1.01

by benchmarkbot/action

@wemeetagain wemeetagain merged commit 0563661 into unstable Jul 24, 2023
12 checks passed
@wemeetagain wemeetagain deleted the nflaig/remove-redundant-error-listener branch July 24, 2023 21:23
@wemeetagain
Copy link
Member

🎉 This PR is included in v1.10.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.

None yet

2 participants