mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-05-30 22:11:02 +00:00
5c68e6f9cc
* Update shared-memory to new version & refactor This two are combined in a single commit because the new version of shared-memory doesn't provide the used functionality anymore. Therefore in order to update the version of this crate we implement the functionality that we need by ourselves, providing a cleaner API along the way. * Significantly decrease the required memory for a workspace For some reason it was allocating an entire GiB of memory. I suspect this has something to do with the current memory size limit of a PVF execution environment (the prior name suggests that). However, we don't need so much memory anywhere near that amount. In fact, we could reduce the allocated size even more, but that maybe for the next time. * Unlink shmem just after opening That will make sure that we don't leak the shmem accidentally. * Do not compile workspace mod for androind and wasm * Address some review comments * Fix the test runner * Fix missed +1 for the attached flag * Use .expect rather than .unwrap * Add a rustdoc for the workspace module * fixup! Use .expect rather than .unwrap * Add some doc comments to pub members * Warn on error removing shm_unlink * Change the alignment implementation * Fix the comment nit
31 lines
1.2 KiB
Rust
31 lines
1.2 KiB
Rust
// Copyright 2019-2020 Parity Technologies (UK) Ltd.
|
|
// This file is part of Polkadot.
|
|
|
|
// Polkadot is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU General Public License as published by
|
|
// the Free Software Foundation, either version 3 of the License, or
|
|
// (at your option) any later version.
|
|
|
|
// Polkadot is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU General Public License for more details.
|
|
|
|
// You should have received a copy of the GNU General Public License
|
|
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
mod adder;
|
|
mod wasm_executor;
|
|
|
|
use parachain::wasm_executor::run_worker;
|
|
|
|
// This is not an actual test, but rather an entry point for out-of process WASM executor.
|
|
// When executing tests the executor spawns currently executing binary, which happens to be test binary.
|
|
// It then passes "validation_worker" on CLI effectivly making rust test executor to run this single test.
|
|
#[test]
|
|
fn validation_worker() {
|
|
if let Some(id) = std::env::args().find(|a| a.starts_with("/shmem_")) {
|
|
run_worker(&id, None).unwrap()
|
|
}
|
|
}
|