1. 26 Aug, 2021 1 commit
  2. 20 Aug, 2021 1 commit
  3. 08 Aug, 2021 1 commit
  4. 06 Aug, 2021 1 commit
  5. 02 Aug, 2021 1 commit
  6. 08 Jul, 2021 1 commit
  7. 22 Jun, 2021 1 commit
  8. 17 Jun, 2021 1 commit
  9. 16 Jun, 2021 1 commit
  10. 09 Jun, 2021 2 commits
  11. 27 May, 2021 1 commit
  12. 22 May, 2021 1 commit
  13. 16 Apr, 2021 1 commit
    • Robert Klotzner's avatar
      Infrastructure improvements (#2897) · fff63cb5
      Robert Klotzner authored
      * Factor out runtime module into utils.
      
      * Add maybe_authority information to `PeerConnected` event.
      
      We already gather this information in authority discovery, so we might
      as well share it with others.
      
      This opens up an easy path to trigger validators differently from normal
      nodes, e.g. for prioritization. This change has become more important
      now, that we just connect to all validators and therefore just have a
      long peer list without any information about those nodes.
      
      * Test fix.
      fff63cb5
  14. 08 Apr, 2021 2 commits
    • Sergey Pepyakin's avatar
      New PVF validation host (#2710) · 0eb7905a
      Sergey Pepyakin authored
      
      
      * Implement PVF validation host
      
      * WIP: Diener
      
      * Increase the alloted compilation time
      
      * Add more comments
      
      * Minor clean up
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Fix pruning artifact removal
      
      * Fix formatting and newlines
      
      * Fix the thread pool
      
      * Update node/core/pvf/src/executor_intf.rs
      
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Remove redundant test declaration
      
      * Don't convert the path into an intermediate string
      
      * Try to workaround the test failure
      
      * Use the puppet_worker trick again
      
      * Fix a blip
      
      * Move `ensure_wasmtime_version` under the tests mod
      
      * Add a macro for puppet_workers
      
      * fix build for not real-overseer
      
      * Rename the puppet worker for adder collator
      
      * play it safe with the name of adder puppet worker
      
      * Typo: triggered
      
      * Add more comments
      
      * Do not kill exec worker on every error
      
      * Plumb Duration for timeouts
      
      * typo: critical
      
      * Add proofs
      
      * Clean unused imports
      
      * Revert "WIP: Diener"
      
      This reverts commit ff2d3ff2
      
      .
      
      * Sync version of wasmtime
      
      * Update cargo.lock
      
      * Update Substrate
      
      * Merge fixes still
      
      * Update wasmtime version in test
      
      * bastifmt
      
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      
      * Squash spaces
      
      * Trailing new line for testing.rs
      
      * Remove controversial code
      
      * comment about biasing
      
      * Fix suggestion
      
      * Add comments
      
      * make it more clear why unwrap_err
      
      * tmpfile retry
      
      * proper proofs for claim_idle
      
      * Remove mutex from ValidationHost
      
      * Add some more logging
      
      * Extract exec timeout into a constant
      
      * Add some clarifying logging
      
      * Use blake2_256
      
      * Clean up the merge
      
      Specifically the leftovers after removing real-overseer
      
      * Update parachain/test-parachains/adder/collator/Cargo.toml
      
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      
      Co-authored-by: default avatarBastian Köcher <bkchr@users.noreply.github.com>
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      0eb7905a
    • asynchronous rob's avatar
      Code, PoV compression and remove `CompressedPoV` struct (#2852) · e5bab572
      asynchronous rob authored
      * use compressed blob in candidate-validation
      
      * add some tests for compressed code blobs
      
      * remove CompressedPoV and apply compression in collation-generation
      
      * decompress BlockData before executing
      
      * don't produce oversized collations
      
      * add test for PoV decompression failure
      
      * fix tests and clean up
      
      * fix test
      
      * address review and fix CI
      
      * take this )
      e5bab572
  15. 01 Apr, 2021 1 commit
    • thiolliere's avatar
      Ease parachain candidate code fetching (#2593) · 96dc1f7a
      thiolliere authored
      
      
      * code stored in para + modify CandidateDescriptor.
      
      * WIP: digest + some more impl
      
      * validation_code_hash in payload + check in inclusion
      
      * check in client + refator
      
      * tests
      
      * fix encoding indices
      
      * remove old todos
      
      * fix test
      
      * fix test
      
      * add test
      
      * fetch validation code inside collation-generation from the relay-chain
      
      * HashMismatch -> PoVHashMismatch + miscompilation
      
      * refactor, store hash when needed
      
      * storage rename: more specific but slightly too verbose
      
      * do not hash on candidate validation, fetch hash instead
      
      * better test
      
      * fix test
      
      * guide updates
      
      * don't panic in runtime
      
      Co-authored-by: asynchronous rob's avatarRobert Habermeier <rphmeier@gmail.com>
      96dc1f7a
  16. 29 Mar, 2021 1 commit
  17. 11 Mar, 2021 1 commit
  18. 10 Mar, 2021 1 commit
  19. 15 Feb, 2021 1 commit
    • Sergey Pepyakin's avatar
      Mitigation of SIGBUS (#2440) · 69b1058d
      Sergey Pepyakin authored
      * Update shared-memory to new version & refactor
      
      This two are combined in a single commit because the new version of
      shared-memory doesn't provide the used functionality anymore.
      
      Therefore in order to update the version of this crate we implement the
      functionality that we need by ourselves, providing a cleaner API along
      the way.
      
      * Significantly decrease the required memory for a workspace
      
      For some reason it was allocating an entire GiB of memory. I suspect
      this has something to do with the current memory size limit of a PVF
      execution environment (the prior name suggests that). However, we don't
      need so much memory anywhere near that amount.
      
      In fact, we could reduce the allocated size even more, but that maybe
      for the next time.
      
      * Unlink shmem just after opening
      
      That will make sure that we don't leak the shmem accidentally.
      
      * Do not compile workspace mod for androind and wasm
      
      * Address some review comments
      
      * Fix the test runner
      
      * Fix missed +1 for the attached flag
      
      * Use .expect rather than .unwrap
      
      * Add a rustdoc for the workspace module
      
      * fixup! Use .expect rather than .unwrap
      
      * Add some doc comments to pub members
      
      * Warn on error removing shm_unlink
      
      * Change the alignment implementation
      
      * Fix the comment nit
      69b1058d
  20. 02 Feb, 2021 1 commit
    • Sergey Pepyakin's avatar
      Clean up PersistedValidationData (#2353) · aba42e4a
      Sergey Pepyakin authored
      * PVD: `block_number`->`relay_parent_number`
      
      * ValidationParams: `relay_chain_height`->`relay_parent_number`
      
      * Expose DMQ MQC hash as a well-known-key
      
      This way the relay storage merkle proofs will be able to obtain the DMQ
      MQC hash and we will be able to remove the it from the
      PersistedValidationData struct.
      
      * PersistedValidationData: Remove HRMP MQC heads
      
      * PersistedValidationData: Remove `dmq_mqc_head`
      
      * Expose the HRMP ingress channel index as a well-known-key
      
      This way a parachain (PVF and collator) can find all the parachains that
      have an outbound channel to the given one. That allows in turn to find
      all the inbound channels for the given para.
      
      Having access to that allows the parachain to get the same information
      as the hrmp_mqc_heads now provide.
      
      * Rename `relay_storage_root` to `relay_parent_storage_root`
      aba42e4a
  21. 29 Jan, 2021 1 commit
  22. 25 Jan, 2021 1 commit
  23. 18 Jan, 2021 1 commit
  24. 15 Jan, 2021 1 commit
  25. 11 Jan, 2021 2 commits
  26. 17 Dec, 2020 1 commit
    • Andronik Ordian's avatar
      refactor View to include finalized_number (#2128) · c429e15c
      Andronik Ordian authored
      * refactor View to include finalized_number
      
      * guide: update the NetworkBridge on BlockFinalized
      
      * av-store: fix the tests
      
      * actually fix tests
      
      * grumbles
      
      * ignore macro doctest
      
      * use Hash::repeat_bytes more consistently
      
      * broadcast empty leaves updates as well
      
      * fix issuing view updates on empty leaves updates
      c429e15c
  27. 27 Nov, 2020 1 commit
    • asynchronous rob's avatar
      Move erasure root out of candidate commitments and into descriptor (#2010) · fff46359
      asynchronous rob authored
      
      
      * guide: move erasure-root to candidate descriptor
      
      * primitives: move erasure root to descriptor
      
      * guide: unify candidate commitments and validation outputs
      
      * primitives: unify validation outputs and candidate commitments
      
      * parachains-runtime: fix fallout
      
      * runtimes: fix fallout
      
      * collation generation: fix fallout
      
      * fix stray reference in primitives
      
      * fix fallout in node-primitives
      
      * fix remaining fallout in collation generation
      
      * fix fallout in candidate validation
      
      * fix fallout in runtime API subsystem
      
      * fix fallout in subsystem messages
      
      * fix fallout in candidate backing
      
      * fix fallout in availability distribution
      
      * don't clone
      
      * clone
      
      Co-authored-by: Sergey Pepyakin's avatarSergei Shulepov <sergei@parity.io>
      fff46359
  28. 24 Nov, 2020 1 commit
  29. 23 Nov, 2020 1 commit
  30. 20 Nov, 2020 2 commits
    • Peter Goodspeed-Niklaus's avatar
      Add Prometheus timers to the subsystems (#1923) · e655654e
      Peter Goodspeed-Niklaus authored
      * reexport prometheus-super for ease of use of other subsystems
      
      * add some prometheus timers for collation generation subsystem
      
      * add timing metrics to av-store
      
      * add metrics to candidate backing
      
      * add timing metric to bitfield signing
      
      * add timing metrics to candidate selection
      
      * add timing metrics to candidate-validation
      
      * add timing metrics to chain-api
      
      * add timing metrics to provisioner
      
      * add timing metrics to runtime-api
      
      * add timing metrics to availability-distribution
      
      * add timing metrics to bitfield-distribution
      
      * add timing metrics to collator protocol: collator side
      
      * add timing metrics to collator protocol: validator side
      
      * fix candidate validation test failures
      
      * add timing metrics to pov distribution
      
      * add timing metrics to statement-distribution
      
      * use substrate_prometheus_endpoint prometheus reexport instead of prometheus_super
      
      * don't include JOB_DELAY in bitfield-signing metrics
      
      * give adder-collator ability to easily export its genesis-state and validation code
      
      * wip: adder-collator pushbutton script
      
      * don't attempt to register the adder-collator automatically
      
      Instead, get these values with
      
      ```sh
      target/release/adder-collator export-genesis-state
      target/release/adder-collator export-genesis-wasm
      ```
      
      And then register the parachain on https://polkadot.js.org/apps/?rpc=ws%3A%2F%2F127.0.0.1%3A9944#/explorer
      
      To collect prometheus data, after running the script, create `prometheus.yml` per the instructions
      at https://www.notion.so/paritytechnologies/Setting-up-Prometheus-locally-835cb3a9df7541a781c381006252b5ff
      
      
      and then run:
      
      ```sh
      docker run -v `pwd`/prometheus.yml:/etc/prometheus/prometheus.yml:z --network host prom/prometheus
      ```
      
      Demonstrates that data makes it across to prometheus, though it is likely to be useful in the future
      to tweak the buckets.
      
      * Update parachain/test-parachains/adder/collator/src/cli.rs
      
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      
      * use the grandpa-pause parameter
      
      * skip metrics in tracing instrumentation
      
      * remove unnecessary grandpa_pause cli param
      
      Co-authored-by: Andronik Ordian's avatarAndronik Ordian <write@reusable.software>
      e655654e
    • Peter Goodspeed-Niklaus's avatar
      Add tracing support to node (#1940) · f7ea3d07
      Peter Goodspeed-Niklaus authored
      * drop in tracing to replace log
      
      * add structured logging to trace messages
      
      * add structured logging to debug messages
      
      * add structured logging to info messages
      
      * add structured logging to warn messages
      
      * add structured logging to error messages
      
      * normalize spacing and Display vs Debug
      
      * add instrumentation to the various 'fn run'
      
      * use explicit tracing module throughout
      
      * fix availability distribution test
      
      * don't double-print errors
      
      * remove further redundancy from logs
      
      * fix test errors
      
      * fix more test errors
      
      * remove unused kv_log_macro
      
      * fix unused variable
      
      * add tracing spans to collation generation
      
      * add tracing spans to av-store
      
      * add tracing spans to backing
      
      * add tracing spans to bitfield-signing
      
      * add tracing spans to candidate-selection
      
      * add tracing spans to candidate-validation
      
      * add tracing spans to chain-api
      
      * add tracing spans to provisioner
      
      * add tracing spans to runtime-api
      
      * add tracing spans to availability-distribution
      
      * add tracing spans to bitfield-distribution
      
      * add tracing spans to network-bridge
      
      * add tracing spans to collator-protocol
      
      * add tracing spans to pov-distribution
      
      * add tracing spans to statement-distribution
      
      * add tracing spans to overseer
      
      * cleanup
      f7ea3d07
  31. 19 Nov, 2020 1 commit
  32. 17 Nov, 2020 1 commit
    • Andronik Ordian's avatar
      update most of the dependencies (#1946) · 31fb8fed
      Andronik Ordian authored
      * update tiny-keccak to 0.2
      
      * update deps except bitvec and shared_memory
      
      * fix some warning after futures upgrade
      
      * remove useless package rename caused by bug in cargo-upgrade
      
      * revert parity-util-mem *
      
      * remove unused import
      
      * cargo update
      
      * remove all renames on parity-scale-codec
      
      * remove the leftovers
      
      * remove unused dep
      31fb8fed
  33. 09 Nov, 2020 2 commits
  34. 06 Nov, 2020 1 commit
    • Sergey Pepyakin's avatar
      Implement HRMP (#1900) · 73553661
      Sergey Pepyakin authored
      * HRMP: Update the impl guide
      
      * HRMP: Incorporate the channel notifications into the guide
      
      * HRMP: Renaming in the impl guide
      
      * HRMP: Constrain the maximum number of HRMP messages per candidate
      
      This commit addresses the HRMP part of https://github.com/paritytech/polkadot/issues/1869
      
      
      
      * XCM: Introduce HRMP related message types
      
      * HRMP: Data structures and plumbing
      
      * HRMP: Configuration
      
      * HRMP: Data layout
      
      * HRMP: Acceptance & Enactment
      
      * HRMP: Test base logic
      
      * Update adder collator
      
      * HRMP: Runtime API for accessing inbound messages
      
      Also, removing some redundant fully-qualified names.
      
      * HRMP: Add diagnostic logging in acceptance criteria
      
      * HRMP: Additional tests
      
      * Self-review fixes
      
      * save test refactorings for the next time
      
      * Missed a return statement.
      
      * a formatting blip
      
      * Add missing logic for appending HRMP digests
      
      * Remove the channel contents vectors which became empty
      
      * Tighten HRMP channel digests invariants.
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
      
      * Remove a note about sorting for channel id
      
      * Add missing rustdocs to the configuration
      
      * Clarify and update the invariant for HrmpChannelDigests
      
      * Make the onboarding invariant less sloppy
      
      Namely, introduce `Paras::is_valid_para` (in fact, it already is present
      in the implementation) and hook up the invariant to that.
      
      Note that this says "within a session" because I don't want to make it
      super strict on the session boundary. The logic on the session boundary
      should be extremely careful.
      
      * Make `CandidateCheckContext` use T::BlockNumber for hrmp_watermark
      
      Co-authored-by: default avatarPeter Goodspeed-Niklaus <coriolinus@users.noreply.github.com>
      73553661
  35. 03 Nov, 2020 1 commit