Files
pezkuwi-subxt/polkadot/node/core/backing/Cargo.toml
T
Andrei Sandu 60e537b95f Elastic scaling: use an assumed CoreIndex in candidate-backing (#3229)
First step in implementing
https://github.com/paritytech/polkadot-sdk/issues/3144

### Summary of changes
- switch statement `Table` candidate mapping from `ParaId` to
`CoreIndex`
- introduce experimental `InjectCoreIndex`  node feature.
- determine and assume a `CoreIndex` for a candidate based on statement
validator index. If the signature is valid it means validator controls
the validator that index and we can easily map it to a validator
group/core.
- introduce a temporary provisioner fix until we fully enable elastic
scaling in the subystem. The fix ensures we don't fetch the same
backable candidate when calling `get_backable_candidate` for each core.

TODO:
- [x] fix backing tests
- [x] fix statement table tests
- [x] add new test

---------

Signed-off-by: Andrei Sandu <andrei-mihail@parity.io>
Signed-off-by: alindima <alin@parity.io>
Co-authored-by: alindima <alin@parity.io>
2024-02-22 08:22:31 +00:00

37 lines
1.6 KiB
TOML

[package]
name = "polkadot-node-core-backing"
version = "7.0.0"
authors.workspace = true
edition.workspace = true
license.workspace = true
description = "The Candidate Backing Subsystem. Tracks parachain candidates that can be backed, as well as the issuance of statements about candidates."
[lints]
workspace = true
[dependencies]
futures = "0.3.21"
sp-keystore = { path = "../../../../substrate/primitives/keystore" }
polkadot-primitives = { path = "../../../primitives" }
polkadot-node-primitives = { path = "../../primitives" }
polkadot-node-subsystem = { path = "../../subsystem" }
polkadot-node-subsystem-util = { path = "../../subsystem-util" }
erasure-coding = { package = "polkadot-erasure-coding", path = "../../../erasure-coding" }
statement-table = { package = "polkadot-statement-table", path = "../../../statement-table" }
bitvec = { version = "1.0.0", default-features = false, features = ["alloc"] }
gum = { package = "tracing-gum", path = "../../gum" }
thiserror = { workspace = true }
fatality = "0.0.6"
schnellru = "0.2.1"
[dev-dependencies]
sp-core = { path = "../../../../substrate/primitives/core" }
sp-application-crypto = { path = "../../../../substrate/primitives/application-crypto" }
sp-keyring = { path = "../../../../substrate/primitives/keyring" }
sc-keystore = { path = "../../../../substrate/client/keystore" }
sp-tracing = { path = "../../../../substrate/primitives/tracing" }
futures = { version = "0.3.21", features = ["thread-pool"] }
assert_matches = "1.4.0"
polkadot-node-subsystem-test-helpers = { path = "../../subsystem-test-helpers" }
test-helpers = { package = "polkadot-primitives-test-helpers", path = "../../../primitives/test-helpers" }