- Apr 01, 2021
-
-
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 <[email protected]> * add some versioning to parachains_db * warnings * fix merge changes * remove versioning again Co-authored-by: Andronik Ordian <[email protected]>
-
ordian authored
* gossip: do not issue a connection request if we are not a validator * guide updates * use all relevant authorities when issuing a request * use AuthorityDiscoveryApi instead * update comments to the status quo
-
Tomasz Drwięga authored
* Switch branch. * Implement basic MMR leaf. * Revert "Switch branch." This reverts commit 7f4d41c67f27ca560c53fc63fd3bd06ac182403c. * Bump substrate. * Integrate BEEFY. Bump all. Fix missing imports. * Use beefy pallet to get authorities. * Bump BEEFY repo. * Use next authority set instead of the current one. * Start BEEFY service. * Fix BEEFY start up. * Cache BEEFY authority set. * Add BEEFY ValidatorSetId to MMR * Fix code. * Apply suggestions from code review Co-authored-by: André Silva <[email protected]> Co-authored-by: Hernando Castano <[email protected]> * Review grumbles. * Update beefy repo. * Work-around missing protocol. * Revert "Work-around missing protocol." This reverts commit 0a6257a8bccc1c67e966898cdedc408c6469ffd6. * Add beefy peers set config. * Expose storage of BEEFY. * Uncompress BEEFY keys for merkle tree. * Update ordering. * Switch to branch. * Bump deps. * Switch to custom beefy. * Add MMR RuntimeApi and custom rpc. * Add set length details. * Fix compilation. * Expose MmrLeaf storage. * Expose MmrLeaf storage. * Don't use session handler, and rather compute & cache beefy details on call. * Don't use session handler, and rather compute & cache beefy details on call. * Fixes. * Update Cargo.lock. * Switch back to master. * Update lockfile. * Fix xcm print issue. * Cargo.lock. * Use master branch. * Remove extra dep. * Fix tests. * Update Cargo.lock * Add BEEFY & MMR to westend. * Implement session keys migration. * Update testnet script. * start BEEFY for all node types * Update Cargo.lock * fix Cargo.toml * resolve another merge conflict * add Westend BEEFY keys * Apply suggestions from code review Co-authored-by: Hernando Castano <[email protected]> * Update BEEFY. * Add Rococo BEEFY keys * resolve merge issue * fix pallet indices * fix Westend OldSessionKey * remove unused imports in Westend runtime * Fix compilation for Westend. * address review * start BEEFY gadget conditionally * address review again * fix typo * remove duplicate * remove another duplicate * well * add missing stuff * cleanup Cargo.toml files - revert unnecessary changes - add missing /std dependencies - remove unused dependencies * runtime: remove unused structs from rococo runtime * node: cleanup service Co-authored-by: André Silva <[email protected]> Co-authored-by: Hernando Castano <[email protected]> Co-authored-by: adoerr <[email protected]> Co-authored-by: André Silva <[email protected]>
-
- Mar 31, 2021
-
-
Kian Paimani authored
* proper executor/block type for benchmarks and try-runtime * Fix * update benches as well to latest work * Remvoe dbg
-
- Mar 28, 2021
-
-
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.
-
- Mar 24, 2021
-
-
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
-
- Mar 19, 2021
-
-
Robert Klotzner authored
* Don't accept incoming connections for collators on the `Collation` peer set. * Better docs.
-
- Mar 17, 2021
-
-
Bastian Köcher authored
* Companion for Substrate#8386 https://github.com/paritytech/substrate/pull/8386 * "Update Substrate" Co-authored-by: parity-processbot <>
-
Bastian Köcher authored
Currently we will take all leaves and give that to the overseer on startup, but this is a bad idea when the finality is lagging for example. There can be many of unfinalized leaves, we don't even need to look at anymore. To solve this, the pr adds a maximum of 4 leaves we forward to the overseer and the pr also checks that we only pass uncles of the best block.
-
- Mar 12, 2021
-
-
André Silva authored
-
- Mar 11, 2021
-
-
Cecile Tonglet authored
Companion for https://github.com/paritytech/substrate/pull/8143
-
- Mar 10, 2021
-
-
Tomasz Drwięga authored
* Switch branch * Fix compilation. * Revert "Switch branch" This reverts commit a3bd3621772ae98618c46102d03501856b7950ba. * Update Cargo.lock. * Add telemetry span back. * Fix telemetry_span issues. * Update substrate.
-
- Mar 09, 2021
-
-
ordian authored
* approval-voting metrics * metric: approvals produced
-
Bastian Köcher authored
* Substrate companion #8280 https://github.com/paritytech/substrate/pull/8280 * "Update Substrate" Co-authored-by: parity-processbot <>
-
- Mar 05, 2021
-
-
Pierre Krieger authored
-
Pierre Krieger authored
* Print an error if a collator connects to a node without real-overseer * Update node/service/src/lib.rs Co-authored-by: Bastian Köcher <[email protected]> Co-authored-by: Bastian Köcher <[email protected]>
-
Xiliang Chen authored
-
- Mar 02, 2021
-
-
Bastian Köcher authored
This fixes a bug in block import not reporting to the telemetry.
-
ordian authored
* initial subsystem for issuing connection requests * finish the initial impl * integrate with the overseer * rename to gossip-support * fix renamings leftover * remove run_inner * fix compilation * random subset of sqrt
-
- Feb 25, 2021
-
-
ordian authored
-
André Silva authored
* Pass shared_authority_set to request_response_config_for_chain * "Update Substrate" Co-authored-by: Ashley Ruglys <[email protected]> Co-authored-by: parity-processbot <>
-
- Feb 24, 2021
-
-
Bastian Köcher authored
* Companion for Substrate #8185 https://github.com/paritytech/substrate/pull/8185 * "Update Substrate" Co-authored-by: parity-processbot <>
-
asynchronous rob authored
-
- Feb 19, 2021
-
-
Bastian Köcher authored
* Companion for Substrate#8155 https://github.com/paritytech/substrate/pull/8155 * :D * Update the Substrate reference
-
- Feb 18, 2021
-
-
asynchronous rob authored
* Use KeyValueDB in approval-voting * use KVDB instead of AuxStore * add rocksdb to cargo toml * add a Config struct * create new DB in service * fix dep for regular node * make optional * post merge fix Co-authored-by: Andronik Ordian <[email protected]>
-
asynchronous rob authored
-
- Feb 17, 2021
-
-
asynchronous rob authored
* guide changes for a fast-path requesting from backing validators * add backing group to availability recovery message * add new phase to interaction * typos * add full data messages * handle new network messages * dispatch full data requests * cleanup * check chunk index * test for invalid recovery * tests * Typos. * fix some grumbles * be more explicit about error handling and control flow * fast-path param * use with_chunks_only in Service Co-authored-by: Robert Klotzner <[email protected]>
-
Cecile Tonglet authored
* WIP * WIP * WIP * Revert branch change * CLEANUP * "Update Substrate" * Fix build * Revert "Fix build" This reverts commit 2dcc3f2a14d28febb84c2c35d682243bc03523a8. * cargo update -p sp-io Co-authored-by: parity-processbot <>
-
- Feb 16, 2021
-
-
asynchronous rob authored
* integrate approval voting into overseer * expose public API and make keystore arc * integrate overseer in service * guide: `ApprovedAncestor` returns block number * return block number along with hash from ApprovedAncestor * introduce a voting rule for reporting on approval checking * integrate the delay voting rule * Rococo configuration * fix compilation and add slack * fix web-wasm build * tweak parameterization * migrate voting rules to asycn * remove hack comment
-
- Feb 15, 2021
-
-
Pierre Krieger authored
* Companion for substrate#8079 * More changes * "Update Substrate" Co-authored-by: parity-processbot <>
-
- Feb 11, 2021
-
-
asynchronous rob authored
* skeleton * skeleton aux-schema module * start approval types * start aux schema with aux store * doc * finish basic types * start approval types * doc * finish basic types * write out schema types * add debug and codec impls to approval types * add debug and codec impls to approval types also add some key computation * add debug and codec impls to approval types * getters for block and candidate entries * grumbles * remove unused AssignmentId * load_decode utility * implement DB clearing * function for adding new block entry to aux store * start `canonicalize` implementation * more skeleton * finish implementing canonicalize * tag TODO * implement a test AuxStore * add allow(unused) * basic loading and deleting test * block_entry test function * add a test for `add_block_entry` * ensure range is exclusive at end * test clear() * test that add_block sets children * add a test for canonicalize * extract Pre-digest from header * utilities for extracting RelayVRFStory from the header-chain * add approval voting message types * approval distribution message type * subsystem skeleton * state struct * add futures-timer * prepare service for babe slot duration * more skeleton * better integrate AuxStore * RelayVRF -> RelayVRFStory * canonicalize * implement some tick functionality * guide: tweaks * check_approval * more tweaks and helpers * guide: add core index to candidate event * primitives: add core index to candidate event * runtime: add core index to candidate events * head handling (session window) * implement `determine_new_blocks` * add TODO * change error type on functions * compute RelayVRFModulo assignments * compute RelayVRFDelay assignments * fix delay tranche calc * assignment checking * pluralize * some dummy code for fetching assignments * guide: add babe epoch runtime API * implement a current_epoch() runtime API * compute assignments * candidate events get backing group * import blocks and assignments into DB * push block approval meta * add message types, no overseer integration yet * notify approval distribution of new blocks * refactor import into separate functions * impl tranches_to_approve * guide: improve function signatures * guide: remove Tick from ApprovalEntry * trigger and broadcast assignment * most of approval launching * remove byteorder crate * load blocks back to finality, except on startup * check unchecked assignments * add claimed core to approval voting message * fix checks * assign only to backing group * remove import_checked_assignment from guide * newline * import assignments * abstract out a bit * check and import approvals * check full approvals from assignment import too * comment * create a Transaction utility * must_use * use transaction in `check_full_approvals` * wire up wakeups * add Ord to CandidateHash * wakeup refactoring * return candidate info from add_block_entry * schedule wakeups * background task: do candidate validation * forward candidate validation requests * issue approval votes when requested * clean up a couple TODOs * fix up session caching * clean up last unimplemented!() items * fix remaining warnings * remove TODO * implement handle_approved_ancestor * update Cargo.lock * fix runtime API tests * guide: cleanup assignment checking * use claimed candidate index instead of core * extract time to a trait * tests module * write a mock clock for testing * allow swapping out the clock * make abstract over assignment criteria * add some skeleton tests and simplify params * fix backing group check * do backing group check inside check_assignment_cert * write some empty test functions to implement * add a test for non-backing * test that produced checks pass * some empty test ideas * runtime/inclusion: remove outdated TODO * fix compilation * av-store: fix tests * dummy cert * criteria tests * move `TestStore` to main tests file * fix unused warning * test harness beginnings * resolve slots renaming fallout * more compilation fixes * wip: extract pure data into a separate module * wip: extract pure data into a separate module * move types completely to v1 * add persisted_entries * add conversion trait impls * clean up some warnings * extract import logic to own module * schedule wakeups * experiment with Actions * uncomment approval-checking * separate module for approval checking utilities * port more code to use actions * get approval pipeline using actions * all logic is uncommented * main loop processes actions * all loop logic uncommented * separate function for handling actions * remove last unimplemented item * clean up warnings * State gives read-only access to underlying DB * tests for approval checking * tests for approval criteria * skeleton test module for import * list of import tests to do * some test glue code * test reject bad assignment * test slot too far in future * test reject assignment with unknown candidate * remove loads_blocks tests * determine_new_blocks back to finalized & harness * more coverage for determining new blocks * make `imported_block_info` have less reliance on State * candidate_info tests * tests for session caching * remove println * extricate DB and main TestStores * rewrite approval checking logic to counteract early delays * move state out of function * update approval-checking tests * tweak wakeups & scheduling logic * rename check_full_approvals * test that assignment import updates candidate * some approval import tests * some tests for check_and_apply_approval * add 'full' qualifier to avoid confusion * extract should-trigger logic to separate function * some tests for all triggering * tests for when we trigger assignments * test wakeups * add block utilities for testing * some more tests for approval updates * approved_ancestor tests * new action type for launch approval * process-wakeup tests * clean up some warnings * fix in_future test * approval checking tests * tighten up too-far-in-future * special-case genesis when caching sessions * fix bitfield len Co-authored-by: Andronik Ordian <[email protected]>
-
- Feb 09, 2021
-
-
Sergey Pepyakin authored
* Wasm caching * Fix compilation errors * Rename `cache_path` to `cache_base_path` * "Update Substrate" * Fix check-web-wasm build Co-authored-by: parity-processbot <>
-
- Feb 04, 2021
-
-
André Silva authored
* node: pass local authorship to the transaction pool * update substrate
-
saki-osive authored
* Refactored the build steps for building with cargo * Cargo build step needs pre requisites not mentioned * Update README.md * unused variable can be explicity ignored Co-authored-by: Bastian Köcher <[email protected]>
-
- Feb 03, 2021
-
-
Robert Klotzner authored
* Move NetworkBridgeEvent to subsystem::messages. It is not protocol related at all, it is in fact only part of the subsystem communication as it gets wrapped into messages of each subsystem. * Request/response infrastructure is taking shape. WIP: Does not compile. * Multiplexer variant not supported by Rusts type system. * request_response::request type checks. * Cleanup. * Minor fixes for request_response. * Implement request sending + move multiplexer. Request multiplexer is moved to bridge, as there the implementation is more straight forward as we can specialize on `AllMessages` for the multiplexing target. Sending of requests is mostly complete, apart from a few `From` instances. Receiving is also almost done, initializtion needs to be fixed and the multiplexer needs to be invoked. * Remove obsolete multiplexer. * Initialize bridge with multiplexer. * Finish generic request sending/receiving. Subsystems are now able to receive and send requests and responses via the overseer. * Doc update. * Fixes. * Link issue for not yet implemented code. * Fixes suggested by @ordian - thanks! - start encoding at 0 - don't crash on zero protocols - don't panic on not yet implemented request handling * Update node/network/protocol/src/request_response/v1.rs Use index 0 instead of 1. Co-authored-by: Andronik Ordian <[email protected]> * Update node/network/protocol/src/request_response.rs Co-authored-by: Andronik Ordian <[email protected]> * Fix existing tests. * Better avoidance of division by zoro errors. * Doc fixes. * send_request -> start_request. * Fix missing renamings. * Update substrate. * Pass TryConnect instead of true. * Actually import `IfDisconnected`. * Fix wrong import. * Update node/network/bridge/src/lib.rs typo Co-authored-by: Pierre Krieger <[email protected]> * Update node/network/bridge/src/multiplexer.rs Remove redundant import. Co-authored-by: Pierre Krieger <[email protected]> * Stop doing tracing from within `From` instance. Thanks for the catch @tomaka ! * Get rid of redundant import. * Formatting cleanup. * Fix tests. * Add link to issue. * Clarify comments some more. * Fix tests. * Formatting fix. * tabs * Fix link Co-authored-by: Bernhard Schuster <[email protected]> * Use map_err. Co-authored-by: Bernhard Schuster <[email protected]> * Improvements inspired by suggestions by @drahnr. - Channel size is now determined by function. - Explicitely scope NetworkService::start_request. Co-authored-by: Andronik Ordian <[email protected]> Co-authored-by: Pierre Krieger <[email protected]> Co-authored-by: Bernhard Schuster <[email protected]>
-
- Jan 29, 2021
-
-
Cecile Tonglet authored
* Adapt code to changes in substrate * WIP * "Update Substrate" Co-authored-by: parity-processbot <>
-
- Jan 26, 2021
-
-
Jon Häggblad authored
* Companion for #7953: remove runtime checks in prove_finality * "Update Substrate" Co-authored-by: parity-processbot <> Co-authored-by: André Silva <[email protected]>
-
- Jan 25, 2021
-
-
ordian authored
* initial impl approval distribution * initial tests and fixes * batching seems difficult: different peers have different needs * bridge: fix test after merge * some guide updates * only send assignments to peers who know about the block * fix a test, add approvals test * simplify * do not send assignment to peers for finalized blocks * guide: protocol input and output * one more test * more comments, logs, initial metrics * fix a typo * one more thing: early return when reimporting a thing locally
-
- Jan 21, 2021
-
-
Jon Häggblad authored
* service: update for substrate PR #7339 * "Update Substrate" Co-authored-by: parity-processbot <>
-