Skip to content
  1. Jan 21, 2021
  2. Jan 20, 2021
  3. Jan 19, 2021
  4. Jan 18, 2021
    • Sergey Pepyakin's avatar
      Remove TransientValidationData (#2272) · 226af6a8
      Sergey Pepyakin authored
      * collation-generation: use persisted validation data
      
      * node: remote FullValidationData API
      
      * runtime: remove FullValidationData API
      
      * backing tests: use persisted validation data
      
      * FullCandidateReceipt: use persisted validation data
      
      This is not a big change since this type is not used anywhere
      
      * Remove ValidationData and TransientValidationData
      
      Also update the guide
      226af6a8
    • asynchronous rob's avatar
      Approval Voting Database (#2162) · b009cbe8
      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
      
      * Update node/core/approval-voting/src/aux_schema/mod.rs
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <[email protected]>
      
      * Update node/core/approval-voting/src/aux_schema/tests.rs
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <[email protected]>
      
      * Update node/core/approval-voting/src/aux_schema/mod.rs
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <[email protected]>
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <[email protected]>
      b009cbe8
    • Pierre Krieger's avatar
      Make large collations downloads work (#2284) · 1c548d9d
      Pierre Krieger authored
      * Make large collations downloads work
      
      * Actually, bump it more to be sure
      
      * Grmlblbl Rust feature unstable nianiania
      1c548d9d
    • dependabot[bot]'s avatar
      Bump futures from 0.3.11 to 0.3.12 (#2281) · 669ccab8
      dependabot[bot] authored
      
      
      Bumps [futures](https://github.com/rust-lang/futures-rs) from 0.3.11 to 0.3.12.
      - [Release notes](https://github.com/rust-lang/futures-rs/releases)
      - [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md)
      - [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.11...0.3.12)
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      669ccab8
  5. Jan 17, 2021
  6. Jan 15, 2021
    • Bernhard Schuster's avatar
    • dependabot[bot]'s avatar
      Bump futures from 0.3.10 to 0.3.11 (#2273) · 8b818586
      dependabot[bot] authored
      
      
      Bumps [futures](https://github.com/rust-lang/futures-rs) from 0.3.10 to 0.3.11.
      - [Release notes](https://github.com/rust-lang/futures-rs/releases)
      - [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md)
      - [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.10...0.3.11)
      
      Signed-off-by: default avatardependabot[bot] <[email protected]>
      
      Co-authored-by: default avatardependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
      8b818586
    • Fedor Sakharov's avatar
      Availability recovery subsystem (#2122) · 90a68626
      Fedor Sakharov authored
      * Adds message types
      
      * Add code skeleton
      
      * Adds subsystem code.
      
      * Adds a first test
      
      * Adds interaction result to availability_lru
      
      * Use LruCache instead of a HashMap
      
      * Whitespaces to tabs
      
      * Do not ignore errors
      
      * Change error type
      
      * Add a timeout to chunk requests
      
      * Add custom errors and log them
      
      * Adds replace_availability_recovery method
      
      * recovery_threshold computed by erasure crate
      
      * change core to std
      
      * adds docs to error type
      
      * Adds a test for invalid reconstruction
      
      * refactors interaction run into multiple methods
      
      * Cleanup AwaitedChunks
      
      * Even more fixes
      
      * Test that recovery with wrong root is an error
      
      * Break to launch another requests
      
      * Styling fixes
      
      * Add SessionIndex to API
      
      * Proper relay parents for MakeRequest
      
      * Remove validator_discovery and use message
      
      * Remove a stream on exhaustion
      
      * On cleanup free the request streams
      
      * Fix merge and refactor
      90a68626
  7. Jan 14, 2021
  8. Jan 13, 2021
  9. Jan 12, 2021
  10. Jan 11, 2021
  11. Jan 08, 2021
    • asynchronous rob's avatar
      subsystems have an unbounded channel to the overseer (#2236) · 03e39cf5
      asynchronous rob authored
      
      
      * subsystems have an unbounded channel to the overseer
      
      * Update node/overseer/src/lib.rs
      
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      
      * bump Cargo.lock
      
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      03e39cf5
    • Bastian Köcher's avatar
      Do not send empty view updates to peers (#2233) · 475915ff
      Bastian Köcher authored
      
      
      * Do not send empty view updates to peers
      
      It happened that we send empty view updates to our peers, because we
      only updated our finalized block. This could lead to situations where we
      overwhelmed sub systems with too many messages. On Rococo this lead to
      constant restarts of our nodes, because some node apparently was
      finalizing a lot of blocks.
      
      To prevent this, the pr is doing the following:
      
      1. If a peer sends us an empty view, we report this peer and decrease it
      reputation.
      
      2. We ensure that we only send a view update when the `heads` changed
      and not only the `finalized_number`.
      
      3. We do not send empty `ActiveLeavesUpdates` from the overseer, as this
      makes no sense to send these empty updates. If some subsystem is relying
      on the finalized block, it needs to listen for the overseer signal.
      
      * Update node/network/bridge/src/lib.rs
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <[email protected]>
      
      * Don't work if they're are no added heads
      
      * Fix test
      
      * Ahhh
      
      * More fixes
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <[email protected]>
      475915ff
    • Fedor Sakharov's avatar
      Exit from av-store loop on fatal error. (#2232) · 8f293e18
      Fedor Sakharov authored
      * Fuse receive stream in Context
      
      * Revert "Fuse receive stream in Context"
      
      This reverts commit ddd26fa98f0ca1afbc22064e93010e4193a058b2.
      
      * Exit on node shutdown from av-store loop
      
      * Filter only context error
      8f293e18
  12. Jan 07, 2021
  13. Jan 06, 2021
    • ordian's avatar
      upgrade a few dependencies (companion for 7831) (#2205) · a0a5f4cf
      ordian authored
      * upgrade a few dependencies
      
      * "Update Substrate"
      
      Co-authored-by: parity-processbot <>
      a0a5f4cf
    • felix's avatar
      added new bootnode to chain spec's (#2204) · 9d07e99c
      felix authored
      * added new bootnode to chain spec's
      
      * remove trailing newline
      9d07e99c
    • Peter Goodspeed-Niklaus's avatar
      Add metrics timing message passing from OverseerSubsystemContext to Overseer::route_message (#2201) · cd58c02c
      Peter Goodspeed-Niklaus authored
      * add timing setup to OverseerSubsystemContext
      
      * figure out how to initialize the rng
      
      * attach a timer to a portion of the messages traveling to the Overseer
      
      This timer only exists / logs a fraction of the time (configurable
      by `MESSAGE_TIMER_METRIC_CAPTURE_RATE`). When it exists, it tracks
      the span between the `OverSubsystemContext` receiving the message
      and its receipt in `Overseer::run`.
      
      * propagate message timing to the start of route_message
      
      This should be more accurate; it ensures that the timer runs
      at least as long as that function. As `route_message` is async,
      it may not actually run for some time after it is called (or ever).
      
      * fix failing test
      
      * rand_chacha apparently implicitly has getrandom feature
      
      * change rng initialization
      
      The previous impl using `from_entropy` depends on the `getrandom`
      crate, which uses the system entropy source, and which does not
      work on `wasm32-unknown-unknown` because it wants to fall back to
      a JS implementation which we can't assume exists.
      
      This impl depends only on `rand::thread_rng`, which has no documentation
      stating that it's similarly limited.
      
      * remove randomness in favor of a simpler 1 of N procedure
      
      This deserves a bit of explanation, as the motivating issue explicitly
      requested randomness. In short, it's hard to get randomness to compile
      for `wasm32-unknown-unknown` because that is explicitly intended to be
      as deterministic as practical. Additionally, even though it would never
      be used for consensus purposes, it still felt offputting to intentionally
      introduce randomness into a node's operations. Except, it wasn't really
      random, either: it was a deterministic PRNG varying only in its state,
      and getting the state to work right for that target would have required
      initializing from a constant.
      
      Given that it was a deterministic sequence anyway, it seemed much simpler
      and more explicit to simply select one of each N messages instead of
      attempting any kind of realistic randomness.
      
      * reinstate randomness for better statistical properties
      
      This partially reverts commit 0ab8594c328b3f9ce1f696fe405556d4000630e9.
      
      `oorandom` is much lighter than the previous `rand`-based implementation,
      which makes this easier to work with.
      
      This implementation gives each subsystem and each child RNG a distinct
      increment, which should ensure they produce distinct streams of values.
      cd58c02c