- Mar 26, 2020
-
-
Pierre Krieger authored
* Improve sc-network's documentation for network protocols * Add note about protocol id * Apply suggestions from code review Co-Authored-By:
Max Inden <mail@max-inden.de> Co-authored-by:
Max Inden <mail@max-inden.de>
-
Arkadiy Paronyan authored
* Allow syncing to peers with finalized common block * Added test
-
- Mar 24, 2020
-
-
Bastian Köcher authored
* Print an error when a bootnode is on a different chain * Fix tests
-
Stanislav Tkach authored
* Get rid of rustc_hex in favor of hex * Use HexDisplay
-
- Mar 23, 2020
-
-
Bastian Köcher authored
Currently when we connect to a bootnode and it returns a different peer id, than the one we provided, we disconnect silently. This pr changes the behavior to printing an error when a bootnode returns a different peer id than the provided one.
-
Pierre Krieger authored
-
- Mar 20, 2020
-
-
Pierre Krieger authored
* Remove the #[doc(hidden)] reexports of sc_network * Fix tests not building
-
- Mar 19, 2020
-
-
Arkadiy Paronyan authored
* Don't queue duplicate blocks * Keep queue_blocks on restart
-
- Mar 18, 2020
-
-
Toralf Wittner authored
If polling encounters a `Poll::Pending` we need to return it instead of continuing the loop which may turn it into a blocking operation, causing problems with executors.
-
- Mar 17, 2020
-
-
Max Inden authored
* client/network/src/protocol: Start Prometheus metric help with capital * client/network/src/protocol: Differentiate metric status as label Prometheus query language is powerful through its multi-dimensional data model. Metric names are hirarchical whereas labels enable data to become multi-dimensional. Exposing the justification of finality-proof status as a label allows for more powerful queries. * client/network/src/protocol: Remove 'Total' from non counter metric help The word 'total' is reserved for accumulating counters. Counters have to be monotonically increasing. `obsolete_requests` can decrease, thereby it is defined as a `Gauge` and not a `Counter`. For more details on metric naming see https://prometheus.io/docs/practices/naming/
-
- Mar 12, 2020
-
-
Web3 Philosopher authored
* removes use of sc_client::Client from node-transaction-factory * move sc-block-builder to [dev-dependencies] in substrate-test-runtime
-
Web3 Philosopher authored
* removes use of sc_client::Client from sc_network * rename BlockProvider to BlockBackend * fix broken test
-
- Mar 10, 2020
-
-
Bastian Köcher authored
* Don't include `:code` by default in storage proofs (#5060) * Adds test to verify that the runtime currently is always contained in the proof * Start passing the runtime wasm code from the outside * Fix compilation * More build fixes * Make the test work as expected now :) * Last fixes * Fixes benchmarks * Review feedback * Apply suggestions from code review Co-Authored-By:
Sergei Pepyakin <sergei@parity.io> * Review feedback * Fix compilation Co-authored-by:
Sergei Pepyakin <s.pepyakin@gmail.com> * Fix compilation and change the way `RuntimeCode` works * Fix tests * Switch to `Cow` Co-authored-by:
Benjamin Kampmann <ben@gnunicorn.org> Co-authored-by:
Sergei Pepyakin <s.pepyakin@gmail.com>
-
- Mar 06, 2020
-
-
Pierre Krieger authored
* Fix NotificationStreamClosed reported when it shouldn't * Fix test * Add test * Update client/network/src/protocol.rs Co-Authored-By:
Bastian Köcher <bkchr@users.noreply.github.com> * Oops, fix test Co-authored-by:
Bastian Köcher <bkchr@users.noreply.github.com>
-
- Mar 05, 2020
-
-
Gavin Wood authored
* Add some metrics * Address concerns
-
Gavin Wood authored
-
Benjamin Kampmann authored
* removes use of sc_client::Client from sc-rpc * remove Client impl from sc-finality-benches * remove client impl from sc-finality-grandpa * read_proof accepts iterator * remove generic Executor param from ExecutorProvider * fix long ass line * code style changes * merge with master Co-authored-by:
Arkadiy Paronyan <arkady.paronyan@gmail.com>
-
Arkadiy Paronyan authored
This reverts commit 6ee39261.
-
- Mar 04, 2020
-
-
Benjamin Kampmann authored
* Adds test to verify that the runtime currently is always contained in the proof * Start passing the runtime wasm code from the outside * Fix compilation * More build fixes * Make the test work as expected now :) * Last fixes * Fixes benchmarks * Review feedback * Apply suggestions from code review Co-Authored-By:
Sergei Pepyakin <sergei@parity.io> * Review feedback * Fix compilation Co-authored-by:
Sergei Pepyakin <s.pepyakin@gmail.com>
-
Shawn Tabrizi authored
* Benchmark pallet * Add a bunch more benchmarks * do nothing test * new benchmarks * Clean up extra tests * Encode and Decode Vec<T::AccountId> * Starting to migrate benchmarks to macro * Use macro * Remove call and storage * Update Cargo.toml * Add storage recalc benchmark * Add support for custom functions in benchmark! macro * Reset DB for storage recalc * Feedback from review * Add more comments * Remove benchmark pallet from node * Fix cargo files * Fix comments * Change `crate` to `super` * missed one * Use results of benchmark encode/decode * Pass generic to extra functions * reset macro to master * Update lib.rs * Update to use standard syntax
-
- Mar 03, 2020
-
-
Ashley authored
* Add a few things * Add finality_grandpa_round * fix fg tests * Nitpicks * Nitpicks * Fix name of prometheus crate
-
- Mar 02, 2020
-
-
Bastian Köcher authored
* Make sure we remove peers on disconnect in gossip state machine * Clear up the code * Add a comment
-
Pierre Krieger authored
-
- Feb 25, 2020
-
-
Arkadiy Paronyan authored
* Less verbose state-db logging * Validate block responses for block bodies * Update client/network/src/protocol.rs Co-Authored-By:
Bastian Köcher <bkchr@users.noreply.github.com> * Added validation test * Disconnect on missing header as well * Typo Co-Authored-By:
André Silva <andre.beat@gmail.com> Co-authored-by:
Bastian Köcher <bkchr@users.noreply.github.com> Co-authored-by:
André Silva <andre.beat@gmail.com>
-
- Feb 21, 2020
-
-
asynchronous rob authored
* remove networkspecialization * Fix most of the fallout * get all tests compiling Co-authored-by:
Pierre Krieger <pierre.krieger1708@gmail.com>
-
Cecile Tonglet authored
Related to #4776 Related to https://github.com/paritytech/polkadot/pull/832 To summarize the changes: 1. I did not manage to validate with types the service's Configuration. But I did reduce the possibility of errors by moving all the "fill" functions to their respective structopts 2. I split params.rs to multiple modules: one module params for just CLI parameters and one module commands for CLI subcommands (and RunCmd). Every command and params are in their own file so things are grouped better together and easier to remove 3. I removed the run and run_subcommand helpers as they are not helping much anymore. Running a command is always a set of 3 commands: 1. init 2. update config 3. run. This still allow the user to change the config before arguments get parsed or right after. 4. I added tests for all subcommands. 5. [deleted] Overall the aim is to improve the situation with the Configuration and the optional parameters, add tests, make the API more consistent and simpler.
-
Pierre Krieger authored
* Open one substream for each notifications protocol * Fix WASM build * Apply suggestions from code review Co-Authored-By:
Toralf Wittner <tw@dtex.org> * Address concerns * Use unsigned-varint to read the varint * Use unsigned-varint * Forgot Cargo.lock Co-authored-by:
Toralf Wittner <tw@dtex.org>
-
- Feb 19, 2020
-
-
Toralf Wittner authored
* Log kademlia errors when get/put record fails. The current approach makes it difficult to figure out what the underlying error was, that made the operation fail. * Formatting Co-Authored-By:
Pierre Krieger <pierre.krieger1708@gmail.com> Co-authored-by:
Pierre Krieger <pierre.krieger1708@gmail.com>
-
Pierre Krieger authored
* Cleanup the exports of sc-network * Fix RPC tests * Revert moving the NetworkStateInfo trait * Fix GrandPa tests
-
- Feb 18, 2020
-
-
Stanislav Tkach authored
* Remove deprecated api * Revert changes to wasm-build-runner
-
Pierre Krieger authored
-
Ashley authored
* Use noise and timeouts on wasm * Don't use wasm-opt when compiling to wasm * Forgot lockfile * Add node about disabling wasm-opt * Enable timeouts in telemetry on wasm
-
André Silva authored
* sync: process empty response for justification request * sync: add test for justification request empty response * network: remove deprecated comment
-
Toralf Wittner authored
libp2p-0.16 allows configuring yamux through libp2p-yamux, so the direct dependency is no longer needed. While at it we also update to the latest versions of yamux and nohash-hasher, though the code changes do not depend on it.
-
- Feb 17, 2020
-
-
Pierre Krieger authored
* Fix potential peerset panic at initialization * Also fix legacy_proto/behaviour.rs
-
Shawn Tabrizi authored
* meaningfull -> meaningful * initialise -> initialize * tokans -> tokens * incentivise -> incentivize * lenght -> length * incentivisation -> incentivization * doesnt't -> doesn't * overwriten -> overwritten * lifecycle -> life cycle * lifecycle -> life cycle * usefull -> useful * noone -> no one * spaming -> spamming * defered -> deferred * hieght -> height * sumation -> summation * ingore -> ignore * registed -> registered * Auxialary -> Auxiliary * loggin -> logging * independance -> independence * trailling -> trailing * responsability -> responsibility * trunkated -> truncated * Weither -> Whether * informations -> information * Runtume -> Runtime * choosen -> chosen * delcataion -> declaration * Unchekced -> Unchecked * defintion -> definition * scrach -> scratch * imput -> input * transfered -> transferred * endownment -> endowment * Determinator -> Determiner * relevent -> relevant * emited -> emitted * acocunt -> account * proprotional -> proportional * instantiaion -> instantiation * commited -> committed * tombstonedead -> tombstone * uwnrap -> unwrap * acount -> account * specialised -> specialized * existant -> existent * requried -> required * Anull -> Annul * AUTHORITES -> AUTHORITIES * underyling -> underlying * recognisable -> recognizable * Capitalise -> Capitalize * reportfor -> report for * hearbeat -> heartbeat * onlineness -> being online * creater -> creator * Bytearray -> Byte array * Despoit -> Deposit * substratced -> subtracted * Curent -> Current * imbalanes -> imbalances * countfown -> countdown * inexisting -> inexistent * additionaly -> additionally * substracted -> subtracted * auxilary -> auxiliary * parital -> partial * in't -> isn't * compatability -> compatibility * infomation -> information * etected -> detected * extrinsiscs -> extrinsics * reprensentation -> representation * coonfiguration -> configuration * primtives -> primitives * miscelanious -> miscellaneous * VERISON -> VERSION * endcoded -> encoded * Genrates -> Generates * miliseconds -> milliseconds * occured -> occurred * trully -> truely * truely -> truly * conjuction -> conjunction * encouters -> encounters * customised -> customized * deterministicly -> deterministically * finalisation -> finalization * pluggable -> plugable * wakeup -> wake-up * interemdiate -> intermediate * intepreting -> interpreting * finalzied -> finalized * throgh -> through * extinsic -> extrinsic * convient -> convenient * allocater -> allocator * propagateable -> propagatable * succesfuly -> successfully * finalising -> finalizing * publically -> publicly * phrasee -> phrase * substration -> substractions * substractions -> subtractions * neccessarily -> necessarily * Inlucde -> Include * unefficient -> inefficient * thay -> they * funtion -> function * datastructures -> data structures * infromation -> information * propagatable -> propagable * ecountered -> encountered * recognise -> recognize * intergration -> integration * lastet -> latest * datatypes -> data types * datatype -> data type * Strongarming -> Strong Arming * avaible -> available * Commiting -> Committing * Retreiving -> Retrieving * shoud -> should * canonicaliziation -> canonicalization * comitted -> committed * clonable -> cloneable * Uknown -> Unknown * reponse -> response * arbitary -> arbitrary * Capapbilities -> Capabilities * responsbile -> responsible * initialisation -> initialization * cames -> came * intemediate -> intermediate * reqeust -> request * intance -> instance * explcitly -> explicitly * neighor -> neighbor * reolving -> resolving * untill -> until * Validte -> Validate * deserailize -> deserialize * literaly -> literally * preceeding -> preceding * abpve -> above * chcecked -> checked * numbet -> number * Unknow -> Unknown * halfs -> halves * gossup -> gossip * givent -> given * immediatelly -> immediately * slicable -> sliceable * conensus -> consensus * Mimicks -> Mimics * acccept -> accept * serialise -> serialize * exstrinsics -> extrinsics * panicks -> panics * maintaince -> maintenance * repeatidely -> repeatedly * anecstor -> ancestor * becasue -> because * processer -> processor * Prunning -> Pruning * insterested -> interested * unuseful -> not useful * yeided -> yielded * descendfing -> descending * corresponts -> corresponds * survivew -> survive * keps -> keeps * ligh -> light * prerequisities -> prerequisites * positiion -> position * depedency -> dependency * extrinisic -> extrinsic * atomicaly -> atomically * staticly -> statically * resul -> result * timestamb -> timestamp * Utilites -> Utilities * ammount -> amount * pocess -> process * exteral -> external * Update client/finality-grandpa/src/tests.rs * Update primitives/io/src/lib.rs Co-Authored-By:
joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Update primitives/blockchain/src/lib.rs Co-Authored-By:
joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Update frame/support/src/weights.rs Co-Authored-By:
joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Update bin/node/cli/tests/common.rs Co-Authored-By:
joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Update client/api/src/execution_extensions.rs Co-Authored-By:
joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Update client/cli/src/params.rs Co-Authored-By:
joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Update client/executor/common/src/sandbox.rs Co-Authored-By:
joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Update client/api/src/execution_extensions.rs Co-Authored-By:
joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Update client/finality-grandpa/src/communication/mod.rs Co-Authored-By:
joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Update client/state-db/src/pruning.rs Co-Authored-By:
joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Update frame/contracts/src/tests.rs Co-Authored-By:
joe petrowski <25483142+joepetrowski@users.noreply.github.com> * Update client/api/src/execution_extensions.rs * bump impl * timestamb -> timestamp Co-authored-by:
joe petrowski <25483142+joepetrowski@users.noreply.github.com>
-
Pierre Krieger authored
* Update libp2p to 0.16 * Actually update to libp2p 0.16
* Fix missed updates * Fix peerset tests
-
- Feb 12, 2020
-
-
Toralf Wittner authored
* network: Use "one shot" protocol handler. Add two new `NetworkBehaviour`s, one handling remote block requests and another one to handle light client requests (both local and from remote). The change is motivated by the desire to use multiple substreams of a single connection for different protocols. To achieve this, libp2p's `OneShotHandler` is used as a protocol handler in each behaviour. It will open a fresh substream for the duration of the request and close it afterwards. For block requests, we currently only handle incoming requests from remote and tests are missing. For light client handling we support incoming requests from remote and also ported a substantial amount of functionality over from `light_dispatch.rs` (including several tests). However the result lacks in at least two aspects: (1) We require external updates w.r.t. the best block per peer and currently nothing updates this information. (2) We carry a lot of peer-related state around. Both aspects could be simplified by externalising peer selection and just requiring a specific peer ID where the request should be sent to. We still have to maintain some peer related state due to the way libp2p's swarm and network behaviour work (e.g. we must make sure to always issue `NetworkBehaviourAction::SendEvent`s to peers we are connected to, otherwise the actions die a silent death. Another change implemented here is the use of protocol buffers as the encoding for network messages. Certain individual fields of messages are still SCALE encoded. There has been some discussion about this in another PR (https://github.com/paritytech/substrate/pull/3452), so far without resolution. * Uncomment `Behaviour::light_client_request`. * Add license headers.
-
Toralf Wittner authored
* Add command-line flag to enable yamux flow control. We never enabled proper flow-control for yamux streams which may cause stream buffers to exceed their configured limit when the stream producer outpaces the stream consumer. By switching the window update mode to on-read, producers will only receive more sending credit when all data has been consumed from the stream buffer. Using this option creates backpressure on producers. However depending on the protocol there is a risk of deadlock, if both endpoints concurrently attempt to send more data than they have credit for and neither side reads before finishing their writes. To facilitate proper testing, this PR adds a command-line flag `use-yamux-flow-control`. * Replace comment with generic message.
-
- Feb 11, 2020
-
-
Pierre Krieger authored
* Pause Kademlia if too many connections * Fix test * Update client/network/src/discovery.rs Co-Authored-By:
Toralf Wittner <tw@dtex.org> * Change the limit Co-authored-by:
Toralf Wittner <tw@dtex.org>
-