- 19 Jun, 2021 1 commit
-
-
Andronik Ordian authored
* network-bridge: remove action_sink abstraction * another wtf * filter out event stream * Revert "filter out event stream" This reverts commit 63bd8f5d. * retain cleanup though
-
- 18 Jun, 2021 1 commit
-
-
Andronik Ordian authored
* gossip-support: gossip topology * some fixes * handle view update for newly added gossip peers * fix neighbors calculation * fix test * resolve TODOs * typo * guide updates * spaces in the guide * sneaky spaces * hash randomness * address some review nits * use unbounded in bridge for subsystem msg
-
- 17 Jun, 2021 1 commit
-
-
Andronik Ordian authored
* cleanup more tests and spaces * oops
-
- 13 Jun, 2021 1 commit
-
-
asynchronous rob authored
* skeleton for dispute-coordinator * add coordinator and participation message types * begin dispute-coordinator DB * functions for loading * implement strongly-typed DB transaction * add some tests for DB transaction * core logic for pruning * guide: update candidate-votes key for coordinator * update candidate-votes key * use big-endian encoding for session, and implement upper bound generator * finish implementing pruning * add a test for note_current_session * define state of the subsystem itself * barebones subsystem definition * control flow * more control flow * implement session-updating logic * trace * control flow for message handling * Update node/core/dispute-coordinator/src/lib.rs Co-authored-by:
André Silva <123550+andresilva@users.noreply.github.com> * Update node/subsystem/src/messages.rs Co-authored-by:
André Silva <123550+andresilva@users.noreply.github.com> * some more control flow * guide: remove overlay * more control flow * implement some DB getters * make progress on importing statements * add SignedDisputeStatement struct * move ApprovalVote to shared primitives * add a signing-payload API to explicit dispute statements * add signing-payload to CompactStatement * add relay-parent hash to seconded/valid dispute variatns * correct import * type-safe wrapper around dispute statements * use checked dispute statement in message type * extract rolling session window cache to subsystem-util * extract session window tests * approval-voting: use rolling session info cache * reduce dispute window to match runtime in practice * add byzantine_threshold and supermajority_threshold utilities to primitives * integrate rolling session window * Add PartialOrd to CandidateHash * add Ord to CandidateHash * implement active dispute update * add dispute messages to AllMessages * add dispute stubs to overseer * inform dispute participation to participate * implement issue_local_statement * implement `determine_undisputed_chain` * fix warnings * test harness for dispute coordinator tests * add more helpers to test harness * add some more helpers * some tests for dispute coordinator * ignore wrong validator indices * test finality voting rule constraint * add more tests * add variants to network bridge * fix test compilation * remove most dispute coordinator functionality as of #3222 we can do most of the work within the approval voting subsystem * Revert "remove most dispute coordinator functionality" This reverts commit 9cd615e8 . * Use thiserror Co-authored-by:
Bernhard Schuster <bernhard@ahoi.io> * Update node/core/dispute-coordinator/src/lib.rs Co-authored-by:
Bernhard Schuster <bernhard@ahoi.io> * extract tests to separate module * address nit * adjust run_iteration API Co-authored-by:
André Silva <123550+andresilva@users.noreply.github.com> Co-authored-by:
Bernhard Schuster <bernhard@ahoi.io>
-
- 12 Jun, 2021 2 commits
-
-
Andronik Ordian authored
* fix connections leak * fix compilation
-
Andronik Ordian authored
* tabify tests * move mod tests; up
-
- 11 Jun, 2021 1 commit
-
-
Bernhard Schuster authored
Moves tests into separate files in order to limit the loc per file.
-
- 09 Jun, 2021 1 commit
-
-
Andronik Ordian authored
* remove tracing::intrument annotations * remove unused param and leftover * more leftovers
-
- 08 Jun, 2021 1 commit
-
-
Lldenaurois authored
* Create validator_side module * Subsume Candidate Selection * Add test to ensure candidate backing logic is correct * Ensure secondings are adequately cleaned up and address test flakyness * Address Feedback
-
- 03 Jun, 2021 1 commit
-
-
Andronik Ordian authored
* remove duplicate logging * validator-discovery: add extra logging
-
- 31 May, 2021 1 commit
-
-
asynchronous rob authored
* guide: reversion safety * guide: manage reversion safety in subsystems * add leaf status to ActivatedLeaf * add an LRU-cache to overseer for staleness detection * update ActivatedLeaf usages in tests to contain status field * add variant where missed accidentally * add some helpers to LeafStatus * address grumbles
-
- 22 May, 2021 2 commits
-
-
Andronik Ordian authored
* network-bridge: downgrade log level of benefit rep change * remove it as we log it at higher level
-
Bernhard Schuster authored
-
- 21 May, 2021 1 commit
-
-
Pierre Krieger authored
-
- 20 May, 2021 1 commit
-
-
Andronik Ordian authored
* validator_discovery: less flexible, but simpler design * fix test * remove unused struct * smol optimization * validator_discovery: basic retrying logic * add a test * add more tests * update the guide * more test logic * Require at least 2/3 connectivity. * Fix test. * Update node/network/gossip-support/src/lib.rs Co-authored-by:
André Silva <123550+andresilva@users.noreply.github.com> * Update node/network/gossip-support/src/lib.rs Co-authored-by:
André Silva <123550+andresilva@users.noreply.github.com> Co-authored-by:
Robert Klotzner <robert.klotzner@gmx.at> Co-authored-by:
Robert Klotzner <eskimor@users.noreply.github.com> Co-authored-by:
André Silva <123550+andresilva@users.noreply.github.com>
-
- 19 May, 2021 1 commit
-
-
Andronik Ordian authored
* validator_discovery: less flexible, but simpler design * fix test * remove unused struct * smol optimization
-
- 14 May, 2021 1 commit
-
-
Pierre Krieger authored
-
- 13 May, 2021 1 commit
-
-
Andronik Ordian authored
* validator_discovery: simplification * compilation fixes * compilation fixes II * compilation fixes III * compilation fixes IV
-
- 06 May, 2021 1 commit
-
-
Pierre Krieger authored
* Companion PR for #8682 * Compilation fix * Update beefy * update Substrate Co-authored-by: parity-processbot <>
-
- 03 May, 2021 1 commit
-
-
Robert Klotzner authored
Otherwise peer connect events occassionally happen before `StatementFetchingReceiver` message.
-
- 16 Apr, 2021 1 commit
-
-
Robert Klotzner authored
* Factor out runtime module into utils. * Add maybe_authority information to `PeerConnected` event. We already gather this information in authority discovery, so we might as well share it with others. This opens up an easy path to trigger validators differently from normal nodes, e.g. for prioritization. This change has become more important now, that we just connect to all validators and therefore just have a long peer list without any information about those nodes. * Test fix.
-
- 09 Apr, 2021 1 commit
-
-
Robert Klotzner authored
* Wip * Increase proposer timeout. * WIP. * Better timeout values now that we are going to be connected to all nodes. (#2778) * Better timeout values. * Fix typo. * Fix validator bandwidth. * Fix compilation. * Better and more consistent sizes. Most importantly code size is now 5 Meg, which is the limit we currently want to support in statement distribution. * Introduce statement fetching request. * WIP * Statement cache retrieval logic. * Review remarks by @rphmeier * Fixes. * Better requester logic. * WIP: Handle requester messages. * Missing dep. * Fix request launching logic. * Finish fetching logic. * Sending logic. * Redo code size calculations. Now that max code size is compressed size. * Update Cargo.lock (new dep) * Get request receiver to statement distribution. * Expose new functionality for responding to requests. * Cleanup. * Responder logic. * Fixes + Cleanup. * Cargo.lock * Whitespace. * Add lost copyright. * Launch responder task. * Typo. * info -> warn * Typo. * Fix. * Fix. * Update comment. * Doc fix. * Better large statement heuristics. * Fix tests. * Fix network bridge tests. * Add test for size estimate. * Very simple tests that checks we get LargeStatement. * Basic check, that fetching of large candidates is performed. * More tests. * Basic metrics for responder. * More metrics. * Use Encode::encoded_size(). * Some useful spans. * Get rid of redundant metrics. * Don't add peer on duplicate. * Properly check hash instead of relying on signatures alone. * Preserve ordering + better flood protection. * Get rid of redundant clone. * Don't shutdown responder on failed query. And add test for this. * Smaller fixes. * Quotes. * Better queue size calculation. * A bit saner response sizes. * Fixes.
-
- 05 Apr, 2021 2 commits
-
-
Pierre Krieger authored
* Properly remove peers from sets * Actually rename all, I guess * Merge the two Network traits * Rename function * Update node/network/bridge/src/network.rs Co-authored-by:
Andronik Ordian <write@reusable.software> * Fix erroneous change * Update node/network/bridge/src/network.rs Co-authored-by:
Andronik Ordian <write@reusable.software>
-
Andronik Ordian authored
* tests/av-store: use future::join instead of future::select * tests/backing: use future::join instead of future::select * tests/provisioner: use future::join instead of future::select * tests/av-dist: use future::join instead of future::select * tests/av-recovery: use future::join instead of future::select * tests/bridge: use future::join instead of future::select * tests/collator-protocol: use future::join instead of future::select * tests/stmt-dist: use future::join instead of future::select * fix tests
-
- 04 Apr, 2021 1 commit
-
-
asynchronous rob authored
* add metrics (unused) to network bridge * fix test compilation * trigger metrics messages * add some more metrics * track sent and received notifications * restore metrics import * integrate into service * Update node/network/bridge/src/lib.rs Co-authored-by:
Andronik Ordian <write@reusable.software> * Update node/network/bridge/src/lib.rs Co-authored-by:
Andronik Ordian <write@reusable.software> Co-authored-by:
Andronik Ordian <write@reusable.software>
-
- 03 Apr, 2021 1 commit
-
-
asynchronous rob authored
* guide: declare one para as a collator * add ParaId to Declare messages and clean up * fix build * fix the testerinos * begin adding keystore to collator-protocol * remove request_x_ctx * add core_for_group * add bump_rotation * add some more helpers to subsystem-util * change signing_key API to take ref * determine current and next para assignments * disconnect collators who are not on current or next para * add collator peer count metric * notes for later * some fixes * add data & keystore to test state * add a test utility for answering runtime API requests * fix existing collator tests * add new tests * remove sc_keystore * update cargo lock Co-authored-by:
Andronik Ordian <write@reusable.software>
-
- 01 Apr, 2021 1 commit
-
-
asynchronous rob authored
* extract database from av-store itself * generalize approval-voting over database type * modes (without handling) and pruning old wakeups * rework approval importing * add our_approval_sig to ApprovalEntry * import assignment * guide updates for check-full-approval changes * some aux functions * send messages when becoming active. * guide: network bridge sends view updates only when done syncing * network bridge: send view updates only when done syncing * tests for new network-bridge behavior * add a test for updating approval entry with sig * fix some warnings * test load-all-blocks * instantiate new parachains DB * fix network-bridge empty view updates * tweak * fix wasm build, i think * Update node/core/approval-voting/src/lib.rs Co-authored-by:
Andronik Ordian <write@reusable.software> * add some versioning to parachains_db * warnings * fix merge changes * remove versioning again Co-authored-by:
Andronik Ordian <write@reusable.software>
-
- 30 Mar, 2021 1 commit
-
-
Andronik Ordian authored
-
- 28 Mar, 2021 4 commits
-
-
asynchronous rob authored
* overseer: pass messages directly between subsystems * test that message is held on to * Update node/overseer/src/lib.rs Co-authored-by:
Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com> * give every subsystem an unbounded sender too * remove metered_channel::name 1. we don't provide good names 2. these names are never used anywhere * unused mut * remove unnecessary &mut * subsystem unbounded_send * remove unused MaybeTimer We have channel size metrics that serve the same purpose better now and the implementation of message timing was pretty ugly. * remove comment * split up senders and receivers * update metrics * fix tests * fix test subsystem context * use SubsystemSender in jobs system now * refactor of awful jobs code * expose public `run` on JobSubsystem * update candidate backing to new jobs & use unbounded * bitfield signing * candidate-selection * provisioner * approval voting: send unbounded for assignment/approvals * async not needed * begin bridge split * split up network tasks into background worker * port over network bridge * Update node/network/bridge/src/lib.rs Co-authored-by:
Andronik Ordian <write@reusable.software> * rename ValidationWorkerNotifications Co-authored-by:
Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com> Co-authored-by:
Andronik Ordian <write@reusable.software>
-
Pierre Krieger authored
* Call NetworkService::add_known_address before sending a request * Better doc * Update Substrate * Update Substrate * Restore the import
🤷 ♀️ I don't know why it compiles locally * imports correctly Co-authored-by:Robert Habermeier <rphmeier@gmail.com>
-
asynchronous rob authored
* overseer: pass messages directly between subsystems * test that message is held on to * Update node/overseer/src/lib.rs Co-authored-by:
Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com> * give every subsystem an unbounded sender too * remove metered_channel::name 1. we don't provide good names 2. these names are never used anywhere * unused mut * remove unnecessary &mut * subsystem unbounded_send * remove unused MaybeTimer We have channel size metrics that serve the same purpose better now and the implementation of message timing was pretty ugly. * remove comment * split up senders and receivers * update metrics * fix tests * fix test subsystem context * fix flaky test * fix docs * doc * use select_biased to favor signals * Update node/subsystem/src/lib.rs Co-authored-by:
Andronik Ordian <write@reusable.software> Co-authored-by:
Peter Goodspeed-Niklaus <coriolinus@users.noreply.github.com> Co-authored-by:
Andronik Ordian <write@reusable.software>
-
Robert Klotzner authored
* Indentation fix. * Prepare request-response for PoV fetching. * Drop old PoV distribution. * WIP: Fetch PoV directly from backing. * Backing compiles. * Runtime access and connection management for PoV distribution. * Get rid of seemingly dead code. * Implement PoV fetching. Backing does not yet use it. * Don't send `ConnectToValidators` for empty list. * Even better - no need to check over and over again. * PoV fetching implemented. + Typechecks + Should work Missing: - Guide - Tests - Do fallback fetching in case fetching from seconding validator fails. * Check PoV hash upon reception. * Implement retry of PoV fetching in backing. * Avoid pointless validation spawning. * Add jaeger span to pov requesting. * Add back tracing. * Review remarks. * Whitespace. * Whitespace again. * Cleanup + fix tests. * Log to log target in overseer. * Fix more tests. * Don't fail if group cannot be found. * Simple test for PoV fetcher. * Handle missing group membership better. * Add test for retry functionality. * Fix flaky test. * Spaces again. * Guide updates. * Spaces.
-
- 26 Mar, 2021 2 commits
-
-
Robert Klotzner authored
* Those should really be trace. - Very spammy - And they in fact trace the execution - Should not be enabled lightly - will slow network bridge down. * Make report peers debug again.
-
asynchronous rob authored
* add number to `ActivatedLeavesUpdate` * update subsystem util and overseer * use new ActivatedLeaf everywhere * sort view * sorted and limited view in network bridge * use live block hash only if it's newer * grumples
-
- 25 Mar, 2021 1 commit
-
-
asynchronous rob authored
* add AvailableDataFetchingRequest * rename AvailabilityFetchingRequest to ChunkFetchingRequest * rename AvailabilityFetchingResponse to Chunk_ * add AvailableDataFetching request * add available data fetching request to availability recovery message * remove availability recovery message * fix * update network bridge * port availability recovery to request/response * use validators.len(), not shuffling * fix availability recovery tests * update guide * Update node/network/availability-recovery/src/lib.rs Co-authored-by:
Bernhard Schuster <bernhard@ahoi.io> * Update node/network/availability-recovery/src/lib.rs Co-authored-by:
Arkadiy Paronyan <arkady.paronyan@gmail.com> * remove println Co-authored-by:
Bernhard Schuster <bernhard@ahoi.io> Co-authored-by:
Arkadiy Paronyan <arkady.paronyan@gmail.com>
-
- 24 Mar, 2021 2 commits
-
-
André Silva authored
* collator: authenticate collator protocol messages * fix tests compilation * node: verify collator protocol signatures in tests * collator: fix tests * implementers-guide: update CollatorProtocol messages * collator: add test for verification of collator protocol signatures * node: remove fixmes * node: remove signature from advertisecollation message * node: add magic constant to Declare message signature payload
-
asynchronous rob authored
* malicious reputation cost is fatal * make ReportBad a malicious cost * futures control-flow for cleaning up inactive collator peers * guide: network bridge updates * add `PeerDisconnected` message * guide: update * reverse order * remember to match * implement disconnect peer in network bridge * implement disconnect_inactive_peers * test * remove println * don't hardcore policy * add fuse outside of loop * use default eviction policy
-
- 23 Mar, 2021 1 commit
-
-
Pierre Krieger authored
-
- 19 Mar, 2021 1 commit
-
-
Robert Klotzner authored
* Don't accept incoming connections for collators on the `Collation` peer set. * Better docs.
-
- 18 Mar, 2021 1 commit
-
-
Robert Klotzner authored
* Introduce collation fetching protocol also move to mod.rs * Allow `PeerId`s in requests to network bridge. * Fix availability distribution tests. * Move CompressedPoV to primitives. * Request based collator protocol: validator side - Missing: tests - Collator side - don't connect, if not connected * Fixes. * Basic request based collator side. * Minor fix on collator side. * Don't connect in requests in collation protocol. Also some cleanup. * Fix PoV distribution * Bump substrate * Add back metrics + whitespace fixes. * Add back missing spans. * More cleanup. * Guide update. * Fix tests * Handle results in tests. * Fix weird compilation issue. * Add missing ) * Get rid of dead code. * Get rid of redundant import. * Fix runtime build. * Cleanup. * Fix wasm build. * Format fixes. Thanks @andronik !
-