Commit Graph

3741 Commits

Author SHA1 Message Date
Xiliang Chen fbc4e7f055 fix Fixed64 (#5784)
* fix fixed64

* improve

* bump version
2020-04-26 19:39:16 +02:00
Bastian Köcher 15e33c46f3 Add support for custom runtime upgrade logic (#5782)
This adds support for registering custom runtime upgrade logic that can
be implemented in the runtime directly instead of putting it into a module.
2020-04-25 17:59:58 +02:00
Xiliang Chen 74bc141f4f expose constants for identity pallet (#5783)
* expose constants

* bump version
2020-04-25 15:17:53 +02:00
Tomasz Drwięga ef1c2d0615 Compute weight only once. (#5780) 2020-04-25 12:01:21 +00:00
Joshy Orndorff a08bf89662 Support Justification and FinalityProof import in pow import queue. (#5781) 2020-04-25 10:57:06 +00:00
Shawn Tabrizi 8a33c297b4 Introduce BlockExecutionWeight and ExtrinsicBaseWeight (#5722)
* Introduce `BlockExectionWeight` and `ExtrinsicBaseWeight`

* Add new traits everywhere

* Missed one update

* fix tests

* Update `check_weight` logic

* introduce `max_extrinsic_weight` function

* fix + add tests

* format nits

* remove println

* make test a bit more clear

* Remove minimum weight

* newlines left over from find/replace

* Fix test, improve clarity

* Fix executor tests

* Extrinsic base weight same as old `MINIMUM_WEIGHT`

* fix example test

* Expose constants

* Add test for full block with operational and normal

* Initiate test environment with `BlockExecutionWeight` weight

* format nit

* Update frame/system/src/lib.rs

Co-Authored-By: Kian Paimani <5588131+kianenigma@users.noreply.github.com>

* Replace `TransactionBaseFee` with `ExtrinsicBaseWeight` (#5761)

* Replace `TransactionBaseFee` with `ExtrinsicBaseFee`

* Fix stuff

* Fix and make tests better

* Forgot to update this test

* Fix priority number in test

* Remove minimum weight from merge

* Fix weight in contracts

* remove `TransactionBaseFee` from contract tests

* Let `register_extra_weight_unchecked` go past `MaximumBlockWeight`

* address feedback

Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
2020-04-25 05:59:54 +00:00
André Silva 3793fbf9cc babe: remove error fallback from threshold calculation (#5764)
* babe: remove error fallbacks from threshold calculation

* babe: fix indent

* babe: fix domain

* babe: fix compilation

* babe: improve expect

* babe: add one more note about p's limit
2020-04-24 17:56:41 -04:00
parity-processbot[bot] 51d68b6d6e Merge 324e51fbbf into master 2020-04-24 18:34:36 +00:00
thiolliere a564cafae3 Update weight formula for session (with new_session taking full block) (#5738)
* weight formula for session except on_initialize

* fix typo and set on_initialize to MaxWeight

* Add note
2020-04-24 18:49:36 +02:00
s3krit d974df243a Increase check-gitlab-pipeline timeout (#5774) 2020-04-24 17:42:49 +02:00
Max Inden 324e51fbbf client/authority-discovery: Reduce log level replaced by metrics
Instead of logging value-found-event-handling failures or value-put
failures on error level, log them on debug level only additionally
recording them via Prometheus.

Motivation is that both events can happen in "normal" operations and
thus clutter the logs.
2020-04-24 17:40:48 +02:00
Wei Tang 969720c2ad babe: secondary blocks with VRF (#5501)
* babe: secondary blocks with VRF

* Fix node runtime compile

* Fix test-utils runtime interface

* Fix babe tests

* typo: v == 2

* babe: support online configuration upgrades

* Fix rpc tests

* Fix runtime version tests

* Switch to use NextConfigDescriptor instead of changing runtime interface

* Fix tests

* epoch-changes: map function that allows converting with different epoch types

* Add migration script for the epoch config change

* Fix docs for PrimaryAndSecondaryVRFSlots

* Add docs of `SecondaryVRF` in babe crate

* babe-primitives: Secondary -> SecondaryPlain

* babe-client: Secondary -> SecondaryPlain

* Fix migration tests

* test-utils-runtime: Secondary -> SecondaryPlain

* Fix missing name change in test-utils-runtime

* Fix migration: Epoch should be EpochV0

* Update client/consensus/babe/src/lib.rs

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

* Fix new epochChanges version

* Fix babe-primitives naming changes

* Fix merge issues in babe-client

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
Co-authored-by: André Silva <andre.beat@gmail.com>
2020-04-24 16:03:03 +01:00
Alexander Popiak 8a3dcd6862 Calculate and refund weight for identity pallet (#5680)
* add old_registrar_count as param to estimate weight

* cast count to Weight

Co-Authored-By: Shawn Tabrizi <shawntabrizi@gmail.com>

* add weight calculation for set_identity

* remove superfluous weight comment

* add detailed weight estimation for set_subs

* adjust benchmarking code to the new API

* add second parameter to set_subs benchmark

* rename o to p

* calculate weight based on benchmarks

* use try_mutate for registrars

* fix weight number typo

* update weights for set_subs + add weights for clear_identity and request_judgement

* improve naming and docs

* add weight calculation for cancel_request

* fix benchmark

* fix tests

* fix arithmetic overflow in balances triggered by tests

* add weight calcluations for more dispatchables

* add weight calculation for provide_judgement

* mark param as unused

* add MaxRegistrars associated type used for weight estimation

* check that MaxRegistrars is not exceeded

* add remaining weight calculations

* use weight refunds to use more constants in weight estimation

* adjust usage of clear_identity

* refund request_judgement weights and remove param

* refund weights for cancel_request and remove param

* add remaining refunds and remove params

* refund weight for set_subs and remove param

* make comment more specific

* add range note to benchmarking docs

* fix inconsistencies before review

* fix actual weight calculation for add_registrar

* remove duplicate balance ops weights + refund on all dispatchables

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-04-24 16:46:58 +02:00
Bernhard Schuster 72ee7d5797 feat/ocw/bookkeeping (#5200)
Co-Authored-By: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com>
2020-04-24 16:46:19 +02:00
Pierre Krieger f66168505b Fix the cfg guards in service/metrics.rs (#5770) 2020-04-24 16:16:54 +02:00
Wei Tang 770cc24c47 babe: support online configuration upgrades (#5514)
* babe: support online configuration upgrades

* Switch to use NextConfigDescriptor instead of changing runtime interface

* Fix tests

* epoch-changes: map function that allows converting with different epoch types

* Add migration script for the epoch config change

* Fix migration tests

* Fix migration: Epoch should be EpochV0

* Update client/consensus/babe/src/lib.rs

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

* Fix new epochChanges version

* Fix unused imports

Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
2020-04-24 14:59:14 +01:00
Nikolay Volf a01e608dff rename state-trace to storage (#5766) 2020-04-24 15:47:00 +02:00
Joseph Mark 035efc1663 Use internal room ids in Process.toml (#5772) 2020-04-24 15:35:31 +02:00
Benjamin Kampmann 37bbe2a319 Exclude sp-*-fuzzer from release process (#5749) 2020-04-24 15:34:22 +02:00
Pierre Krieger 6a7e86e677 Use new block requests protocol (#5760)
* Use new block requests protocol

* Tweak comment
2020-04-24 13:48:22 +02:00
Bastian Köcher dd31fae56c Make sure staking migration code runs only for version = 2_0_0 (#5768) 2020-04-24 12:35:25 +02:00
Alexander Popiak 61f383a116 Document weight for asset, system and timestamp pallets (#5593)
Co-Authored-By: thiolliere <gui.thiolliere@gmail.com>
2020-04-24 12:00:07 +02:00
emostov 8ac2bac58d Make Pallet ModuleId and LockIdentifier Configurable (#5695)
* transition treasury to configurable moduleids

* make election module id configurable

* convert runtime and pallet to accept module id config elections-phragmen

* add ModuleId to evm pallet

* change society pallet to configurable module id

* delete commented out module_id

* delete commented out code and merge in upstream  master

* try and convert 4 whitespace to tab

* fix remaining space to tab conversions

* trivial cleaning

* delete comment from elections-phragrems tests

* trivial

* Update frame/elections-phragmen/src/lib.rs

* add docs for elections and elections phragmen

* make has_lock test get moduleid dynamically

* Apply suggestions from code review

Co-Authored-By: Amar Singh <asinghchrony@protonmail.com>

* make sure get is imported to evm

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: Amar Singh <asinghchrony@protonmail.com>
Co-authored-by: Benjamin Kampmann <ben@gnunicorn.org>
2020-04-24 11:47:32 +02:00
Shawn Tabrizi 2fb22de02e Repair and extend some benchmarks (#5648) 2020-04-24 11:40:28 +02:00
Alexander Theißen 000c924b62 Integrate pallet_contracts gas with the weight system (#5712)
Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com>
Co-Authored-By: Sergei Pepyakin <sergei@parity.io>
2020-04-24 10:48:13 +02:00
Chevdor e731817e24 Fix error message when providing an incorrect peer-id (#5724)
* Fix error message when providing an incorrect peer-id

* Fix error message to cover all cases

Co-authored-by: Pierre Krieger <pierre.krieger1708@gmail.com>
2020-04-23 22:20:24 +02:00
Alexander Popiak 3ecc2f13de update Substrate style guide link in PR template (#5759) 2020-04-23 22:13:40 +02:00
Arkadiy Paronyan 59f13e6e0d Refactored in-mem backed to use the actual trie (#5730) 2020-04-23 19:00:36 +02:00
Dan Forbes ca3f54b4af Document crypto key identifiers (#5750) 2020-04-23 17:10:13 +01:00
Hoani Bryson aabbf52909 Regression testing and readability additions for reward curve log2 (#5610)
Co-Authored-By: thiolliere <gui.thiolliere@gmail.com>
2020-04-23 15:43:28 +02:00
Nikolay Volf 67200c1f5b Integrated trie benchmark: part 2 (#5702) 2020-04-23 15:42:23 +02:00
Bastian Köcher 46677555ac Allow missing functions when checking the new runtime's version (#5741) 2020-04-23 14:54:52 +02:00
Ashley fd65c3807c Fix error in browser demo readme (#5754) 2020-04-23 14:53:35 +02:00
Svyatoslav Nikolsky 8689a97a0d make GrandpaJustification::decode_and_verify_finalizes public (#5746) 2020-04-23 12:07:08 +01:00
Nikolay Volf 1a41b88430 Full block import benchmark (#5745) 2020-04-23 12:55:57 +02:00
Benjamin Kampmann 624e95b1af Fix leak in stream notifications (#5739) 2020-04-23 12:01:09 +02:00
Nikolay Volf ff9c88d21c Assign DB weights for node runtime (#5703) 2020-04-23 11:51:52 +02:00
Max Inden e84b06a8c0 client/network-gossip/state_machine: Reduce indentation level (#5714)
* client/network-gossip/src/state_machine: Add unit test for on_incoming

Add two unit tests to ensure `on_incoming` is ingoring discarded
messages and reports and ignores messages from unknown peers.

* client/network-gossip/state_machine: Reduce indentation level

* client/network-gossip/bridge: Remove unnecessary into_iter

* client/network-gossip/state_machine: Report success after register check

* client/network-gossip/state_machine: Error not report on unregistered

`peers` contains all the peers we're connected to. If we receive a
message from a peer not in this list, that means there's an internal
problem within the local client. It's not the fault of the peer in
question.

With the above in mind instead of reducing the reputation of such peer,
log an error.
2020-04-23 09:58:43 +02:00
Toralf Wittner 421ef498f4 network: Only insert global addresses into the DHT. (#5735)
* network: Only insert global addresses into the DHT.

Currently every address reported via libp2p-identify is inserted into
the DHT which thus contains a multitude of unreachable addresses such
as from 127.0.0.0/8 or 10.0.0.0/8.

Issue #5099 suggested a dedicated service over UDP to gauge the
reachability of an address, which would however incur extra I/O costs
and be of limited use.

As an alternative and simpler tactic, this PR only allows global IP
addresses to be inserted into the DHT unless an explicit command-line
flag `--allow-non-global-addresses-in-dht` is given or a node is
started with `--dev`. This opt-in behaviour is meant to allow
site-local networks to still make use of a DHT.

* Enable non-global in more test setups.

* Replace command-line option with different name.

* Another test fix.
2020-04-23 09:52:20 +02:00
André Silva 96b7cec1ce slots: fix slot lenience methods (#5742)
* slots: extract slot lenience from babe and aura

* slots: add tests for slot lenience

* slots: fix comment in test
2020-04-23 09:42:53 +02:00
Ashley 733a4250aa Fix the browser tests by not relying on Flaming Fir (#5728)
* Fix the browser tests

* Mistyping

* Fix warnings

Co-authored-by: Pierre Krieger <pierre.krieger1708@gmail.com>
2020-04-22 16:28:08 +02:00
Bastian Köcher 4e7e65ff99 Make version_is_full test work without .git being available (#5737) 2020-04-22 15:56:27 +02:00
Kian Paimani 6607393f9b enum Pays for PaysFee (#5733)
* enum Pays for PaysFee

* Fix doc test

* Update bin/node/executor/tests/basic.rs

* Update bin/node/executor/tests/basic.rs
2020-04-22 15:50:25 +02:00
Pierre Krieger c424ce94a3 Enable yamux flow control by default (#5734)
* Enable yamux flow control by default

* Tweak description

* Apply suggestions from code review
2020-04-22 14:31:05 +02:00
Pierre Krieger a7f578d63a Add a protocol that answers finality proofs (#5718)
* Add a protocol that answers finality proofs

* Fix documentation

* Use Toggle
2020-04-22 10:58:26 +02:00
Pierre Krieger 3ad9f65f11 Send a status message on block announce handshake (#5726)
* Send a status message on block announce handshake

* Make sure to send the handshake to all handlers
2020-04-22 10:20:52 +02:00
Kian Paimani 50a7e12b3f Migrate away from SimpleDispatchInfo (#5686)
* Migrate away from SimpleDispatchInfo

* Fix imports

* Better doc

* Update lib.rs

Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
2020-04-22 09:20:28 +02:00
Pierre Krieger 25c3ab2c1e Fix warning reported in out_events when Registry is None (#5716) 2020-04-22 00:36:12 +02:00
pscott f5d7b5bc92 Remove TaskManagerBuilder (#5725)
* Remove TaskManagerBuilder

* Clean up use declaration fo SpawnTaskHandle

Co-Authored-By: Pierre Krieger <pierre.krieger1708@gmail.com>

Co-authored-by: Pierre Krieger <pierre.krieger1708@gmail.com>
2020-04-22 00:35:01 +02:00
Bastian Köcher 20f211a624 Require fn token in decl_storage get (#5717)
* Require `fn` token in `decl_storage` `get`

The `fn` token was already for quite some time as an optional parameter.
It was introduced to make these functions better findable. This pr makes
the `fn` token required.

* Remove `GetterNoFnkeyword`
2020-04-21 16:58:57 +02:00