* 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: Andrei Sandu <54316454+sandreim@users.noreply.github.com>
* use tag
Co-authored-by: Andrei Sandu <54316454+sandreim@users.noreply.github.com>
* 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: Andrei Sandu <54316454+sandreim@users.noreply.github.com>
Co-authored-by: Andronik <write@reusable.software>
* adapt to common good paras
* fmt
* Updated to leave parachain-template alone
* use norm_id + cargo fmt
* removed comment as we are not touching parachain template
* is_penpal
* updated code to new locations
* changes required to get penpal running
* cargo fmt
* remove warning, rename chain
* Update polkadot-parachain/src/command.rs
* Update polkadot-parachain/src/command.rs
Co-authored-by: Ignacio Palacios <ignacio.palacios.santos@gmail.com>
* remove now moved functions
* added runtime description
* add missing copyright notices
* more copyright notices.
Co-authored-by: NachoPal <ignacio.palacios.santos@gmail.com>
* 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: Andronik <write@reusable.software>
* Apply suggestions from code review
Co-authored-by: Andronik <write@reusable.software>
Co-authored-by: Andronik <write@reusable.software>
* pallet-mmr: fix some typos
* pallet-mmr: make the MMR resilient to chain forks
* pallet-mmr: get hash for block that added node
* beefy-mmr: add debug logging
* add explanatory comment
* account for block offset of pallet activation
* add support for finding all nodes added by leaf
* minor improvements
* add helper to return all nodes added to mmr with a leaf append
* simplify leaf_node_index_to_leaf_index
summing the (shifted) differences in peak positions adds up to the (shifted) final position, so
don't need to fold over positions.
* dead fish: this also doesn't work
The idea was to keep a rolling window of `(parent_hash, pos)` leaf
entries in the offchain db, with the window matching the one
that provides `block_num -> block_hash` mappings in `frame_system`.
Once a leaf exits the window it would be "canonicalized" by switching
its offchain db key from `(parent_hash, pos)` to simple `pos`.
This doesn't work however because there's no way to get leaf contents
from offchain db while in runtime context.. so no way to get+clear+set
leaf to change its key in offchain db.
Ideas:
1. move the "canonicalization" logic to offchain worker
2. enhance IndexingApi with "offchain::move(old_key, new_key)"
This is weird, but correct, deterministic and safe AFAICT, so
it could be exposed to runtime.
* simplify rightmost_leaf_node_index_from_pos
* minor fix
* move leaf canonicalization to offchain worker
* move storage related code to storage.rs
* on offchain reads use canonic key for old leaves
* fix offchain worker write using canon key
* fix pallet-mmr tests
* add documentation and fix logging
* add offchain mmr canonicalization test
* test canon + generate + verify
* fix pallet-beefy-mmr tests
* implement review suggestions
* improve test
* pallet-mmr: add offchain pruning of forks
* pallet-mmr: improve offchain pruning
Instead of keeping pruning map as single blob in offchain db,
keep individual parent-hash lists with block-num identifier as part
of the offchain key.
Signed-off-by: acatangiu <adrian@parity.io>
* pallet-mmr: improve MMRStore<OffchainStorage>::get()
Do the math and retrieve node using correct (canon or non-canon)
offchain db key, instead of blindly looking in both canon and non-canon
offchain db locations for each node.
Still fallback on looking at both if for any reason it's not where
expected.
Signed-off-by: acatangiu <adrian@parity.io>
* pallet-mmr: storage: improve logs
* fix tests: correctly persist overlay
runtime indexing API works on overlay, whereas offchain context
bypasses overlay, so for loops > canon-window, canon would fail.
* pallet-mmr: fix numeric typo in test
* add comment around LeafData requirements
Signed-off-by: acatangiu <adrian@parity.io>
Co-authored-by: Robert Hambrock <roberthambrock@gmail.com>
* Fixed the bug with transfer value.
* Apply suggestions from code review
Co-authored-by: Alexander Theißen <alex.theissen@me.com>
* Moved check into `initial_transfer`
* Fmt
Co-authored-by: Alexander Theißen <alex.theissen@me.com>
* 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
* zombienet: try to fix parachains upgrade test
* try a different collator image
* Revert "try a different collator image"
This reverts commit c83b2929f5a703be0979b4429ab01808408b074d.
* try setting cumulusBased
* fix zombienet upgrade test
* change image
* update command for test
* update zombienet image
* bump zombienet version
* bump zn version
* Revert "try setting cumulusBased"
This reverts commit 0312fa0a7a19065e097b186a08757938abd7c130.
* Revert "update command for test"
This reverts commit 81707e30188a1838e952d66deedaecbff6cb2971.
* Revert "change image"
This reverts commit 43a4f4a6a0286f5bf6698a44b82de835a723b531.
* zombienet: change validator image to a PR branch
Co-authored-by: Javier Viola <javier@parity.io>
* Prevend unsoundness in environments with broken `madvise(MADV_DONTNEED)`
* Add the `std` feature to `rustix` dependency
Apparently not having this breaks compilation on non-nightly toolchains.
* Autodetect the page size when checking whether `madvise` works
* Only make sure that the madvice check doesn't return `Err`
* Democracy.fast_track not allowed with zero voting period
* revert static parameter alter line
* ensure voting period greater zero
* update doc for fast_track
* unit test: instant fast track to the next block referendum is backed
* fix typos in comments