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

performance: Update the loader to use gas limits #1242

Merged
merged 2 commits into from
Sep 2, 2021

Conversation

jwinkler2083233
Copy link
Contributor

No description provided.

@codecov-commenter
Copy link

codecov-commenter commented Sep 2, 2021

Codecov Report

Merging #1242 (2e4b6be) into master (0714d5a) will increase coverage by 0.04%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #1242      +/-   ##
==========================================
+ Coverage   56.06%   56.11%   +0.04%     
==========================================
  Files         487      487              
  Lines       29951    29951              
==========================================
+ Hits        16793    16806      +13     
+ Misses      10870    10857      -13     
  Partials     2288     2288              
Flag Coverage Δ
unittests 56.11% <ø> (+0.04%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
cmd/util/ledger/migrations/storage_v4.go 41.56% <0.00%> (-0.61%) ⬇️
...nsensus/approvals/veryfing_assignment_collector.go 60.40% <0.00%> (+1.34%) ⬆️
...sus/approvals/assignment_collector_statemachine.go 53.84% <0.00%> (+11.53%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 81ec901...2e4b6be. Read the comment docs.

@jwinkler2083233 jwinkler2083233 merged commit cd710a1 into master Sep 2, 2021
@jwinkler2083233 jwinkler2083233 deleted the jwinkler2083233/5827-fix-loader branch September 2, 2021 23:08
zhangchiqing added a commit that referenced this pull request Sep 9, 2021
* Update state tracker

* commit mock changes

* adding some grace time to the TestNoBackoffWhenCreatingStream test (#1234)

* adding some grace time to the TestNoBackoffWhenCreatingStream test

* adding a timed context for the TestNoBackoffWhenCreatingStream test

* making two create stream call in the TestNoBackoffWhenCreatingStream test; adding comment

* TestNoBackoffWhenCreatingStream - updated explanation of why we need 2 separate calls to CreateStream()

Co-authored-by: Misha Rybalov <misha.rybalov@nortonlifelock.com>

* Remove values referring to non existing deferred values

* Log a warn for missing deferred values and move on

* Revert mapping types to deferred values

* Add block final state commitment

* create notifier

* initial

* Update idTranslator.go

* add dht peer lookup

* Add dht lookup and default peerstore addresses

* undo topology changes

* add custom id translator

* validate ID translation

* [network] make sure TestUnstakedTranslationRoundTrip runs 50 times

* TODOs

update mocks, fix a test

* Update peerManager_test.go

Update sporking_test.go

Update protocol_state_provider.go

* Add new DHT test

* fix test

* Update testUtil.go

* [network] Create a simple FixedTableIdentityTranslator, fix compilation

* Update libp2pNode_test.go

Update middleware_test.go

Update testUtil.go

fixed identity provider

Update testUtil.go

[network] Fix the compilation of a bunch of remaining tests

* Last testUtil fixes

Update peerManager_test.go

fix epoch transition test

Update unstaked_translator.go

fixed middleware_test

Update execution_test.go

* add test for hierchical translator

* Update peerManager_test.go

Update execution_test.go

update middleware

* Address comments

* protocol state provider test

* updating origin ID checks to use idtranslator

* new providers

remove comments

Update hierarchical_translator_test.go

* add basic test for identity provider

* basic test for filtered identifier provider

make goimports happy

* add default identifier provider for sync engine

* add comments

* [network] test for peerstore ID provider

* [network] Correct bug in ID validation

Introduced in c8bce78

The From field of a message is not necessarily the depository of the authentified signing information of a message:
it can be an attached public key that may or may not match (hash to) the libp2p PeerID.

This reinstates the pid.MatchesPublicKey(pubk) call that checks that.

* [network] Move UpdatableIDProvider to tests

* add NotEjectedFilter to sync engine id provider

* update assert.Subset to assert.ElementsMatch

* remove time.Sleep

* fix flakiness in peerstore provider test

* Fix flaky middleware test

* removing unstaked network (#1186)

* Add consensus follower to integration tests

* removing unstaked network

* making the unstaked node test similar to the mvp test to allow block generation

* moving builder.deriveBootstrapPeerIdentities to access_node_builder from unstaked_access_node_builder

* exposing libp2p port externally in integration test docker container for consensus follower to access

* Add NetworkingIdentifierProider to staked node

* Use hierarchical translator for unstaked node

* Add identity delta for staked and unstaked AN's

* Implement proper message validators for unstaked network.

* recover sync engine participants provider

* using the unstaked networking key for the consesus follower

* initializing middleware before initiliazing the sync follower for the unstaked node

* using a factory method for the SyncEngineParticipantsProvider to wait for middleware to have started for the unstaked an

* adding assertions to the TestReceiveBlocks consumer follower test

* moving unstaked specific functions to unstaked_access_node_builder and staked ones to staked_access_node_builder

* moving SyncEngineParticipantsProviderFactory for the unstaked node to the InitIDProviders function similar to the staked access node

Co-authored-by: Simon Zhu <simon.zsiyan@gmail.com>
Co-authored-by: François Garillot <francois.garillot@dapperlabs.com>

* add sync provider to staked AN

* implement reassignment of sync engine channel

* define new subscription manager

* Update unstaked_access_node_builder.go

* define unsatked metrics

* add new network metrics

* added back conerteer network

* update metrics

* name namespaces and subsystems back to private

* add idProvider argument to libp2pnodefactory

* Disable queueing missing heights for unstaked sync provider

* Update subscriptionFilter_test.go

* fix connectionmanager compilation errors

* Remove unneeded files

* Update connmanager

* re-generate mocks

* Finish fixing testUtil.go

* Fix DHT test, adapt supportsUnstakedFollower flag

* fix sync request proxy bug

* Make goimports happy

Re-generate mocks

* fix unit test

* update channel Exists method

* New test for sync provider

* Add node role

* using default message validators for all nodes; setting required-verification-seal-approvals and required-construction-seal-approvals to 1 in the unstaked integration test

* adding CleanerCollector to metrics in scaffold

* Extend the change from #1230 to all nodes

* install a connection manager on unstaked ANs

Unstaked ANs issue unicast messages on syncrequests and correspondingly need one.

* Update middleware options

* Added logging for sync engine

* set log level of consensus follower to debug in tests

* Update network.go

* Increase integration test timeout

* increase num request and add block ids to debug

* Adding loging for sync requests

* Update libp2pNode_test.go

Update unstaked_node_test.go

Update core.go

* add more logging

* Make CI print integration tests in verbose mode (just like unit tests)

* simplify logging

* allowing consensus follower to be started with an pre-initialized badger db

* adding db to getBaseOptions

* WithDB takes precedence over WithDataDir

* test fixes

* do not transition epoch if it failed

* on epoch failure, pretend the current epoch continues forever

* epoch lookup failure fallback

* performance: Update the loader to use gas limits (#1242)

Co-authored-by: Jeff Winkler <jeff.winkler@dapperlabs.com>

* refactoring the unstaked consensus follower integration test

* removing unusued functions

* fixing comment

* fixing loop exit

* Implemented new engine for collection nodes sync. Small refactoring of consensus engine. Updated tests

* [network] Make the Access node bind to the catch-all address

It's not meant to listen to localhost only, but to the network.

Fixes #5826

* lint

* add context

* consolidate system chunk ctx and inc event limit

* adjust the event size to 256MB

* renamed hasBlocks to getBlocks

* add context

* handle case of not-setup epoch in consensus committee

* add context

* ignore service events after epoch failure

* prefix comment wording

* spend less time holding the lock

* additional condition for EpochLookup fallback

* avoid emitting protocol events on emergency chain continuation

* typo

* wip

* update mutator tests

* update epoch lockup tests

* update committee leader selection tests

* update comments and consolidated code a bit

* minor polishing

* adding the peer manager back to the staked AN which supports the unstaked AN; adding option to disable connection pruning

* consolidated EECC logic in Protocol State mutator

* changing DisableConnectionPruning to  WithConnectionPruning

* Update engine/collection/synchronization/engine.go

Co-authored-by: Jordan Schalm <jordan@dapperlabs.com>

* Replaced return with continue

* added access-tests to local integration tests

* Update state/protocol/badger/mutator.go

* copy epoch status when in EECC

* Replaced log for fatal

* Remove temp local cadence version

* define new staked topic validator

* Rename ExtractPeerID

* Added test

* address comments

* Add new methods to identity provider

* modify api

* update fixed_provider

* address some comments

* move messagesigningid

* Fix Middleware test

* fix topic validator test

* Move key translation to its own package, break circular dependency

* Update libp2pUtils.go

* Update contLoadGenerator.go

* Update middleware_test.go

* add error logging for topic validator unregister

* rename GetIdentity -> Identity

* Update middleware_test.go

* fix lint

* adding comments to the topic validator test (#1253)

* adding a comment to middelware.Subscribe describing the new change to add topic validators for stake nodes

* goimports

* making middleware.topologyPeers private again

* Update state/protocol/badger/mutator.go

Co-authored-by: Leo Zhang <zhangchiqing@gmail.com>

* fix formatting

* Update engine.go

* makes time to live exportable

* activates dns resolver on libp2p node

* adds dns ttl to scaffold

* adds dns cache ttl to base config

* adds flag for dns node cache ttl

* refactors scaffold with base config for dns cache

* adds dns cache for staked access node

* Sync with latest cadence changes

* adds dns cache for unstaked access node

* refactors tests with resolver

* fixes an error

* Dump removed contract codes to a file

* Fix nested type infering

* Invert the storage cleanup flag

* Refactor code

* add separate fallback-explicit EpochForView method

* refactors builder

* refactors resolver invocations

* Fix storage migration V5 tests

* fix mocked function

* Update to Cadence v0.19.0

* Fix fvm payloads getting skipped

* Use cadence v0.19.0

* Use cadence v0.19.0 for intergration

* Update storage migration V4 to latest cadence changes

* Fix tests

* Remove previous storage migration V4 tests

* Fix linter errors

* Fix --no-migration flag for state extract

Co-authored-by: Kay-Zee <kan@axiomzen.co>
Co-authored-by: Janez Podhostnik <janez.podhostnik@gmail.com>
Co-authored-by: Vishal <1117327+vishalchangrani@users.noreply.github.com>
Co-authored-by: Misha Rybalov <misha.rybalov@nortonlifelock.com>
Co-authored-by: Supun Setunga <supun.setunga@gmail.com>
Co-authored-by: Maks Pawlak <120831+m4ksio@users.noreply.github.com>
Co-authored-by: Simon Zhu <simon.zsiyan@gmail.com>
Co-authored-by: François Garillot <francois.garillot@dapperlabs.com>
Co-authored-by: Jordan Schalm <jordan@dapperlabs.com>
Co-authored-by: Jeff Winkler <jwinkler2083233@users.noreply.github.com>
Co-authored-by: Jeff Winkler <jeff.winkler@dapperlabs.com>
Co-authored-by: Yurii Oleksyshyn <yuraolex@gmail.com>
Co-authored-by: bors[bot] <26634292+bors[bot]@users.noreply.github.com>
Co-authored-by: ramtinms <ramtin@axiomzen.co>
Co-authored-by: Ramtin M. Seraj <ramtinms@users.noreply.github.com>
Co-authored-by: Alexander Hentschel <alex.hentschel@axiomzen.co>
Co-authored-by: Misha Rybalov <gomisha>
Co-authored-by: Yahya <yahya@dapperlabs.com>
Co-authored-by: Yahya Hassanzadeh <yhassanzadeh13@ku.edu.tr>
Co-authored-by: Bastian Müller <bastian@axiomzen.co>
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

4 participants