uwiger / gproc

Extended process registry for Erlang
Apache License 2.0
1.07k stars 232 forks source link

Uw multicall #126

Open uwiger opened 7 years ago

uwiger commented 7 years ago

@spec multicall(Module::atom(), Func::atom(), Args::list()) -> {[Result], [{node(), Error}]}

@doc Perform a multicall RPC on all live gproc nodes

This function works like {@link rpc:multicall/3}, except the calls are routed via the gproc leader and its connected nodes - the same route as for the data replication. This means that a multicall following a global registration is guaranteed to follow the update on each gproc node.

The return value will be of the form {GoodResults, BadNodes}, where BadNodes is a list of {Node, Error} for each node where the call fails. @end

uwiger commented 7 years ago

As with the previous PR, the Travis-CI failures seem to be unrelated to this change. The t_multicall/1 test case worked each time.