* Check spawned worker version vs node version before PVF preparation
* Address discussions
* Propagate errors and shutdown preparation and execution pipelines properly
* Add logs; Fix execution worker checks
* Revert "Propagate errors and shutdown preparation and execution pipelines properly"
This reverts commit b96cc3160ff58db5ff001d8ca0bfea9bd4bdd0f2.
* Don't try to shut down; report the condition and exit worker
* Get rid of `VersionMismatch` preparation error
* Merge master
* Add docs; Fix tests
* Update Cargo.lock
* Kill again, but only the main node process
* Move unsafe code to a common safe function
* Fix libc dependency error on MacOS
* pvf spawning: Add some logging, add a small integration test
* Minor fixes
* Restart CI
---------
Co-authored-by: Marcin S <marcin@realemail.net>
* Histogram support in runtime metrics
Add support for histograms to the runtime metrics. Additionally add
`polkadot_parachain_verify_dispute_signature` histogram which tracks the
time needed from the runtime to verify a single validator signature of a
dispute statement.
* Add noops
* u64 instead of f64
* Update buckets
* Wrap `get_current_time()` in runtime metrics
* Change the dimension of the Histogram from usec to sec
* Fix a compilation error
* Update buckets
* Fix `on_signature_check_complete` calculation
* Update buckets
* Update buckets
* formatting
* Another weights update
* Adjust buckets again
* Final buckets adjustment
* Revert "Fix a compilation error"
This reverts commit 06290b40a39eeb78de2602d8916a39edf7a8b714.
* Update primitives/src/v4/metrics.rs
Co-authored-by: Andrei Sandu <54316454+sandreim@users.noreply.github.com>
* Use `saturating_sub` for time difference calculation
* Pass nanoseconds to client instead of seconds (using f64 in runtime is dangerous)
---------
Co-authored-by: Andrei Sandu <54316454+sandreim@users.noreply.github.com>
* Added participation and queue sizes metrics
* First draft of all metric code
* Tests pass
* Changed Metrics to field on participation + queues
* fmt
* Improving naming
* Refactor, placing timer in ParticipationRequest
* fmt
* Final cleanup
* Revert "Final cleanup"
This reverts commit 02e5608df64b2e0f7810905e4508673b2037d351.
* Changing metric names
* Implementing Eq only for unit tests
* fmt
* Removing Clone trait from ParticipationRequest
* fmt
* Moved clone functionality to tests helper
* fmt
* Fixing dropped timers on repeat requests
* Keep older best effort timers
* Removing comment redundency and explaining better
* Updating queue() to use single mem read
* fmt
* Some renames
* Fix
* Fix build for new APIs
* Remove diener
* Fixes
* Fixes
* Fix integration tests
* Fixes
* fix nis issuance
* Update Cargo.toml
* Polkadot doesn't have freezes/holds yet
* No networks use freezes/holds
* update lockfile for {"substrate"}
* Fix tests
There are more failing tests; just starting with the easy ones.
Reserved balance does not count towards ED anymore, therefore reducing
all the reserves by ED (1).
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
* Fixes for Polkadot pallets
* Fix parachains benchmarks
* Update Substrate
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
---------
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: parity-processbot <>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
* Added participation and queue sizes metrics
* First draft of all metric code
* Tests pass
* Changed Metrics to field on participation + queues
* fmt
* Improving naming
* Refactor, placing timer in ParticipationRequest
* fmt
* Final cleanup
* Revert "Final cleanup"
This reverts commit 02e5608df64b2e0f7810905e4508673b2037d351.
* Changing metric names
* Implementing Eq only for unit tests
* fmt
* Removing Clone trait from ParticipationRequest
* fmt
* Moved clone functionality to tests helper
* Added participation and queue sizes metrics
* First draft of all metric code
* Tests pass
* Changed Metrics to field on participation + queues
* fmt
* Improving naming
* Refactor, placing timer in ParticipationRequest
* fmt
* Final cleanup
* Revert "Final cleanup"
This reverts commit 02e5608df64b2e0f7810905e4508673b2037d351.
* Changing metric names
* Implementing Eq only for unit tests
* fmt
* Don't send `ActiveLeaves` from leaves in db on startup in Overseer. Wait for fresh leaves instead.
* Don't pass initial set of leaves to Overseer
* Fix compilation error in subsystem-test-helpers
* Additional tracing in `provisioner`, `vote_selection`
* Add `fetched_onchain_disputes` metric to provisioner
* Some tracelines in dispute-coordinator
TODO: cherry pick this in the initial branch!!!
* Remove spammy logs
* Remove some trace lines
* Temporary commit to make the Substrate CI happy
* Revert "Temporary commit to make the Substrate CI happy"
This reverts commit 9eb2fd223c3e36312242d4fda4ebacf3dd732547.
* Align to substrate master
* Update lock
* Adjust some naming according to the new substrate crates
* BlockId removal: refactor of runtime API
It changes the first argument of all generated runtime API calls from: `BlockId<Block>` to: `Block::Hash`
* fmt
* update lockfile for {"substrate"}
---------
Co-authored-by: parity-processbot <>
* Do not call longest chain by default
We always called longest chain by default just for some potential
logging. This was probably some oversight for when this select chain
implementation was introduced.
* Fix tests
* Change `MaxMemorySize` to `MaxMemoryPages`
We should set the max memory for the executor in pages (64KiB) and not in bytes.
The wasm memory is always a multiple of a page and we should use the
same terminology.
* FMT
* Fix warning
* Use a `BoundedVec` in `ValidationResult`
> Use a `BoundedVec` for `upward_messages` and `horizontal_messages` in order to
> limit the number of individual messages/memory allocations right at decoding
> time. The reason for this is that the `ValidationResult` may contain a code
> upgrade (including a full PVF binary), so the total size limit can't be set
> too low and this limit will still allow several millions of upward messages,
> which will (due to the memory allocator overhead) already have a
> non-negligible memory footprint in decoded form.
* List all fields when hashing so we don't miss one
* Define types for `BoundedVec`s of messages
* Fix test compile errors
* Depend on `bounded-collections` 0.1.4 (fixes allocation issue)
* Fix compilation issue
* Derive `Hash` instead of manual `impl`
* Avoid use of unwrap