Skip to content
  1. Jul 09, 2020
  2. Jul 08, 2020
    • Bastian Köcher's avatar
      Improve transaction submission (#6599) · 94cddee1
      Bastian Köcher authored
      * Improve transaction submission
      
      Before this pr the transaction pool validated each transaction, even if
      the transaction was already known to the pool. This pr changes the
      behavior to first check if we are already aware of a transaction and
      thus, to only validate them if we don't know them yet. However, there is
      still the possibility that a given transaction is validated multiple
      times. This can happen if the transaction is added the first time, but
      is not yet validated and added to the validated pool.
      
      Besides that, this pr fixes the wrong metrics of gossiped transactions
      in the network. It also moves some metrics to the transaction pool api,
      to better track when a transaction actually is scheduled for validation.
      
      * Make sure we don't submit the same transaction twice from the network concurrently
      
      * Remove added listener call
      
      * Feedback
      
      * Ignore banned on resubmit
      94cddee1
    • Max Inden's avatar
      *: Update to libp2p v0.21.1 (#6559) · faa72caf
      Max Inden authored
      
      
      * *Cargo.toml: Update versions
      
      * client/network/src/discovery: Adjust to Kademlia  API changes
      
      * client/network: Adjust to one_shot.rs changes
      
      * client/network/discovery: Log address list on trace level
      
      * client/network/discovery: Ignore RoutablePeer and PendingRoutablePeer
      
      * Commit Cargo.lock
      
      * Finish update
      
      Co-authored-by: default avatarPierre Krieger <[email protected]>
      faa72caf
    • Pierre Krieger's avatar
      Send Status message on all newly-opened legacy substreams (#6593) · 8ca05879
      Pierre Krieger authored
      * Send Status message on all newly-opened legacy substreams
      
      * Fix tests
      8ca05879
    • pscott's avatar
      Add log rotation (#6564) · 6eb2eb81
      pscott authored
      
      
      * Use flexi_logger; Add log rotation
      
      * Add default rotation; Add FlexiLogger error
      
      * Fix compilation error
      
      * Remove logging to stdout if it's not a tty
      
      * Fix formatting
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      
      * Remove needless debug statement
      
      * Default to unlimited size for log rotation
      
      * Add more comments about log-age option
      
      * Remove unused variable
      
      * Fix typo in comment
      
      Co-authored-by: default avatarKian Paimani <[email protected]>
      6eb2eb81
    • Max Inden's avatar
      client/network: Rename DebugInfoBehaviour to PeerInfoBehaviour (#6556) · 62f306d9
      Max Inden authored
      Information retrieved via `DebugInfoBehaviour` is not only used for
      debugging purposes, e.g. disconnecting from nodes not responding to
      pings, using external addresses retrieved via indentify, ...
      
      In order for the name to reflect the usage of the module this commit
      renames it.
      62f306d9
    • Bastian Köcher's avatar
      Upgrade `kvdb-*`, `trie-db` and `memory-db` (#6584) · ce0b55ff
      Bastian Köcher authored
      
      
      * Upgrade `kvdb-*`, `trie-db` and `memory-db`
      
      The updates of `trie-db` and `memory-db` are important, as they fix the
      non-deterministic build of Polkadot/Substrate.
      
      * Change `trie-db` version
      
      * Update test-utils/runtime/Cargo.toml
      
      Co-authored-by: default avatarAndronik Ordian <[email protected]>
      
      * Update primitives/trie/Cargo.toml
      
      Co-authored-by: default avatarAndronik Ordian <[email protected]>
      
      * Update `Cargo.lock` and `trie-bench`
      
      * Fix UI tests
      
      * Switch to fixed version of memory-db
      
      Co-authored-by: default avatarAndronik Ordian <[email protected]>
      ce0b55ff
  3. Jul 07, 2020
  4. Jul 04, 2020
    • André Silva's avatar
      babe: report equivocations (#6362) · a9c21b8b
      André Silva authored
      * slots: create primitives crate for consensus slots
      
      * offences: add method to check if an offence is unknown
      
      * babe: initial equivocation reporting implementation
      
      * babe: organize imports
      
      * babe: working equivocation reporting
      
      * babe: add slot number to equivocation proof
      
      * session: move duplicate traits to session primitives
      
      * babe: move equivocation stuff to its own file
      
      * offences: fix test
      
      * session: don't have primitives depend on frame_support
      
      * babe: use opaque type for key owner proof
      
      * babe: cleanup client equivocation reporting
      
      * babe: cleanup equivocation code in pallet
      
      * babe: allow sending signed equivocation reports
      
      * node: fix compilation
      
      * fix test compilation
      
      * babe: return bool on check_equivocation_proof
      
      * babe: add test for equivocation reporting
      
      * babe: add more tests
      
      * babe: add test for validate unsigned
      
      * babe: take slot number in generate_key_ownership_proof API
      
      * babe: add benchmark for equivocation proof checking
      
      * session: add benchmark for membership proof checking
      
      * offences: fix babe benchmark
      
      * babe: add weights based on benchmark results
      
      * babe: adjust weights after benchmarking on reference hardware
      
      * babe: reorder checks in check_and_report_equivocation
      a9c21b8b
  5. Jul 03, 2020
  6. Jul 02, 2020
  7. Jul 01, 2020
    • cheme's avatar
      Restrict `Protected` to some heap types. (#6471) · 424d5c72
      cheme authored
      * Restrict `Protected` to some heap types.
      
      * Comment abut Protected usage.
      
      * Remove Protected from crypto, use secrecy crate for existing uses.
      
      * use a parse function
      
      * fix error convert
      
      * Rename and move secretY string function.
      
      * std result
      424d5c72
    • David's avatar
      Fix mocking multiple http calls in the same function call (#6510) · d73de3be
      David authored
      
      
      * Fix mocking multiple http calls in the same function call
      
      Fixes an issue where a function call would perform more than one http request and wait for each to complete before proceeding. The `RequestId` comes from the length of the `requests` collection in the `OffchainState` and if a request is completed before the next one starts it will be removed and the "next expected" will be off by one. This PR tries to fix that by using a request counter that tracks how many requests have been performed so that we can `remove()` items from the `expected_requests` at the right index.
      
      I suspect that this is a sub-optimal soluton and perhaps requests and their mocks should live side by side in the same collection, e.g. in a tuple of `(PendingRequest, Option<ExpectedRequest>)`.
      
      * Update primitives/core/src/offchain/testing.rs
      
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      
      * Update primitives/core/src/offchain/testing.rs
      
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      
      * Panic on overflow
      
      * Update primitives/core/src/offchain/testing.rs
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      
      * Use a Deque and push/pop expected requests
      
      * fix test
      
      Co-authored-by: default avatarBernhard Schuster <[email protected]>
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      d73de3be
  8. Jun 30, 2020
    • André Silva's avatar
      grandpa: minor cleanups in communication module (#6371) · 4cf1b4fa
      André Silva authored
      * grandpa: replace Result<(), ()> with Option<()>
      
      * grandpa: replace &Option<T> with Option<&T>
      
      * grandpa: cleanup local id and keystore usages
      
      * grandpa: return bool on check_message_signature
      
      * grandpa: fix erroneous log message on startup
      
      * grandpa: fix test
      4cf1b4fa
    • Bastian Köcher's avatar
      Support synching of blocks that are not `new_best` (#6508) · 53be6ec5
      Bastian Köcher authored
      * Start
      
      * Remove debug println
      
      * Add tests
      53be6ec5
    • Ashley's avatar
      Remove the service, replacing it with a struct of individual chain components (#6352) · b832e35c
      Ashley authored
      * WIP
      
      * Making progress
      
      * Almost ready
      
      * Get service tests compiling
      
      * Fix node screenshot
      
      * Line widths
      
      * Fix node cli tests
      
      * Fix node cli warning
      
      * ChainComponents -> ServiceComponents, fix tests
      
      * make spawn_handle public
      
      * Remove spawnnamed impl for taskmanager
      
      * Move the keep alive stuff to the task manager
      
      * Move the telemetry, base path, rpc keep_alive to the service builder
      
      * Make the task manager keep alive an internal detail
      
      * Rewrite the browser start_client future
      
      * Remove run_node etc
      
      * Revert my personal changes to browser-demo/build.sh
      
      * use |config|
      
      * Add a runtime_version function to SubstrateCli
      
      * Reexport role and runtime version from sc cli
      
      * Update Cargo.lock
      
      * runtime_version -> native_runtime_version
      
      * Pass chain spec to native_runtime_version for polkadot
      
      * Fix line widths
      
      * Traitify ServiceComponents Client
      b832e35c
    • Bastian Köcher's avatar
      Fix tx-pool returning the same transaction multiple times (#6535) · 493d5d85
      Bastian Köcher authored
      
      
      * Fix tx-pool returning the same transaction multiple times
      
      This fixes a bug that lead to returning the same transaction multiple
      times when iterating the `ready` iterator. Internally the transaction
      was kept in the `best` list and could be duplicated in that list be
      re-inserting it again. This `best` list is using a `TransactionRef`
      which internally uses a `insertion_id`. This `insertion_id` could lead
      to the same transaction being inserted multiple times into the `best`
      list.
      
      * Update client/transaction-pool/src/testing/pool.rs
      
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      
      Co-authored-by: default avatarNikolay Volf <[email protected]>
      493d5d85
    • Toralf Wittner's avatar
      Update to libp2p v0.20.1 (#6465) · 3de2a880
      Toralf Wittner authored
      
      
      * Update to libp2p-0.20.0
      
      * Update to `libp2p-0.20.1`.
      
      Co-authored-by: default avatarPierre Krieger <[email protected]>
      3de2a880
  9. Jun 26, 2020
  10. Jun 25, 2020
  11. Jun 24, 2020
  12. Jun 23, 2020
    • Cecile Tonglet's avatar
      Ensure the listen addresses are consistent with the transport (#6436) · 4bf044ea
      Cecile Tonglet authored
      * Initial commit
      
      Forked at: 82bdf1a8
      
      
      No parent branch.
      
      * Ensure the listen addresses are consistent with the transport
      
      * Update client/network/src/error.rs
      
      * Update client/network/src/service.rs
      
      * Better implementation
      
      * Fix bad previous impl
      
      * add boot_nodes
      
      * reserved nodes
      
      * test boot nodes
      
      * reserved nodes tests
      
      * add public_addresses and make specific error type
      
      * Update client/network/src/error.rs
      
      Co-authored-by: default avatarPierre Krieger <[email protected]>
      
      Co-authored-by: default avatarPierre Krieger <[email protected]>
      4bf044ea
    • Max Inden's avatar
      client/network/service: Add primary dimension to connection metrics (#6472) · bd79b3de
      Max Inden authored
      * client/network/service: Add primary dimension to connection metrics
      
      Two nodes can be interconnected via one or more connections. The first
      of those connections is called the primary connection.
      
      This commit adds another dimension to the
      `sub_libp2p_connections_{closed,opened}_total` metrics to differentiate
      primary and non-primary connections being opened / closed.
      
      By intuition more than one connection between two nodes is rare.
      Tracking the fact whether a connection is primary or not will help prove
      or disprove this intuition.
      
      * .maintain/monitoring: Ensure to sum over all connections_closed variants
      
      * client/network/service: Rename is_primary to is_first
      
      * client/network/service: Split by metric name with two additional metrics
      
      * Revert ".maintain/monitoring: Ensure to sum over all connections_closed variants"
      
      This reverts commit 2d2f93e414440b9fc9e8f7fae6fe48bd95af6b8f.
      
      * client/network/service: Remove labels from distinct metrics
      bd79b3de
    • Ashley's avatar
      Fix the browser node and ensure it doesn't colour the informant output (#6457) · d976f712
      Ashley authored
      * Fix browser informant
      
      * Fix documentation
      
      * Add an informant_output_format function to the cli config
      
      * Wrap informant output format in an option
      
      * Revert batch verifier
      
      * Remove wasm-timer from primitives io cargo lock
      
      * Drop informant_output_format function
      
      * derive debug for output format
      d976f712
    • Cecile Tonglet's avatar
      impl Debug for sc_service::Configuration (#6400) · 63793c8b
      Cecile Tonglet authored
      * Initial commit
      
      Forked at: 252416d3
      
      
      No parent branch.
      
      * Make sc_service::Configuration derive Debug
      
      * Replace task_executor fn's input by proper TaskExecutor type (cleaner)
      
      * impl From<Fn> for TaskExecutor
      
      * Update client/cli/src/runner.rs
      
      * Add some doc, examples and tests
      
      * Replace Deref by fn spawn as suggested
      
      Co-authored-by: default avatarBastian Köcher <[email protected]>
      63793c8b
    • pscott's avatar
      Optimize offchain worker api by re-using http-client (#6454) · ceb0fa63
      pscott authored
      * Fix typo in offchain's docs
      
      * Use Self keyword in AsyncApi::new()
      
      * Move httpclient to be part of OffchainWorkers to optimize block import
      
      * Fix compilation errors for tests
      
      * Add wrapper struct for HyperClient
      
      * Use lazy_static share SharedClient amongst OffchainWorkers. Remove the need to raise the fd limit
      
      * Revert "Use lazy_static share SharedClient amongst OffchainWorkers. Remove the need to raise the fd limit"
      
      This reverts commit 7af97498a2383b5d7405e27823db8fd97245da41.
      
      * Add lazy_static for tests
      ceb0fa63
    • Roman Borschel's avatar
      Avoid panic on dropping a `sc_network::service::out_events::Receiver`. (#6458) · 6aa8965f
      Roman Borschel authored
      * Avoid panic on dropping a `Receiver`.
      
      * CI
      6aa8965f
  13. Jun 22, 2020
  14. Jun 21, 2020