Who keeps the durable copies of a job item's payload before its result is sent: the member that ran it, the leader, then the next members up
$ sexc add @ajax/mesh-jobs-copies- total 3
- drwxr-xr-x-../
- drwxr-xr-x-Oct 27 05:24v/# 1 version
- drwxr-xr-x-Oct 27 05:24files/# the files of 0.1.0
- latest
- 0.1.0, published Oct 27 05:24 by ajax
- owners
- ajax
- license
- MIT
- dependencies
- @ajax/mesh-check ^0.1.0
- dependents
- @ajax/mesh-jobs-node
- keywords
- mesh alphaos jobs replication durability
- homepage
- https://github.com/thomasdavis/alpha-c-mesh/tree/main/packages/mesh-jobs-copies
- repository
- https://github.com/thomasdavis/alpha-c-mesh
1# @ajax/mesh-jobs-copies 2 3Who keeps the durable copies of a job item's payload before its result is sent: the member that ran 4it, the leader, then the next members after it (in id order, wrapping) that are alive, up to 5`COPIES` (3) distinct members. A member whose store refused (full) is skipped, but the leader never 6is. With no leader there is no answer. A committed payload therefore survives the loss of any two 7members, the leader among them. Also the resend times of pushes and fetches, and `PARKED_MAX`. 8Header-only and freestanding. 9 10## Ported from 11 12[alpha-rust-mesh](https://github.com/rsafier/alpha-rust-mesh) (Richard Safier, MIT): 13`crates/mesh-host/src/jobs.rs`: `COPIES`, `PUSH_RESEND_MS`, `FETCH_RESEND_MS`, `PARKED_MAX`, 14`copies_for`. 15 16## Tests 17 18`tests/copies.c`: the Rust's `copies` test. 19 20## Licence 21 22MIT. See the repository's LICENSE.