1. Nov 01, 2022
    • Marcin S.'s avatar
      PVF timeouts follow-up (#6151) · 1f821976
      Marcin S. authored
      * Rename timeout consts and timeout parameter; bump leniency
      
      * Update implementor's guide with info about PVFs
      
      * Make glossary a bit easier to read
      
      * Add a note to LENIENT_PREPARATION_TIMEOUT
      
      * Remove PVF-specific section from glossary
      
      * Fix some typos
      1f821976
  2. Oct 26, 2022
    • Marcin S.'s avatar
      Make some fixes to logging in PVF subsystem (#6180) · d4e3501e
      Marcin S. authored
      * Log exit status code for workers
      
      * Make log for execute job conclusion match prepare job conclusion
      
      Trace log for conclusion of prepare job:
      
      ```rs
      gum::debug!(
      	target: LOG_TARGET,
      	validation_code_hash = ?artifact_id.code_hash,
      	?worker,
      	?rip,
      	"prepare worker concluded",
      );
      ```
      
      Co-authored-by: parity-processbot <>
      d4e3501e
  3. Oct 22, 2022
    • Mara Broda's avatar
      sync versions with current release (0.9.31) (#6176) · f8cc39a7
      Mara Broda authored
      * Bump spec_version to 9310
      
      * bump transaction_version (0.9.31) (#6171)
      
      * Bump transaction_version for polkadot
      
      * Bump transaction_version for kusama
      
      * Bump transaction_version for rococo
      
      * Bump transaction_version for westend
      
      * Bump transaction_version for polkadot
      
      * Bump transaction_version for kusama
      
      * Bump transaction_version for rococo
      
      * Bump transaction_version for westend
      
      * Bump crate versions (0.9.31)
      f8cc39a7
  4. Oct 13, 2022
  5. Sep 15, 2022
  6. Sep 09, 2022
  7. Aug 29, 2022
    • Mara Broda's avatar
      version bumps (0.9.28) (#5933) · fc97080c
      Mara Broda authored
      * Bump crate versions
      
      * Bump spec_version to 9280 for kusama
      
      * Bump spec_version to 9280 for polkadot
      
      * Bump spec_version to 9280 for rococo
      
      * Bump spec_version to 9280 for westend
      
      * update Cargo.lock
      
      Co-authored-by: parity-processbot <>
      fc97080c
  8. Jul 28, 2022
  9. Jul 06, 2022
  10. Jun 27, 2022
  11. Jun 24, 2022
  12. Jun 23, 2022
  13. 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
  14. May 30, 2022
  15. May 27, 2022
  16. May 19, 2022
    • Koute's avatar
      Switch to pooling copy-on-write instantiation strategy for WASM (companion for... · d9eff4ec
      Koute authored
      Switch to pooling copy-on-write instantiation strategy for WASM (companion for Substrate#11232) (#5337)
      
      * Switch to pooling copy-on-write instantiation strategy for WASM
      
      * Fix compilation of `polkadot-test-service`
      
      * Update comments
      
      * Move `max_memory_size` to `Semantics`
      
      * Rename `WasmInstantiationStrategy` to `WasmtimeInstantiationStrategy`
      
      * Update a safety comment
      
      * update lockfile for {"substrate"}
      
      Co-authored-by: parity-processbot <>
      d9eff4ec
  17. May 16, 2022
  18. Apr 09, 2022
    • Sergei Shulepov's avatar
      Fixes the dead lock when any of the channels get at capacity. (#5297) · b89dc00e
      Sergei Shulepov authored
      The PVF host is designed to avoid spawning tasks to minimize knowledge
      of outer code. Using `async_std::task::spawn` (or Tokio's counterpart)
      deemed unacceptable, `SpawnNamed` undesirable. Instead there is only one
      task returned that is spawned by the candidate-validation subsystem.
      The tasks from the sub-components are polled by that root task.
      
      However, the way the tasks are bundled was incorrect. There was a giant
      select that was polling those tasks. Particularly, that implies that as soon as
      one of the arms of that select goes into await those sub-tasks stop
      getting polled. This is a recipe for a deadlock which indeed happened
      here.
      
      Specifically, the deadlock happened during sending messages to the
      execute queue by calling
      [`send_execute`](https://github.com/paritytech/polkadot/blob/a68d9be35656dcd96e378fd9dd3d613af754d48a/node/core/pvf/src/host.rs#L601).
      When the channel to the queue reaches the capacity, the control flow is
      suspended until the queue handles those messages. Since this code is
      essentially reached from [one of the select
      arms](https://github.com/paritytech/polkadot/blob/a68d9be35656dcd96e378fd9dd3d613af754d48a/node/core/pvf/src/host.rs#L371),
      the queue won't be given the control and thus no further progress can be
      made.
      
      This problem is solved by bundling the tasks one level higher instead,
      by `selecting` over those long-running tasks.
      
      We also stop treating returning from those long-running tasks as error
      conditions, since that can happen during legit shutdown.
      b89dc00e
  19. Apr 08, 2022
  20. Mar 24, 2022
  21. Mar 23, 2022
  22. Mar 18, 2022
  23. Mar 15, 2022
  24. Mar 14, 2022
  25. Mar 11, 2022
  26. Mar 10, 2022
  27. Feb 25, 2022
  28. Feb 24, 2022
  29. Feb 18, 2022
  30. Feb 14, 2022
  31. Feb 11, 2022
  32. Feb 02, 2022
  33. Jan 31, 2022
  34. Jan 02, 2022
  35. Dec 24, 2021
    • cheme's avatar
      Companion for substrate#9732 (#4104) · 48dc6750
      cheme authored
      * merge master (do not compile)
      
      * fix
      
      * lock
      
      * update lock
      
      * Update to refactoring.
      
      * runtime version
      
      * fmt
      
      * remove trie patch
      
      * remove patch
      
      * No layout alias for bridge proof.
      
      * update depupdate depss
      
      * No switch until migration.
      
      * master lock
      
      * test
      
      * test
      
      * Revert "test"
      
      This reverts commit 57325ef73332bf4b054aa4a667bb716fcf8a0d89.
      
      * Revert "test"
      
      This reverts commit ce74d0e2062806f72c0e9e9ca07b14165f43521e.
      
      * rename feature
      
      * state version as parameter, use the feature only on runtimes.
      
      * update
      
      * update to state version in runtime
      
      * state version from storage
      
      * update lockfile for substrate
      
      Co-authored-by: parity-processbot <>
      48dc6750
  36. Dec 20, 2021
  37. Dec 14, 2021
    • Sergey Pepyakin's avatar
      PVF validation host: do not alter niceness (#4525) · 1493fed1
      Sergey Pepyakin authored
      We wanted to change niceness to accomodate the fact that some of the
      preparation tasks are low priority. For example, when a node sees that
      there is a new para was onboarded the node may start preparing right
      away. Since all other activities are more important, such as network I/O
      or validation of the backed candidates and preparation of the
      immediatelly needed PVFs.
      
      However, it turned out that this approach does not work: generally
      non-root processes can only decrease niceness and they cannot increase
      it to the previous value, as was assumed by the code.
      
      Apart from that, https://github.com/paritytech/polkadot/pull/4123
      assumes all PVFs are prepared in the same way. Specifically, that if a
      PVF preparation failed before, then PVF pre-checking will also report
      that it was failed, even though it could happen that preparation failed
      due to being low-priority. In order to avoid such cases, we decided to
      simplify the whole preparation model. Preparation under low priority
      does not work well with that.
      
      Closes https://github.com/paritytech/polkadot/issues/4520
      1493fed1