Skip to content
  1. Aug 16, 2022
    • Robert Klotzner's avatar
      16a35652
    • Robert Klotzner's avatar
      Don't request votes if there is nothing to request. (#5888) · 05a79665
      Robert Klotzner authored
      * Don't request votes if there is nothing to request.
      
      * Add trace log
      05a79665
    • Robert Klotzner's avatar
      Reduce dispute coordinator load (#5785) · ca6297c8
      Robert Klotzner authored
      
      
      * Don't import backing statements directly
      
      into the dispute coordinator. This also gets rid of a redundant
      signature check. Both should have some impact on backing performance.
      In general this PR should make us scale better in the number of parachains.
      
      Reasoning (aka why this is fine):
      
      For the signature check: As mentioned, it is a redundant check. The
      signature has already been checked at this point. This is even made
      obvious by the used types. The smart constructor is not perfect as
      discussed [here](https://github.com/paritytech/polkadot/issues/3455),
      but is still a reasonable security.
      
      For not importing to the dispute-coordinator: This should be good as the
      dispute coordinator does scrape backing votes from chain. This suffices
      in practice as a super majority of validators must have seen a backing
      fork in order for a candidate to get included and only included
      candidates pose a threat to our system. The import from chain is
      preferable over direct import of backing votes for two reasons:
      
      1. The import is batched, greatly improving import performance. All
         backing votes for a candidate are imported with a single import.
         And indeed we were able to see in metrics that importing votes
         from chain is fast.
      2. We do less work in general as not every candidate for which
         statements are gossiped might actually make it on a chain. The
         dispute coordinator as with the current implementation would still
         import and keep those votes around for six sessions.
      
      While redundancy is good for reliability in the event of bugs, this also
      comes at a non negligible cost. The dispute-coordinator right now is the
      subsystem with the highest load, despite the fact that it should not be
      doing much during mormal operation and it is only getting worse
      with more parachains as the load is a direct function of the number of statements.
      
      We'll see on Versi how much of a performance improvement this PR
      
      * Get rid of dead code.
      
      * Dont send approval vote
      
      * Make it pass CI
      
      * Bring back tests for fixing them later.
      
      * Explicit signature check.
      
      * Resurrect approval-voting tests (not fixed yet)
      
      * Send out approval votes in dispute-distribution.
      
      Use BTreeMap for ordered dispute votes.
      
      * Bring back an important warning.
      
      * Fix approval voting tests.
      
      * Don't send out dispute message on import + test
      
      + Some cleanup.
      
      * Guide changes.
      
      Note that the introduced complexity is actually redundant.
      
      * WIP: guide changes.
      
      * Finish guide changes about dispute-coordinator
      
      conceputally. Requires more proof read still.
      
      Also removed obsolete implementation details, where the code is better
      suited as the source of truth.
      
      * Finish guide changes for now.
      
      * Remove own approval vote import logic.
      
      * Implement logic for retrieving approval-votes
      
      into approval-voting and approval-distribution subsystems.
      
      * Update roadmap/implementers-guide/src/node/disputes/dispute-coordinator.md
      
      Co-authored-by: default avatarasynchronous rob <[email protected]>
      
      * Review feedback.
      
      In particular: Add note about disputes of non included candidates.
      
      * Incorporate Review Remarks
      
      * Get rid of superfluous space.
      
      * Tidy up import logic a bit.
      
      Logical vote import is now separated, making the code more readable and
      maintainable.
      
      Also: Accept import if there is at least one invalid signer that has not
      exceeded its spam slots, instead of requiring all of them to not exceed
      their limits. This is more correct and a preparation for vote batching.
      
      * We don't need/have empty imports.
      
      * Fix tests and bugs.
      
      * Remove error prone redundancy.
      
      * Import approval votes on dispute initiated/concluded.
      
      * Add test for approval vote import.
      
      * Make guide checker happy (hopefully)
      
      * Another sanity check + better logs.
      
      * Reasoning about boundedness.
      
      * Use `CandidateIndex` as opposed to `CoreIndex`.
      
      * Remove redundant import.
      
      * Review remarks.
      
      * Add metric for calls to request signatures
      
      * More review remarks.
      
      * Add metric on imported approval votes.
      
      * Include candidate hash in logs.
      
      * More trace log
      
      * Break cycle.
      
      * Add some tracing.
      
      * Cleanup allowed messages.
      
      * fmt
      
      * Tracing + timeout for get inherent data.
      
      * Better error.
      
      * Break cycle in all places.
      
      * Clarified comment some more.
      
      * Typo.
      
      * Break cycle approval-distribution - approval-voting.
      
      Co-authored-by: default avatarasynchronous rob <[email protected]>
      ca6297c8
  2. Aug 14, 2022
    • Kian Paimani's avatar
      Add nomination pools to Polkadot runtime (#5582) · 47de4b37
      Kian Paimani authored
      
      
      * Add nomination poools to Polkadot runtime
      
      * fmt + spellcheck
      
      * cargo run --quiet --profile=production --features runtime-benchmarks -- benchmark pallet --chain=polkadot-dev --steps=50 --repeat=20 --pallet=pallet_nomination_pools --extrinsic=* --execution=wasm --wasm-execution=compiled --header=./file_header.txt --output=./runtime/polkadot/src/weights/
      
      * fiux
      
      * ".git/.scripts/bench-bot.sh" runtime polkadot-dev pallet_nomination_pools
      
      * ".git/.scripts/fmt.sh" 1
      
      * Update runtime/polkadot/src/lib.rs
      
      Co-authored-by: default avatarOliver Tale-Yazdi <[email protected]>
      
      * fix
      
      * fmt
      
      * Update runtime/polkadot/src/lib.rs
      
      Co-authored-by: default avatarParity Bot <[email protected]>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarOliver Tale-Yazdi <[email protected]>
      47de4b37
  3. Aug 12, 2022
  4. Aug 11, 2022
  5. Aug 09, 2022
  6. Aug 08, 2022
  7. Aug 05, 2022
  8. Aug 04, 2022
  9. Aug 01, 2022
  10. Jul 29, 2022
  11. Jul 28, 2022
  12. Jul 27, 2022
  13. Jul 26, 2022
  14. Jul 22, 2022
    • ordian's avatar
      malus: add `finality_delay` cli flag (#5770) · b1f8445d
      ordian authored
      * add malus_finality_delay flag
      
      * cargo update -p sp-io
      
      * no warnings when malus is disabled
      
      * subpar workaround for feature unification problem
      
      * remove malus_finality_delay from regular cli
      
      * document finality_delay param, rename cli arg
      b1f8445d
  15. Jul 20, 2022
  16. Jul 19, 2022
  17. Jul 12, 2022
    • Bernhard Schuster's avatar
      split NetworkBridge into two subsystems (#5616) · 3240cb5e
      Bernhard Schuster authored
      
      
      * foo
      
      * rolling session window
      
      * fixup
      
      * remove use statemetn
      
      * fmt
      
      * split NetworkBridge into two subsystems
      
      Pending cleanup
      
      * split
      
      * chore: reexport OrchestraError as OverseerError
      
      * chore: silence warnings
      
      * fixup tests
      
      * chore: add default timenout of 30s to subsystem test helper ctx handle
      
      * single item channel
      
      * fixins
      
      * fmt
      
      * cleanup
      
      * remove dead code
      
      * remove sync bounds again
      
      * wire up shared state
      
      * deal with some FIXMEs
      
      * use distinct tags
      
      Co-authored-by: default avatarAndrei Sandu <[email protected]>
      
      * use tag
      
      Co-authored-by: default avatarAndrei Sandu <[email protected]>
      
      * address naming
      
      tx and rx are common in networking and also have an implicit meaning regarding networking
      compared to incoming and outgoing which are already used with subsystems themselvesq
      
      * remove unused sync oracle
      
      * remove unneeded state
      
      * fix tests
      
      * chore: fmt
      
      * do not try to register twice
      
      * leak Metrics type
      
      Co-authored-by: default avatarAndrei Sandu <[email protected]>
      Co-authored-by: default avatarAndronik <[email protected]>
      3240cb5e
  18. Jul 09, 2022
    • Vsevolod Stakhov's avatar
      Implement prune only stagnant check mode (#5761) · c11c1f38
      Vsevolod Stakhov authored
      
      
      * Limit number of elements loaded from the stagnant key
      
      This will likely be required if we enable stagnant prunning as currently database has way
      too many entries to be prunned in a single iteration
      
      * Fmt run
      
      * Slightly improve logging
      
      * Some more debug nits
      
      * Fmt pass
      
      * Add stagnant prunning delay
      
      * Enable stagnant check worker
      
      * Implement stagnant pruning without stagnant checks
      
      * Update node/core/chain-selection/src/tree.rs
      
      Co-authored-by: default avatarAndronik <[email protected]>
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarAndronik <[email protected]>
      
      Co-authored-by: default avatarAndronik <[email protected]>
      c11c1f38
  19. Jul 06, 2022
    • Chevdor's avatar
      Version bump to v0.9.26/9260 (#5755) · 9fc4e16e
      Chevdor authored
      * Bump spec_version to 9260
      
      * Version bump to v0.9.26
      9fc4e16e
    • Svyatoslav Nikolsky's avatar
      Remove bridges subtree (#5752) · 3f29fd04
      Svyatoslav Nikolsky authored
      * remove bridges folder
      
      * remove BRIDGES.md
      
      * remove bridges mentions from top Cargo.toml
      
      * remove bridges from CODEOWNERS
      
      * remove bridges mentions from testing.md
      
      * remove bridge pallets from Rococo/Wococo runtime
      
      * also remove from node
      3f29fd04
  20. Jul 04, 2022
    • Vsevolod Stakhov's avatar
      Limit stagnant checks to a certain amount of entries (#5742) · 9dc99f02
      Vsevolod Stakhov authored
      * Limit number of elements loaded from the stagnant key
      
      This will likely be required if we enable stagnant prunning as currently database has way
      too many entries to be prunned in a single iteration
      
      * Fmt run
      
      * Slightly improve logging
      
      * Some more debug nits
      
      * Fmt pass
      9dc99f02
  21. Jun 29, 2022
  22. Jun 28, 2022
  23. Jun 27, 2022
  24. Jun 24, 2022
  25. Jun 23, 2022
  26. Jun 22, 2022
  27. Jun 21, 2022
    • Mara Broda's avatar
      bump versions to 0.9.25 (#5684) · 97f9b840
      Mara Broda authored
      * kusama: bump spec_version to 9250
      
      * polkadot: bump spec_version to 9250
      
      * rococo: bump spec_version to 9250
      
      * westend: bump spec_version to 9250
      
      * bump version to 0.9.25
      
      * bump transaction version (polkadot & kusama) (#5690)
      
      * kusama: bump transaction_version to 12
      
      * polkadot: bump transaction_version to 13
      97f9b840
  28. Jun 18, 2022
  29. Jun 17, 2022
  30. Jun 16, 2022
  31. Jun 14, 2022