Commit Graph

4433 Commits

Author SHA1 Message Date
gabriel klawitter c8a0d8bc5b ci: deploy alerting rules: fix run on changes (#6998)
* ci: deploy alerting rules: fix run on changes

Co-authored-by: Max Inden <mail@max-inden.de>
2020-09-01 12:48:03 +02:00
Ashley 57dd0facbb Move subcommands from sc-cli to nodes (#6948) 2020-09-01 09:06:22 +00:00
Xiliang Chen d2dcb5ce7a fix pallet-evm features (#6995) 2020-09-01 05:26:25 +02:00
Ashley 48269e0031 Change browser-demo build.sh to use python 3 again (#6992) 2020-08-31 17:05:29 +00:00
Pierre Krieger 860362869b Silence the error about non-registered protocols (#6987)
* Silence the error about non-registered protocols

* Silence the other two locations as well
2020-08-31 15:41:17 +00:00
Gerben van de Wiel 9b4315a62d Inverting events set and changed in nicks pallet (#6989)
Fixing #6988
2020-08-31 14:20:41 +00:00
cheme 734d30bf5d Update substrate bip39 version. (#6955)
* update bip39 version

* and lock
2020-08-31 14:16:30 +00:00
Max Inden 875daa31bf client/cli/src/config: Warn on low file descriptor limit (#6956)
* client/cli/src/config: Warn on low file descriptor limit

Substrate sets the soft file descriptor limit to the hard limit at
startup. In the case of the latter being low already (< 10_000) a
Substrate node under high demand might run into issues e.g. when opening
up new TCP connections or persisting data to the database.

With this commit a warn message is printed to stderr.

* client/cli/Cargo.toml: Update to fdlimit 0.2.0
2020-08-31 12:37:06 +00:00
Pierre Krieger e9d446a4ce Use AsyncReadExt::read_exact, not just read (#6977) 2020-08-31 08:55:43 +00:00
Andronik Ordian d0a58a7360 update kvdb-rocksdb to 0.9.1 and rocksdb to 6.11.4 (#6963) 2020-08-29 03:30:13 +00:00
Max Inden 8fd343e39d client/*: Treat protocol name as str and not [u8] (#6967)
* client/*: Treat protocol name as str and not [u8]

Notification protocol names are in practice always valid utf8 strings.
Instead of treating them as such in the type system, thus far they were
casted to a [u8] at creation time.

With this commit protocol names are instead treated as valid utf8
strings throughout the codebase and passed as `Cow<'static, str>`
instead of `Cow<'static, [u8]>`. Among other things this eliminates the
need for string casting when logging.

* client/network: Don't allocate when protocol name is borrowed
2020-08-28 15:34:25 +00:00
Alexander Popiak ff1e8150e1 add generated weight info for pallet-collective (#6789)
* add benchmark for disapprove_proposal

* use generated WeightInfo for pallet-collective weights

* order collective benchmark params alphabetically to get a consistent ordering

* address review comments

* remove default impl of WeightInfo for ()

* remove comments about weight changes

* add default weights

* Apply suggestions from code review

Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>

* whitelist voter account in benchmark

* update weights

* MaxMembers configurable

* remove base weight comment

* add weight to technical collective

* another DB whitelist optimization

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
2020-08-28 08:46:43 +00:00
Pierre Krieger 37d0e00d83 Implement request-responses protocols (#6634)
* Implement request-responses protocols

* Add tests

* Fix sc-cli

* Apply suggestions from code review

Co-authored-by: Max Inden <mail@max-inden.de>

* Fix naming

* Fix other issues

* Other naming fix

* Fix error logging

* Max sizes to u64

* Don't kill connections on refusal to process

* Adjust comment

Co-authored-by: Max Inden <mail@max-inden.de>
2020-08-27 12:53:20 +00:00
Guillaume Thiolliere 5b7af66384 fix bench db wipe (#6965) 2020-08-26 18:36:37 +00:00
André Silva a79c34778c babe: fix report_equivocation weight (#6936)
* babe: fix report_equivocation weight

* node: bump spec_version

* babe: fix floor in report_equivocation weight calculation

Co-authored-by: Gavin Wood <gavin@parity.io>

* grandpa: fix floor in report_equivocation weight calculation

* babe, grandpa: add test for weight_for::report_equivocation

Co-authored-by: Gavin Wood <gavin@parity.io>
2020-08-26 18:27:44 +02:00
Kian Paimani 314d948687 Better prime election. (#6939)
* Better prime election.

* improve docs

* more sensible variable names

* link to Borda count wiki

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-08-26 18:26:56 +02:00
Shawn Tabrizi e69d12e76c Support Staking Payout to Any Account (#6832)
* Support staking payout to any account

* fix offences benchmarks
2020-08-26 18:26:33 +02:00
Pierre Krieger 1bd6082cf7 Enforce that ProtocolId is a string (#6953)
* Enforce that ProtocolId is a string

* Fix test
2020-08-26 12:27:30 +00:00
Kian Paimani 8856be80bc Fix staking fuzzer. (#6954) 2020-08-26 10:15:12 +02:00
Bastian Köcher f418ad2195 Remove implementation of Randomness for () (#6959) 2020-08-26 09:05:49 +02:00
Shawn Tabrizi b80191d0ff Fix unwraps and other issues with benchmarks (#6957)
* Fix unwraps and other issues with benchmarks

* undo changes to contracts pallet
2020-08-25 21:40:27 +00:00
Guillaume Thiolliere d628c62d6d update tracing attribute (#6950) 2020-08-24 15:33:15 +00:00
Swezey dd0d7f78f8 Add ShiftNrg Network SS58 address type (#6942) 2020-08-24 16:22:25 +02:00
Max Inden 9a17d58960 client/authority-discovery: Limit number of addresses per authority (#6947)
* client/authority-discovery: Test addresses per authority limit

* client/authority-discovery: Limit number of addresses per authority
2020-08-24 14:17:39 +00:00
Guillaume Thiolliere 9b42720ac5 Fix benchmark read/write key tracker for keys in child storages. (#6905)
* WIP: read child trie and write child trie

* add test

* refactor a bit + improve log

* better naming

* trigger CI

* Revert "trigger CI"

This reverts commit d0aadaeb6a12fc6c39f01b3c1b5725d19f085865.
2020-08-24 13:40:16 +00:00
Max Inden f04afd596b .maintain/monitoring/alerting-rules: Add fd alert (#6946)
Alert on high file descriptor allocation.
2020-08-24 15:37:07 +02:00
André Silva e05055c91c grandpa: always create and send justification if there are any subscribers (#6935)
* grandpa: use bytes type for justification rpc notification

* grandpa: always create justification if there are rpc subscribers

* grandpa: wording

* grandpa: replace notify_justification macro with function

* grandpa: prefer Option<&T> over &Option<T>
2020-08-24 13:29:17 +00:00
Shawn Tabrizi 4462f7150d Enable verification logic when executing benchmarks (#6929)
* Add `--verify` flag to benchmark execution

* make it so `--verify` can be used for getting the actual benchmarks

* undo manual testing

* oops

* use benchmark config struct

* verify is default on, docs update

* remove clone

* improve formatting

* fix test

* bump impl for ci
2020-08-24 15:24:00 +02:00
Ashley c8ca2ce183 Dynamically generate CHT roots on a full client (#6944)
* Generate CHT roots on a full client

* add changes_trie_root function

* Add a test

* Line widths

* Fix sc-service-test

* Clarify comments

* Revert comments
2020-08-24 15:11:21 +02:00
Ashley f009f6c227 Add a LightSyncState field to the chain spec (#6894)
* Reset code, almost ready for PR

* Improved build_hardcoded_spec

* Fix line widths

* Fix tests

* Fix sc-service-test

* Suggestions from code review

* Rename to LightSyncState

* It's not syncing :^(

* It syncs!

* Remove rpc call

* Convert spaces to tabs

* Moved sc-service things to export_sync_state.rs

* Fix tests

* Wait for syncing with network_status_sinks

* Remove sc-network from node-template

* Apply suggestions from code review

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Various changes, split the flag up into 2 pieces to make testing easier.

* Update client/cli/src/commands/build_spec_cmd.rs

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* Revert a lot of changes

Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
2020-08-24 08:34:16 +00:00
Xiliang Chen b1a8ff1724 expose Deposit (#6943) 2020-08-24 09:38:18 +02:00
Max Inden 5c500aa783 client/authority-discovery: Append PeerId to Multiaddr at most once (#6933)
* client/authority-discovery/worker: Extract address getter

* client/authority-discovery: Test for no duplicate p2p components

* client/authority-discovery: Append PeerId to Multiaddr at most once

When collecting the addresses to be published for the local node,
`addresses_to_publish` adds the local nodes `PeerId` to each
`Multiaddr`. Before doing so, ensure the `Multiaddr` does not already
contain one.

* client/authority-discovery: Remove explicit return
2020-08-24 09:37:32 +02:00
Bastian Köcher da13dc3c3f Make Ss58AddressFormat display less expressive (#6941)
Instead of using the `Debug` implementation inside the `Display`
implementation this pr changes it to display only the name of the format.
2020-08-23 22:52:47 +00:00
Pierre Krieger 6d9928e4bf Wait for all notifications protocols to be open before reporting opening (#6821)
* Wait for all notifications protocols to be open before reporting opening

* Update client/network/src/protocol/generic_proto/handler/notif_out.rs

Co-authored-by: Max Inden <mail@max-inden.de>

* Concern

* Fix attempt

* Another fix attempt

* Update client/network/src/protocol/generic_proto/handler/group.rs

Co-authored-by: Max Inden <mail@max-inden.de>

Co-authored-by: parity-processbot <>
Co-authored-by: Max Inden <mail@max-inden.de>
2020-08-23 22:26:42 +02:00
Gavin Wood cf4c744eb3 Time-delay proxies (#6770)
* Time-delay proxies.

* Tests

* Initial couple of benchmarks

* Fix up runtime

* Last couple of benchmarks

* Tests

* Docs

* Migration

* add tests to proxy benchmarks

* generated benchmarks, not integrated

* Fix weight trait

* integrate weightinfo

* default weight

* Grumble

* Deduplication, split proxy from announced_proxy and don't require reauthentication

* Fix

* Remoe superfluous

* Typos

* Indent

* Fix

* Fixes

* rename 'proxy_announced' -> 'announced_proxy'

* flip rename

* comments and spacing

* fix proxy_announced

* remove unneeded `execute` marker

* Avoid unneeded changes to extrinsic indices

* Cleanup

* Fixes

* Update Benchmarks and Weights for Delayed Proxy (#6811)

* update bechmarks to parameterize announcements

* remove announcement param from proxy

* Update pallet_proxy.rs

* Update weights

* Bump runtime

* Fix benchmark

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-08-23 10:52:40 +00:00
Bastian Köcher e7f25ebda8 Fix printing of subkey when using the --network override (#6932)
* Fix printing of subkey when using the `--network` override

This fixes a bug where `--network` did not printed the account ss58 address for the
requested network. Basically we now always print all account ss58 addresses using the
requested network.

* Review comments

* Fixes test

* Update client/cli/src/commands/inspect.rs

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>

* Update client/cli/src/commands/utils.rs

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>

* Fix more tests

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
2020-08-22 12:53:39 +00:00
Qinxuan Chen 8ae1695526 Remove duplicated dependencies (#6930)
Signed-off-by: koushiro <koushiro.cqx@gmail.com>
2020-08-21 16:25:58 +02:00
Max Inden 69e349bd51 *: Update to next libp2p version 0.24.0 (#6891)
* *: Update to next libp2p version (likely v0.24.0)

* Revert "*: Update to next libp2p version (likely v0.24.0)"

This reverts commit ffe1545aba6c2557a2843579de331f3fc1c60743.

* */Cargo.toml: Update to libp2p v0.24.0

* client/network/src/service: Handle ConnectionClosed returning Option

* Cargo.*: Test kad usize conversion

* Revert "Cargo.*: Test kad usize conversion"

This reverts commit ad317879782f982cb4a4c76029a72b5b97e82bec.

* Cargo.lock: Update to libp2p-kad v0.22.1

* client/cli/Cargo.toml: Update to libp2p 0.24.0
2020-08-21 06:25:23 +00:00
Pierre Krieger 09662dc873 Remove the legacy requests-answering protocols (#6709)
Co-authored-by: parity-processbot <>
2020-08-20 15:53:37 +00:00
Pierre Krieger 74cf119d4a Try un-ignore flaky test (#6923) 2020-08-20 15:10:00 +00:00
Benjamin Kampmann 2416aa7999 prepping for releasing rc6 (#6922)
* Bump version

* update test-utils crates to be ready for publishing

* adding changelog

* Adding automaticly generated READMEs

* fixing versions

* another version mishap
2020-08-20 17:04:42 +02:00
Cecile Tonglet 6f59c95c89 Clean shutdown for subcommands (#6909) 2020-08-20 16:38:00 +02:00
Seun Lanlege 6963272451 Merge Subkey into sc-cli (#4954)
* draft

* revert

* WIP

* all that remains is tests

* update Cargo.lock

* tests WIP

* WIP refactor node-template-runtime and node-runtime

* implments sc_cli::RuntimeAdapter for node_template_runtime::Runtime

* final draft

* fix update_config for subcommands

* proper AccountId decoding

* test-runtime tests

* revert

* move RuntimeAdapter to cli-utils

* use &'static str for TryFrom::<&'a str>::Error for Ss58AddressFormat

* tests

* add frame-system to sc-cli dev-dependencies

* add frame-system to sc-cli dev-dependencies

* fix ui test

* wip

* fixed inspect test

* bump impl version

* bump impl version, fixx spaces remove todos

* pallet-balances-cli, rustc for some reason cannot resolve pallet_balances_cli in node-cli 😩

* wip

* Subcommand::run takes &self

* can't believe i missed that 🤦🏾‍♂️

* bump wasm-bindgen for some reason

* adds key subcommand, rename generate-node-key to generate-node-id

* cargo update and crossed fingers 🤞🏽

* update ui test

* update more ui tests

* should be all good now

* revert subkey change

* revert subkey change

* adds frame-utilities-cli

* Apply suggestions from code review

Co-authored-by: Benjamin Kampmann <ben@gnunicorn.org>

* removes frame from sc-cli, fix license

* my editor and ci disagrees on line width

* bump spec version

* turn off default features for parity-scale-codec

* enable full_crypto feature for sp-core in cli-utils

* merge frame-utilities-cli with pallet-balances-cli

* remove full_crypto feature from sp_core in cli-utils

* bump Cargo.lock

* cli-utils -> frame-utils

* rename BlockNumber to GenericNumber, fix spaces

* fix spaces

* construct additional_signed manually

* sign test

* remove unused vars

* implement subkey with frame-utilities-cli and sc_cli

* fix moduleid test

* CI and clion disagree on line widths

* adds associated Params type to SignedExtensionProvider

* Apply suggestions from code review

Co-authored-by: Benjamin Kampmann <ben@gnunicorn.org>

* move some code around

* removes unneccesary generic params

* moves module_id back to frame_utilities_cli

* Apply suggestions from code review

Co-authored-by: Benjamin Kampmann <ben@gnunicorn.org>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>

* remove print_ext

* remove MaybeDisplay from pallet_balances::Trait::Balance

* a lot of stuff tbh

* adds ExtrasParamsBuilder

* remove tests for ModuleIdCmd

* address comments from PR

* bump Cargo.lock

* manually insert key into keystore

* remove unnecessary SharedParams

* add validation to vanity pattern, remove unused arg

* remove SharedParams from Sign, Vanity, Verify

* remove SharedParams from ModuleIdCmd, remove expect from Verify, new line to Cargo.toml

* remove SharedParams from InsertCmd

* 🤦🏾‍♂️

* deleted prometheus.yml

* move a few things around

* fix vanity test

Co-authored-by: Benjamin Kampmann <ben@gnunicorn.org>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: Benjamin Kampmann <ben@parity.io>
2020-08-20 09:55:03 +00:00
Shawn Tabrizi 481ad884d6 Dynamic Benchmarking DB Whitelist (#6815)
* Add `get_whitelist` api

* add whitelisted caller

* Whitelist caller

* remove caller 0

* initial piping of origin (not actual value yet)

* remove attempt to pass origin around

* Add whitelist for `DidUpdate` storage on `pallet_timestamp`

* fix traits

* only add to whitelist if !contains

* PassBy not implemented error

* Whitelist read/writes explicitly per key

* update docs

* reduce trait constraint

* copy pasta

* Apply suggestions from code review

Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>

* rename functions @apopiak

* missed some renaming

* enable doc tests

* Update docs

Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io>
2020-08-19 16:15:50 +00:00
André Silva 8b5ced7fa7 babe: handle error when checking/reporting equivocations (#6915) 2020-08-19 18:11:14 +02:00
Bastian Köcher 7bf838f225 Combine default values used at initialization in a trait (#6857)
This moves default values used in the Substrate code base when
initializing a service into a common trait. Currently this trait only
contains listen ports, but this could be extended in the future.
Essentially this will make overriding these values much easier for
Cumulus, where we have 2 nodes running in one binary.
2020-08-19 17:30:56 +02:00
Pierre Krieger 52e55daeef Distribute the network future polling time more evenly (#6903)
* Distribute the network future polling time more evenly

* Update client/network/src/service.rs
2020-08-19 11:45:30 +00:00
Bastian Köcher f58e950415 Import IterableStorage* traits by decl_storage! (#6907)
Import `IterableStorageMap` and `IterableStorageDoubleMap` automatically
by `decl_storage!` as the other storage traits.
2020-08-18 07:36:58 +00:00
Roman Borschel 807329ddb8 Add support for sourced metrics. (#6895)
* Add support for sourced metrics.

A sourced metric is a metric that obtains its values
from an existing source, rather than the values being
independently recorded. It thus allows collecting
metrics from existing counters or gauges without
having to duplicate them in a dedicated prometheus
counter or gauge (and hence another atomic value).

The first use-case is to feed the bandwidth counters
from libp2p directly into prometheus.

* Tabs, not spaces.

* Tweak bandwidth counter registration.

* Add debug assertion for variable labels and values.

* Document monotonicity requirement for sourced counters.

* CI

* Update client/network/src/service.rs

Co-authored-by: Max Inden <mail@max-inden.de>

Co-authored-by: Max Inden <mail@max-inden.de>
2020-08-18 07:59:32 +02:00
Shawn Tabrizi 74a583d147 WeightInfo for System, Timestamp, and Utility (#6868)
* initial updates to system

* fix compile

* Update writer.rs

* update weights

* finish system weights

* timestamp weights

* utility weight

* Fix overflow in weight calculations

* add back weight notes

* Update for whitelisted benchmarks

* add trait bounds

* Revert "add trait bounds"

This reverts commit 12b08b7189aa3969f96fa19b211a370860fdb240.

* Update weights for unaccounted for read
2020-08-17 20:59:23 +00:00