Bastian Köcher
d2846e2b9a
Make transaction pool prune transactions only of canonical blocks ( #6123 )
...
* Make tx pool aware of retracted fork blocks
* Make it compile
* Update client/transaction-pool/src/lib.rs
Co-authored-by: Nikolay Volf <nikvolf@gmail.com >
* Fix doc test
* Simplify the implementation
* Send tree route as arc to prevent heavy clones
* Switch to use `ExtrinsicHash` to make it more clear
* Fix benchmark
Co-authored-by: Nikolay Volf <nikvolf@gmail.com >
2020-06-05 23:12:00 +02:00
Pierre Krieger
717fa95bc7
Restore the empty line after the license ( #6088 )
2020-05-20 13:08:27 +00:00
Nikolay Volf
d5411969ac
fix whitespace ( #6062 )
2020-05-18 13:51:28 +02:00
Benjamin Kampmann
be8c96adec
Relax substrate licensing scheme ( #5947 )
2020-05-15 13:21:56 +02:00
Nikolay Volf
fea626ca84
Add prometheus registry to transaction pool, with couple of initial metrics ( #5657 )
...
* make new contructor
* add metrics to txpool
* fix review
* fix doc comment
* change to counters
* Update client/transaction-pool/src/metrics.rs
Co-Authored-By: Max Inden <mail@max-inden.de >
* Update client/transaction-pool/src/metrics.rs
Co-Authored-By: Max Inden <mail@max-inden.de >
* Update client/transaction-pool/src/metrics.rs
Co-Authored-By: Max Inden <mail@max-inden.de >
* Update client/transaction-pool/src/lib.rs
Co-Authored-By: Max Inden <mail@max-inden.de >
* Update client/transaction-pool/src/lib.rs
Co-Authored-By: Max Inden <mail@max-inden.de >
* use dedicated wrapper
Co-authored-by: Max Inden <mail@max-inden.de >
2020-04-17 11:02:45 +02:00
Nikolay Volf
372f8b2c7e
Batch signature verification ( #5023 )
...
* create parallel tasks extension
* make type system happy
* basic externalities
* test for dynamic extensions
* batching test
* remove premature verify_batch
* shnschnorrkel batch
* alter test
* shnschnorrkel test
* executive batching
* some docs
* also multi/any signatgures
* error propagation
* styling
* make verification extension optional
* experimental ed25519 parallelization
* some merge fallout
* utilize task executor
* merge fallout
* utilize task executor more
* another merge fallout
* feature-gate sp-io
* arrange toml
* fix no-std
* sr25519 batching and refactoring
* add docs
* fix name
* add newline
* fix block import test
* long sr25519 test
* blocking instead of parking
* move everything in crypto
* return batch_verify to check :)
* use condvars
* use multi-threaded executor for benches
* don't call via host interface
* try no spawning
* add true
* cleanup
* straighten batching
* remove signature check from this test (?)
* remove now pointless test
* remove another now useless test
* fix warnings
* Revert "remove another now useless test"
This reverts commit bbdec24bb67ed4373072daef7c863e1a8825bd8b.
* rethink the sp-io-part
* Revert "remove now pointless test"
This reverts commit 4d553066322e65782264caa6053d4cd5538df977.
* fix wording
* add wording
* add todo and fix
* return check and fix
* add logging in sp-io
* Update primitives/io/src/batch_verifier.rs
Co-Authored-By: cheme <emericchevalier.pro@gmail.com >
* address review and use std condvar
* account for early exit
* address reivew
* address review
* more suggestions
* add docs for batch verification
* remove unused
* more review suggestions
* move to sp-runtime
* add expects
* remove blocks
* use entry
* Update primitives/io/src/batch_verifier.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update primitives/externalities/src/extensions.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* update overlooked note
* remove stupid return
* Update primitives/io/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update primitives/io/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* fix wording
* bump spec_version
Co-authored-by: cheme <emericchevalier.pro@gmail.com >
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-04-16 21:40:04 +02:00
Nikolay Volf
c73398ab03
remove flakiness ( #5572 )
2020-04-08 11:49:32 +02:00
Nikolay Volf
b4d83a4b54
And one more fix to flaky tests ( #5467 )
...
* imporoved intervallier version
* remove extra event
* use version 0.3.1
* fix warning
2020-03-31 12:15:31 +02:00
Nikolay Volf
d7ffef43ce
don't use delays in tests ( #5404 )
2020-03-29 10:40:00 +02:00
Tomasz Drwięga
04ccb179e9
Pass transaction source to validate_transaction ( #5366 )
...
* WiP
* Support source in the runtime API.
* Finish implementation in txpool.
* Fix warning.
* Fix tests.
* Apply suggestions from code review
Co-Authored-By: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
Co-Authored-By: Nikolay Volf <nikvolf@gmail.com >
* Extra changes.
* Fix test and benches.
* fix test
* Fix test & benches again.
* Fix tests.
* Update bumpalo
* Fix doc test.
* Fix doctest.
* Fix doctest.
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
Co-authored-by: Nikolay Volf <nikvolf@gmail.com >
2020-03-25 14:09:23 +01:00
Nikolay Volf
27fe4206ed
Update schnorrkel with versioning ( #5358 )
...
* use versioning for deprecated api, remove deprecated api from regular verification
* Update primitives/core/src/sr25519.rs
* add test to transaction pool
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-03-24 18:05:57 +01:00
Nikolay Volf
db86094b03
Produce block always on updated transaction pool state ( #5227 )
...
* make sure return ready iterator once state is updated
* update sc_basic_authorship tests
* update node tests
* fix manual seal
* actually fix service test
* add tests
* Update client/basic-authorship/src/basic_authorship.rs
Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* helper function
* review suggestions
* warning and continue
* add debug log
* use futures::chennel::oneshot
* use declaration bound
* no option for updated_at
* no allocation
* ready_at / ready
* Update client/transaction-pool/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/transaction-pool/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/transaction-pool/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/transaction-pool/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/transaction-pool/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/transaction-pool/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-03-17 16:24:04 +01:00
Nikolay Volf
4aac39c667
Fix possible corner case in revalidation ( #5172 )
...
* remove all from members
* add test
2020-03-06 21:24:39 +01:00
Nikolay Volf
bad9647af9
Fix revalidation not revalidating multiple times ( #5065 )
2020-02-27 12:18:10 +01:00
Seun Lanlege
7718172ac1
fixes sc_transaction_pool::testing::fork_aware_finalization ( #4976 )
...
* fixes sc_transaction_pool::testing::pool::fork_aware_finalization
* adds pool status assertions
2020-02-20 13:23:47 +01:00
Nikolay Volf
7f43796efc
Fix flaky finalisation test ( #4967 )
2020-02-18 15:19:59 +01:00
Shawn Tabrizi
c7a14db792
Fix various spelling errors ( #4940 )
...
* 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 >
2020-02-17 15:07:24 +01:00
Nikolay Volf
86ab0cb4d9
Revalidation queue for transaction pool ( #4781 )
...
* Revalidation queeue.
* add docs and license
* move test
* refactor worker to async/await
* address review
* fix warnings
* update Cargo.lock
* move background task to service
* use tomusdrw loop
* naming
* return From::from
* add doc comment
* add more doc comments
* fix merge bug
* add doc comment for test function
* Update client/transaction-pool/src/testing/pool.rs
Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* more review fixes
* refactor to allow service keep background tasks from isntantiated subsystems
* use const delay
* fix fallout
* remove fallout
* remove already moved test
* fix doc test
* add valid_at helper
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
2020-02-17 16:48:24 +03:00
Seun Lanlege
d3a3e288b6
Adds fork-awareness and finalization notifications to transaction pool watchers. ( #4740 )
...
* adds finalization support to sc-transaction-pool using MaintainedTransactionPool for finalization events
* adds TransactionStatus::Retracted, notify watchers of retracted blocks, finalized now finalizes, transactions for current finalized -> last finalized block
* adds last_finalized to ChainApi, use generic BlockT for ChainEvent
* fix tests
* Apply suggestions from code review
Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* tests
* fix tests, docs, lazily dedupe pruned hashes
* fix tests, Cargo.lock
* Apply suggestions from code review
Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* remove tree_route, last_finalized from ChainApi, add block hash to Finalization and Retracted events
* prune finality watchers
* fix tests
* remove HeaderBackend bound from FullChainApi
* code style nits, terminate stream in finality_timeout
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
2020-02-14 14:44:58 +01:00
Nikolay Volf
41967186e4
Subsystems memory tracking: 1. Transaction pool ( #4822 )
...
* update sp-runtime
* total update
* usage informant
* update to crates.io version
* update Cargo.lock
* update dummy update
* fix todo
* cleanup
* avoid custom impl
* Update client/transaction-pool/graph/src/future.rs
Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
* remove another custom impl
* remove another custom impl
* add kb in report
* update Cargo.lock
* review suggestions
* --amend
* --amend
* bump parity-util-mem to 0.5.0
* bumps
* update macro and versions
* add to grafana
* naming
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com >
2020-02-07 11:53:11 +01:00
Bastian Köcher
709a899f9d
Cleanup transaction pool deps ( #4782 )
...
* Cleanup transaction pool deps
* Fix it properly
* Fix doc test
2020-01-31 12:40:32 +01:00
Nikolay Volf
94a187f291
Transaction queue tests update ( #4734 )
...
* shuffle tests
* update tests
* inc_nonce -> increment_nonce
2020-01-27 04:22:04 -08:00