Skip to content

v0.38.0 release - #4094

Merged
wemeetagain merged 25 commits into
stablefrom
rc/v0.38.0
Jun 7, 2022
Merged

v0.38.0 release#4094
wemeetagain merged 25 commits into
stablefrom
rc/v0.38.0

Conversation

@g11tech

@g11tech g11tech commented May 31, 2022

Copy link
Copy Markdown
Contributor

v0.38.0 release

g11tech and others added 17 commits May 25, 2022 14:50
* Remove processed attestation log

* Fix lint

* Add more comments
Bumps [eventsource](https://github.com/EventSource/eventsource) from 1.1.0 to 2.0.2.
- [Release notes](https://github.com/EventSource/eventsource/releases)
- [Changelog](https://github.com/EventSource/eventsource/blob/master/HISTORY.md)
- [Commits](EventSource/eventsource@v1.1.0...v2.0.2)

---
updated-dependencies:
- dependency-name: eventsource
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Run forkChoice to get correct head for proposal

* add a small comment

* return early if already updated
* Added the eslint rule to help with import order and ran the fix

* Tweaked the eslint rule to have siblings as the last imports

* upgraded es-lint versions. ran eslint fix

* fix linting errors due to @typescript-eslint/member-ordering

* Revert "fix linting errors due to @typescript-eslint/member-ordering"

This reverts commit 4dbafef.

* set member-ordering issues to warn
* Assert equal params with only whitelisted keys

* Fix comment typo

Co-authored-by: Cayman <caymannava@gmail.com>

* Conditionally ignore future fork params

* Add only one error message per param key

* Improve NotEqualParamsError error message

* Only check keys defined in both specs

Co-authored-by: Cayman <caymannava@gmail.com>
Bumps [cross-fetch](https://github.com/lquixada/cross-fetch) from 3.1.4 to 3.1.5.
- [Release notes](https://github.com/lquixada/cross-fetch/releases)
- [Commits](lquixada/cross-fetch@v3.1.4...v3.1.5)

---
updated-dependencies:
- dependency-name: cross-fetch
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Persist invalid SSZ objects only if enabled

* Switch to fs async api

Co-authored-by: Tuyen Nguyen <vutuyen2636@gmail.com>
Merge stable into unstable
* Adopt gitflow for Lodestar releases

* Apply feedback

* Replace most mentions of `master` with `unstable`

* Tweak various parts of RELEASE.md

* Update CI

* Tweak dev release version handling

* Tweak workflow names

* Replace `nightly` with `dev`

* Replace `beta` with `rc`

* Fix publish for rc release and stable release only

* Remove stray "beta"

* Add code examples to RELEASE.md

* Clarify publish process

* Collapse 'Alternatives considered' section

* Move 'Details' header up one level

* Clarify publishing a release

* Tweak headings

* Fix hotfix section

* More clarifications

* Update examples in RELEASE.md

* More clarifications

* Fix formatting

* Run RELEASE.md through grammarly

* Change script name to release:publish

* Add create_rc script

* Add workflow_dispatch for create RC

* Add placeholder for other scripts

* Update RELEASE.md

* Update release create rc script

* Update script instructions

* create_rc script must not be run in CI

* Update release flow

* Add publish-rc workflow

* Apply suggestions from code review

Co-authored-by: Afr Schoe <58883403+q9f@users.noreply.github.com>

Co-authored-by: Cayman <caymannava@gmail.com>
Co-authored-by: Afr Schoe <58883403+q9f@users.noreply.github.com>
* Fix precision in TERMINAL_TOTAL_DIFFICULTY  config

* Ignore TERMINAL_TOTAL_DIFFICULTY in config check
* Bump ssz

* Use persistent-merkle-tree 0.4.2
)

* Do not check for know attesters when publishing AggregateAndProof

* Refactor to skipValidationKnownAttesters
@g11tech
g11tech requested a review from a team as a code owner May 31, 2022 14:24
@wemeetagain
wemeetagain marked this pull request as draft May 31, 2022 14:34
@github-actions

github-actions Bot commented May 31, 2022

Copy link
Copy Markdown
Contributor

Performance Report

✔️ no performance regression detected

Full benchmark results
Benchmark suite Current: 0510de4 Previous: - Ratio
BeaconState.hashTreeRoot - No change 410.00 ns/op
BeaconState.hashTreeRoot - 1 full validator 51.192 us/op
BeaconState.hashTreeRoot - 32 full validator 533.94 us/op
BeaconState.hashTreeRoot - 512 full validator 5.8406 ms/op
BeaconState.hashTreeRoot - 1 validator.effectiveBalance 66.177 us/op
BeaconState.hashTreeRoot - 32 validator.effectiveBalance 919.42 us/op
BeaconState.hashTreeRoot - 512 validator.effectiveBalance 12.692 ms/op
BeaconState.hashTreeRoot - 1 balances 53.005 us/op
BeaconState.hashTreeRoot - 32 balances 432.86 us/op
BeaconState.hashTreeRoot - 512 balances 4.4286 ms/op
BeaconState.hashTreeRoot - 250000 balances 112.83 ms/op
processSlot - 1 slots 10.885 us/op
processSlot - 32 slots 1.8336 ms/op
getCommitteeAssignments - req 1 vs - 250000 vc 5.6594 ms/op
getCommitteeAssignments - req 100 vs - 250000 vc 7.1348 ms/op
getCommitteeAssignments - req 1000 vs - 250000 vc 7.3884 ms/op
computeProposers - vc 250000 14.802 ms/op
computeEpochShuffling - vc 250000 162.21 ms/op
getNextSyncCommittee - vc 250000 249.97 ms/op
altair processAttestation - 250000 vs - 7PWei normalcase 3.4200 ms/op
altair processAttestation - 250000 vs - 7PWei worstcase 5.1229 ms/op
altair processAttestation - setStatus - 1/6 committees join 174.57 us/op
altair processAttestation - setStatus - 1/3 committees join 332.01 us/op
altair processAttestation - setStatus - 1/2 committees join 488.58 us/op
altair processAttestation - setStatus - 2/3 committees join 618.07 us/op
altair processAttestation - setStatus - 4/5 committees join 864.92 us/op
altair processAttestation - setStatus - 100% committees join 997.87 us/op
altair processBlock - 250000 vs - 7PWei normalcase 26.103 ms/op
altair processBlock - 250000 vs - 7PWei normalcase hashState 35.729 ms/op
altair processBlock - 250000 vs - 7PWei worstcase 80.660 ms/op
altair processBlock - 250000 vs - 7PWei worstcase hashState 96.708 ms/op
altair processEth1Data - 250000 vs - 7PWei normalcase 851.00 us/op
altair processEpoch - mainnet_e81889 548.49 ms/op
mainnet_e81889 - altair beforeProcessEpoch 148.11 ms/op
mainnet_e81889 - altair processJustificationAndFinalization 46.302 us/op
mainnet_e81889 - altair processInactivityUpdates 10.990 ms/op
mainnet_e81889 - altair processRewardsAndPenalties 83.835 ms/op
mainnet_e81889 - altair processRegistryUpdates 9.9180 us/op
mainnet_e81889 - altair processSlashings 3.4780 us/op
mainnet_e81889 - altair processEth1DataReset 2.8450 us/op
mainnet_e81889 - altair processEffectiveBalanceUpdates 2.5096 ms/op
mainnet_e81889 - altair processSlashingsReset 15.585 us/op
mainnet_e81889 - altair processRandaoMixesReset 19.060 us/op
mainnet_e81889 - altair processHistoricalRootsUpdate 2.3860 us/op
mainnet_e81889 - altair processParticipationFlagUpdates 8.6480 us/op
mainnet_e81889 - altair processSyncCommitteeUpdates 2.6990 us/op
mainnet_e81889 - altair afterProcessEpoch 189.42 ms/op
altair processInactivityUpdates - 250000 normalcase 31.315 ms/op
altair processInactivityUpdates - 250000 worstcase 28.066 ms/op
altair processRewardsAndPenalties - 250000 normalcase 133.09 ms/op
altair processRewardsAndPenalties - 250000 worstcase 79.123 ms/op
altair processSyncCommitteeUpdates - 250000 256.20 ms/op
Tree 40 250000 create 736.93 ms/op
Tree 40 250000 get(125000) 262.59 ns/op
Tree 40 250000 set(125000) 2.1506 us/op
Tree 40 250000 toArray() 28.804 ms/op
Tree 40 250000 iterate all - toArray() + loop 30.030 ms/op
Tree 40 250000 iterate all - get(i) 107.77 ms/op
MutableVector 250000 create 16.566 ms/op
MutableVector 250000 get(125000) 15.677 ns/op
MutableVector 250000 set(125000) 635.47 ns/op
MutableVector 250000 toArray() 6.6682 ms/op
MutableVector 250000 iterate all - toArray() + loop 6.2607 ms/op
MutableVector 250000 iterate all - get(i) 3.4436 ms/op
Array 250000 create 5.2313 ms/op
Array 250000 clone - spread 3.2728 ms/op
Array 250000 get(125000) 1.4090 ns/op
Array 250000 set(125000) 1.3720 ns/op
Array 250000 iterate all - loop 163.59 us/op
effectiveBalanceIncrements clone Uint8Array 300000 75.555 us/op
effectiveBalanceIncrements clone MutableVector 300000 1.0720 us/op
effectiveBalanceIncrements rw all Uint8Array 300000 244.70 us/op
effectiveBalanceIncrements rw all MutableVector 300000 185.21 ms/op
aggregationBits - 2048 els - zipIndexesInBitList 28.784 us/op
regular array get 100000 times 66.530 us/op
wrappedArray get 100000 times 65.700 us/op
arrayWithProxy get 100000 times 28.646 ms/op
ssz.Root.equals 451.00 ns/op
byteArrayEquals 428.00 ns/op
phase0 processBlock - 250000 vs - 7PWei normalcase 3.1908 ms/op
phase0 processBlock - 250000 vs - 7PWei worstcase 43.127 ms/op
phase0 afterProcessEpoch - 250000 vs - 7PWei 212.26 ms/op
phase0 beforeProcessEpoch - 250000 vs - 7PWei 71.061 ms/op
phase0 processEpoch - mainnet_e58758 504.25 ms/op
mainnet_e58758 - phase0 beforeProcessEpoch 218.05 ms/op
mainnet_e58758 - phase0 processJustificationAndFinalization 59.388 us/op
mainnet_e58758 - phase0 processRewardsAndPenalties 134.32 ms/op
mainnet_e58758 - phase0 processRegistryUpdates 15.804 us/op
mainnet_e58758 - phase0 processSlashings 1.8560 us/op
mainnet_e58758 - phase0 processEth1DataReset 2.6360 us/op
mainnet_e58758 - phase0 processEffectiveBalanceUpdates 2.2314 ms/op
mainnet_e58758 - phase0 processSlashingsReset 13.281 us/op
mainnet_e58758 - phase0 processRandaoMixesReset 16.925 us/op
mainnet_e58758 - phase0 processHistoricalRootsUpdate 3.4910 us/op
mainnet_e58758 - phase0 processParticipationRecordUpdates 17.852 us/op
mainnet_e58758 - phase0 afterProcessEpoch 152.30 ms/op
phase0 processEffectiveBalanceUpdates - 250000 normalcase 3.0236 ms/op
phase0 processEffectiveBalanceUpdates - 250000 worstcase 0.5 2.8328 ms/op
phase0 processRegistryUpdates - 250000 normalcase 21.717 us/op
phase0 processRegistryUpdates - 250000 badcase_full_deposits 645.43 us/op
phase0 processRegistryUpdates - 250000 worstcase 0.5 217.06 ms/op
phase0 getAttestationDeltas - 250000 normalcase 13.192 ms/op
phase0 getAttestationDeltas - 250000 worstcase 13.526 ms/op
phase0 processSlashings - 250000 worstcase 5.2531 ms/op
shuffle list - 16384 els 10.204 ms/op
shuffle list - 250000 els 154.02 ms/op
getEffectiveBalanceIncrementsZeroInactive - 250000 vs - 7PWei 356.94 us/op
pass gossip attestations to forkchoice per slot 3.2638 ms/op
computeDeltas 3.3626 ms/op
computeProposerBoostScoreFromBalances 875.27 us/op
getPubkeys - index2pubkey - req 1000 vs - 250000 vc 1.8736 ms/op
getPubkeys - validatorsArr - req 1000 vs - 250000 vc 76.703 us/op
BLS verify - blst-native 1.7424 ms/op
BLS verifyMultipleSignatures 3 - blst-native 3.6426 ms/op
BLS verifyMultipleSignatures 8 - blst-native 7.5211 ms/op
BLS verifyMultipleSignatures 32 - blst-native 27.890 ms/op
BLS aggregatePubkeys 32 - blst-native 36.793 us/op
BLS aggregatePubkeys 128 - blst-native 141.06 us/op
getAttestationsForBlock 58.602 ms/op
isKnown best case - 1 super set check 422.00 ns/op
isKnown normal case - 2 super set checks 427.00 ns/op
isKnown worse case - 16 super set checks 407.00 ns/op
CheckpointStateCache - add get delete 9.7000 us/op
validate gossip signedAggregateAndProof - struct 4.1516 ms/op
validate gossip attestation - struct 1.9057 ms/op
altair verifyImport mainnet_s3766816:31 6.1400 s/op
pickEth1Vote - no votes 1.8574 ms/op
pickEth1Vote - max votes 21.771 ms/op
pickEth1Vote - Eth1Data hashTreeRoot value x2048 11.672 ms/op
pickEth1Vote - Eth1Data hashTreeRoot tree x2048 25.920 ms/op
pickEth1Vote - Eth1Data fastSerialize value x2048 1.4339 ms/op
pickEth1Vote - Eth1Data fastSerialize tree x2048 13.234 ms/op
bytes32 toHexString 932.00 ns/op
bytes32 Buffer.toString(hex) 605.00 ns/op
bytes32 Buffer.toString(hex) from Uint8Array 842.00 ns/op
bytes32 Buffer.toString(hex) + 0x 655.00 ns/op
Object access 1 prop 0.31300 ns/op
Map access 1 prop 0.27600 ns/op
Object get x1000 16.057 ns/op
Map get x1000 0.93200 ns/op
Object set x1000 94.913 ns/op
Map set x1000 58.653 ns/op
Return object 10000 times 0.36980 ns/op
Throw Error 10000 times 5.3455 us/op
enrSubnets - fastDeserialize 64 bits 2.3250 us/op
enrSubnets - ssz BitVector 64 bits 667.00 ns/op
enrSubnets - fastDeserialize 4 bits 325.00 ns/op
enrSubnets - ssz BitVector 4 bits 637.00 ns/op
prioritizePeers score -10:0 att 32-0.1 sync 2-0 84.889 us/op
prioritizePeers score 0:0 att 32-0.25 sync 2-0.25 122.21 us/op
prioritizePeers score 0:0 att 32-0.5 sync 2-0.5 182.37 us/op
prioritizePeers score 0:0 att 64-0.75 sync 4-0.75 381.12 us/op
prioritizePeers score 0:0 att 64-1 sync 4-1 427.52 us/op
RateTracker 1000000 limit, 1 obj count per request 165.75 ns/op
RateTracker 1000000 limit, 2 obj count per request 124.98 ns/op
RateTracker 1000000 limit, 4 obj count per request 100.13 ns/op
RateTracker 1000000 limit, 8 obj count per request 92.735 ns/op
RateTracker with prune 3.5040 us/op
array of 16000 items push then shift 2.9541 us/op
LinkedList of 16000 items push then shift 20.576 ns/op
array of 16000 items push then pop 184.39 ns/op
LinkedList of 16000 items push then pop 18.432 ns/op
array of 24000 items push then shift 4.2923 us/op
LinkedList of 24000 items push then shift 20.842 ns/op
array of 24000 items push then pop 183.69 ns/op
LinkedList of 24000 items push then pop 18.411 ns/op
intersect bitArray bitLen 8 10.974 ns/op
intersect array and set length 8 144.27 ns/op
intersect bitArray bitLen 128 71.013 ns/op
intersect array and set length 128 2.0985 us/op

by benchmarkbot/action

* Add Eth1DepositTracker metrics

* Add Eth1DepositTracker metrics

* Remove duplicate line
@dapplion

dapplion commented Jun 7, 2022

Copy link
Copy Markdown
Contributor

Possibility of a very slow memory leak in the beacon node. Does not prevent a release but want to leave a note in case this persists

hetzner-test1

Screenshot from 2022-06-07 21-40-23

@dapplion

dapplion commented Jun 7, 2022

Copy link
Copy Markdown
Contributor

Some strange metrics in hetzner-test1 where metadata outgoing request errors jumps to 100%. This behaviour does not occur on other contabo beta deployments.

Screenshot from 2022-06-07 21-46-10

Screenshot from 2022-06-07 21-46-20

@wemeetagain
wemeetagain marked this pull request as ready for review June 7, 2022 19:49
@wemeetagain
wemeetagain merged commit 5471c5e into stable Jun 7, 2022
@wemeetagain
wemeetagain deleted the rc/v0.38.0 branch June 7, 2022 19:51
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.

6 participants