Fix polkadot-node-core-pvf-prepare-worker build with jemalloc (#1315)

* Fix polkadot-node-core-pvf-prepare-worker build with jemalloc

The jemalloc feature on polkadot-node-core-pvf-prepare-worker depended
on some feature gated code in polkadot-node-core-pvf-common but there
way no way to enable this feature gate.

This commit adds the feature and makes prepare-worker enable it.

* More jemalloc-allocator fixes

* Fix jemalloc-allocator feature dep

* Run `zepter format features`

---------

Co-authored-by: Marcin S <marcin@realemail.net>
This commit is contained in:
Lulu
2023-08-31 17:13:09 +02:00
committed by GitHub
parent f1f793718a
commit aedd280874
6 changed files with 12 additions and 7 deletions
Generated
-1
View File
@@ -12183,7 +12183,6 @@ dependencies = [
"sp-core",
"sp-maybe-compressed-blob",
"sp-tracing",
"tikv-jemalloc-ctl",
"tokio",
"tracing-gum",
]
+6 -1
View File
@@ -22,7 +22,7 @@ version = "1.0.0"
[dependencies]
color-eyre = { version = "0.6.1", default-features = false }
tikv-jemallocator = "0.5.0"
tikv-jemallocator = { version = "0.5.0", optional = true }
# Crates in our workspace, defined as dependencies so we can pass them feature flags.
polkadot-cli = { path = "cli", features = [
@@ -38,6 +38,9 @@ polkadot-overseer = { path = "node/overseer" }
polkadot-node-core-pvf-common = { path = "node/core/pvf/common" }
polkadot-node-core-pvf-execute-worker = { path = "node/core/pvf/execute-worker" }
[target.'cfg(target_os = "linux")'.dependencies]
tikv-jemallocator = "0.5.0"
[dev-dependencies]
assert_cmd = "2.0.4"
nix = { version = "0.26.1", features = ["signal"] }
@@ -59,7 +62,9 @@ fast-runtime = [ "polkadot-cli/fast-runtime" ]
runtime-metrics = [ "polkadot-cli/runtime-metrics" ]
pyroscope = [ "polkadot-cli/pyroscope" ]
jemalloc-allocator = [
"dep:tikv-jemallocator",
"polkadot-node-core-pvf-prepare-worker/jemalloc-allocator",
"polkadot-node-core-pvf/jemalloc-allocator",
"polkadot-overseer/jemalloc-allocator",
]
+1
View File
@@ -54,6 +54,7 @@ halt = { package = "test-parachain-halt", path = "../../../parachain/test-parach
[features]
ci-only-tests = []
jemalloc-allocator = [ "polkadot-node-core-pvf-common/jemalloc-allocator" ]
# This feature is used to export test code to other crates without putting it in the production build.
# This is also used by the `puppet_worker` binary.
test-utils = [
+1
View File
@@ -38,3 +38,4 @@ tempfile = "3.3.0"
# This feature is used to export test code to other crates without putting it in the production build.
# Also used for building the puppet worker.
test-utils = []
jemalloc-allocator = []
@@ -11,7 +11,6 @@ cpu-time = "1.0.0"
futures = "0.3.21"
gum = { package = "tracing-gum", path = "../../../gum" }
rayon = "1.5.1"
tikv-jemalloc-ctl = { version = "0.5.0", optional = true }
tokio = { version = "1.24.2", features = ["fs", "process"] }
parity-scale-codec = { version = "3.6.1", default-features = false, features = ["derive"] }
@@ -24,8 +23,5 @@ sp-core = { path = "../../../../../substrate/primitives/core" }
sp-maybe-compressed-blob = { path = "../../../../../substrate/primitives/maybe-compressed-blob" }
sp-tracing = { path = "../../../../../substrate/primitives/tracing" }
[target.'cfg(target_os = "linux")'.dependencies]
tikv-jemalloc-ctl = "0.5.0"
[features]
builder = []
@@ -32,4 +32,7 @@ tikv-jemalloc-ctl = "0.5.0"
[features]
builder = []
jemalloc-allocator = [ "dep:tikv-jemalloc-ctl" ]
jemalloc-allocator = [
"dep:tikv-jemalloc-ctl",
"polkadot-node-core-pvf-common/jemalloc-allocator",
]