4 ms·
> how tricorder handles calls to multiple nodes Sequentially, one after the other, then it aggregates the `Result<(exit_code, output), Error>` type into a JSON
by linkdd 5y ago
> how tricorder handles calls to multiple nodes
Sequentially, one after the other, then it aggregates the `Result<(exit_code, output), Error>` type into a JSON.
Once I take a look at async programming in Rust, it should be trivial to add the concurrent option: just start them all, wait for them, and aggregate as before.
Still not sure if it should be the default or not, should it be a `--sequential` or a `--parallel` flag? IIRC, Ansible does things sequentially too.
- stephenr 5y agoMy approach to stuff like this is basically semver: the product is out, so any new capability (e.g. parallel operation) can't change the default at least until a major version change.
- linkdd 5y agoThis is true for post 1.0.0 versions. 0.Y.Z versions are experimental and the API has not been stabilized yet.
- gilcot 5y ago>> how tricorder handles calls to multiple nodes > Sequentially, one after the other, > […] Ansible does things sequentially too. No, call to nodes aren't sequential, but by parallel batches where tasks are sequential. Here's an interesting reading on those aspects: https://ansiblefrombasics.blogspot.com/2017/09/serial-limit-number-of-parallel.html https://ansiblefrombasics.blogspot.com/2017/09/serial-limit-...