Host: an entity ignoring the passivate message is cut off for good
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 45/100
Research direction
Start in tellus/src/host.rs: Host::passivate_idle (around lines 159-168) sets an entry to Stopping, the Terminated handling (around line 128) is the only way out of that state, and routing with the HostConfig::buffer dead-letter path is at lines 95-100. Decide whether an entity that ignores the passivate message should return to Live on the next routed message or after a bounded wait, and align the Host::new doc comment (lines 55-57) with that behaviour. Done when a test covers an entity that ignores the passivate message and still receives routed messages.
Written by the indexing model from the issue text.
Description
Host::passivate_idle marks an entity's entry Stopping as soon as the passivate message is told (tellus/src/host.rs:159-168). Only the entity's Terminated signal leaves that state (host.rs:128).
An entity which does not stop on the passivate message is therefore never routed to again. Every message routed to it through the host is buffered, up to HostConfig::buffer, and dropped as a dead letter beyond that (host.rs:95-100), for as long as the entity lives.
The documentation of Host::new (host.rs:55-57) promises the opposite: "an entity which does not stop on that message is never passivated", which reads as if it kept receiving its messages.
Expected: an entity which ignores the passivate message keeps receiving the messages routed to it, for example by returning its entry to Live on the next routed message or after a bounded wait. A test should cover an entity which ignores the passivate message.
Related: HostConfig has no Deserialize implementation under the serde feature, unlike ActorConfig.
- Dominant language
- Rust
- Stars
- 37
- Forks
- 1
- Avg merge
- 6h 36m
- Merged PRs (30d)
- 123
Getting set up
- Ships a Dockerfile or Docker Compose file
- No pull request template
- No contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from tellus-rs/tellus
-
fix(cluster): keep a panicking encode of a remote reply from failing the responderPossibly taken @cosmir17 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
tellus-rs/tellus#312 · 2 comments ·
Maintainers usually reply within 1 day
-
docs: document the PostgreSQL store's schema for applications managing their ownPossibly taken @cosmir17 claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
tellus-rs/tellus#310 · 2 comments ·
Maintainers usually reply within 1 day
-
documentation question
Difficulty 2/5 1-3 hours Newbie friendliness 60/100
Maintainers usually reply within 1 day
-
good first issue test
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day
-
Difficulty 4/5 3-5 days Newbie friendliness 42/100
tellus-rs/tellus#311 · 2 comments ·
Maintainers usually reply within 1 day
All issues in tellus-rs/tellus
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
ElectronicWave/Elemental#252 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
area:mcp effort:low P5 source:agent
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
jlcodes99/cockpit-tools#3103 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
eliasstravik/herdr-projects#1032 ·