WASM components: add a wall-clock cutoff (Wasmtime epoch interruption) next to fuel and memory limits
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 39/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Attiva
- Stack tecnologico
- rust
- Ambito
- backend, performance
Direzione di ricerca
Start with elastos/crates/elastos-compute/src/providers/component.rs and trace how component calls configure fuel and memory limits. Read the Wasmtime 36.0.19 epoch interruption APIs, then identify the Runtime ticker and per-capsule configuration entry points. Done means deadline errors stop overdue calls while keeping the Runtime responsive, configurable limits and coverage for all three call scenarios, plus Jetson overhead measurements.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Today: component capsules run with a fuel limit and a memory limit (elastos/crates/elastos-compute/src/providers/component.rs: consume_fuel, set_fuel(COMPONENT_FUEL), StoreLimitsBuilder::memory_size). They have no time-based limit.
Proposal (Sash, 22 Oct): enable Wasmtime epoch interruption (Config::epoch_interruption), with a Runtime ticker and a per-call deadline, so a call also ends after a set wall-clock time. That covers time spent outside fuel accounting.
Done means:
- a component call that exceeds its deadline is stopped with a clear error, and the Runtime stays responsive;
- the deadline is configurable per capsule class;
- tests cover a busy loop, a long host-call wait and a normal call under the limit;
- the overhead is measured on the Jetson.
Not in 0.8.0. The Wasmtime 36.0.19 security update is already on the 0.8.0 train.
- Lingua principale
- Rust
- Stelle
- 6
- Fork
- 2
- Merge medio
- 1g 3h
- PR unite (30g)
- 42
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di elastos/elastos-runtime
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
elastos/elastos-runtime#563 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
elastos/elastos-runtime#508 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
elastos/elastos-runtime#436 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
elastos/elastos-runtime#427 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
elastos/elastos-runtime#405 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di elastos/elastos-runtime
Issue simili
-
bug good first issue help wanted linux macos testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno
-
area: app type: test
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
I maintainer di solito rispondono entro 1 giorno
-
bug priority: medium
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
storytold/photocraft#12706 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
bug priority-low to-agent
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
examples/dca and limit-order: swap always fails on the real Soroswap router (deadline equals now)Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
sorocon-labs/sorocron#172 ·
I maintainer di solito rispondono entro 1 giorno