1. Sep 23, 2022
    • Kian Paimani's avatar
      Fast Unstake Pallet (#12129) · b56c0e4c
      Kian Paimani authored
      * add failing test for itamar
      
      * an ugly example of fast unstake
      
      * Revert "add failing test for itamar"
      
      This reverts commit 16c4d8015698a0684c090c54fce8b470a2d2feb2.
      
      * fast unstake wip
      
      * clean it up a bit
      
      * some comments
      
      * on_idle logic
      
      * fix
      
      * comment
      
      * new working version, checks all pass, looking good
      
      * some notes
      
      * add mock boilerplate
      
      * more boilerplate
      
      * simplify the weight stuff
      
      * ExtBuilder for pools
      
      * fmt
      
      * rm bags-list, simplify setup_works
      
      * mock + tests boilerplate
      
      * make some benchmarks work
      
      * mock boilerplate
      
      * tests boilerplate
      
      * run_to_block works
      
      * add Error enums
      
      * add test
      
      * note
      
      * make UnstakeRequest fields pub
      
      * some tests
      
      * fix origin
      
      * fmt
      
      * add fast_unstake_events_since_last_call
      
      * text
      
      * rewrite some benchmes and fix them -- the outcome is still strange
      
      * Fix weights
      
      * cleanup
      
      * Update frame/election-provider-support/solution-type/src/single_page.rs
      
      * fix build
      
      * Fix pools tests
      
      * iterate teset + mock
      
      * test unfinished
      
      * cleanup and add some tests
      
      * add test successful_multi_queue
      
      * comment
      
      * rm Head check
      
      * add TODO
      
      * complete successful_multi_queue
      
      * + test early_exit
      
      * fix a lot of things above the beautiful atlantic ocean 🌊
      
      
      
      * seemingly it is finished now
      
      * Fix build
      
      * ".git/.scripts/fmt.sh" 1
      
      * Fix slashing amount as well
      
      * better docs
      
      * abstract types
      
      * rm use
      
      * import
      
      * Update frame/nomination-pools/benchmarking/src/lib.rs
      
      Co-authored-by: default avatarNitwit <[email protected]>
      
      * Update frame/fast-unstake/src/types.rs
      
      Co-authored-by: default avatarNitwit <[email protected]>
      
      * Fix build
      
      * fmt
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      * make bounded
      
      * feedback from code review with Ankan
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/lib.rs
      
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      
      * Update frame/fast-unstake/src/mock.rs
      
      * update to master
      
      * some final review comments
      
      * fmt
      
      * fix clippy
      
      * remove unused
      
      * ".git/.scripts/fmt.sh" 1
      
      * make it all build again
      
      * fmt
      
      * undo fishy change
      
      Co-authored-by: default avatarRoss Bulat <[email protected]>
      Co-authored-by: command-bot <>
      Co-authored-by: default avatarNitwit <[email protected]>
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      Co-authored-by: default avatarRoman Useinov <[email protected]>
      b56c0e4c
  2. Sep 22, 2022
  3. Sep 21, 2022
  4. Sep 20, 2022
  5. Sep 19, 2022
  6. Sep 18, 2022
    • Roman Useinov's avatar
      [Fix] Benchmark issue in staking (#12290) · 63c2e288
      Roman Useinov authored
      63c2e288
    • Roman Useinov's avatar
      [Feature] Part 1: add TargetList for validator ranking (#12034) · 1b24f562
      Roman Useinov authored
      
      
      * [Feature] Part 1: add TargetList for validator ranking
      
      * remove redundant todo
      
      * remove typo
      
      * cleanup
      
      * implement score
      
      * more fixes
      
      * fix thresholds
      
      * fmt
      
      * Remove the stuff that has to come in the next PR, some fixes
      
      * extended balance import
      
      * Change all the references from VoteWeight to Self::Score
      
      * Add a migration for VoterBagsList
      
      * fix score
      
      * add targetList to nomination-pools tests
      
      * fix bench
      
      * address review comments
      
      * change get_npos_targets
      
      * address more comments
      
      * remove thresholds for the time being
      
      * fix instance reference
      
      * VoterBagsListInstance
      
      * reus
      
      * remove params that are not used yet
      
      * Introduced pre/post upgrade try-runtime checks
      
      * fix
      
      * fixes
      
      * fix migration
      
      * fix migration
      
      * fix post_upgrade
      
      * change
      
      * Fix
      
      * eloquent PhantomData
      
      * fix PD
      
      * more fixes
      
      * Update frame/staking/src/pallet/impls.rs
      
      Co-authored-by: default avatarSquirrel <[email protected]>
      
      * is_nominator now works
      
      * fix test-staking
      
      * build fixes
      
      * fix remote-tests
      
      * Apply suggestions from code review
      
      Co-authored-by: parity-processbot <>
      Co-authored-by: default avatarkianenigma <[email protected]>
      Co-authored-by: default avatarSquirrel <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      1b24f562
  7. Sep 16, 2022
    • Sam Johnson's avatar
      Add special tag to exclude runtime storage items from benchmarking (#12205) · c0e007b5
      Sam Johnson authored
      * initial setup
      
      * add WhitelistedStorageKeys trait
      
      * add (A, B) tuple implementation for whitelisted_storage_keys()
      
      * fix formatting
      
      * implement WhitelistedStorageKeys for all tuple combinations
      
      * impl_for_tuples up to 128 for WhitelistedStorageKeys
      
      * refactor to #[benchmarking(cached)]
      
      * tweak error message and mark BlockNumber as cached
      
      * add benchmarking(cached) to the other default types
      
      * add docs for benchmarking(cached)
      
      * properly parse storage type declaration
      
      * make storage_alias structs public so we can use them in this macro
      
      * use BTreeMap since TrackedStorageKey missing Ord outside of std
      
      * make WhitelistedStorageKeys accessible
      
      * basic detection of benchmarking(cached) 💥
      
      * proper parsing of #[benchmarking(cached)] from pallet parse macro
      
      * store presence of #[benchmarking(cached)] macro on StorageDef
      
      * will be used for later expansion
      
      * compiling blank impl for WhitelistedStorageKeys
      
      * move impl to expand_pallet_struct
      
      * use frame_support::sp_std::vec::Vec properly
      
      * successfully compiling with storage info loaded into a variable 💥
      
      * plausible implementation for whitelisted_storage_keys()
      
      * depends on the assumption that storage_info.encode() can be loaded
        into TrackedStorageKey::new(..)
      
      * use Pallet::whitelisted_storage_keys() instead of hard-coded list
      
      * AllPallets::whitelisted_storage_keys() properly working 💥
      
      * collect storage names
      
      * whitelisted_storage_keys() impl working 💥
      
      
      
      * clean up
      
      * fix compiler error
      
      * just one compiler error
      
      * fix doc compiler error
      
      * use better import path
      
      * fix comment
      
      * whoops
      
      * whoops again
      
      * fix macro import issue
      
      * cargo fmt
      
      * mark example as ignore
      
      * use keyword tokens instead of string parsing
      
      * fix keyword-based parsing of benchmarking(cached)
      
      * preliminary spec for check_whitelist()
      
      * add additional test for benchmarking whitelist
      
      * add TODO note
      
      * remove irrelevant line from example
      
      * use filter_map instead of filter and map
      
      * simplify syntax
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      * clean up
      
      * fix test
      
      * fix tests
      
      * use keyword parsing instead of string parsing
      
      * use collect() instead of a for loop
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * fix compiler error
      
      * clean up benchmarking(cached) marking code
      
      * use cloned()
      
      * refactor to not use panic! and remove need for pub types in storage_alias
      
      * remove unneeded use
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * remove unneeded visibility changes
      
      * don't manually hard code hash for treasury account as hex
      
      * proper Ord, PartialOrd, and Hash impls for TrackedStorageKey
      
      * now based just on key, and available in no-std
      
      * use BTreeSet instead of BTreeMap
      
      * fix comments
      
      * cargo fmt
      
      * switch to pallet::whitelist and re-do it basti's way :D
      
      * make PartialOrd for TrackedStorageKey consistent with Ord
      
      * more correct implementation of hash-related traits for TrackedStorageKey
      
      * fix integration test
      
      * update TODO
      
      * remove unused keyword
      
      * remove more unused keywords
      
      * use into_iter()
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      
      * Update frame/support/procedural/src/pallet/parse/mod.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * add docs for whitelisted
      
      * fix comment
      
      Co-authored-by: default avatarKeith Yeung <[email protected]>
      Co-authored-by: default avatarKian Paimani <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      c0e007b5
    • Arkadiy Paronyan's avatar
      Fix warp sync (#12281) · 86b122d7
      Arkadiy Paronyan authored
      86b122d7
    • Adrian Catangiu's avatar
      client/beefy: fix voter initialization (#12274) · d9a4d835
      Adrian Catangiu authored
      
      
      Fix corner case where voter gets a single burst of finality
      notifications just when it starts.
      
      The notification stream was consumed by "wait_for_pallet" logic,
      then main loop would subscribe to finality notifications, but by that
      time some notifications might've been lost.
      
      Fix this by subscribing the main loop to notifications before waiting
      for pallet to become available. Share the same stream with the main loop
      so that notifications for blocks before pallet available are ignored,
      while _all_ notifications after pallet available are processed.
      
      Add regression test for this.
      
      Signed-off-by: default avataracatangiu <[email protected]>
      d9a4d835
  8. Sep 15, 2022
  9. Sep 14, 2022
  10. Sep 13, 2022