You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#314 adds new reply mode options for ra:process_command/3 which controls which member of the Ra cluster replies with gen_statem:reply/2 to a call:
local - reply from a node local to the calling process
{member, Member} - reply from the given member
which fall back to the leader if the given member is not in cluster membership. These are useful for blocking a caller until a command has been handled by the given member.
These should be added to ra:pipeline_command/4 as well to control which member of the cluster sends notifications. This would involve some refactoring of how notifications are stored within the cluster state (in ra_server_proc's #state.pending_notifys field) and the shape of the notifyra_server:effect():
#314 adds new reply mode options for
ra:process_command/3
which controls which member of the Ra cluster replies withgen_statem:reply/2
to a call:local
- reply from a node local to the calling process{member, Member}
- reply from the given memberwhich fall back to the leader if the given member is not in cluster membership. These are useful for blocking a caller until a command has been handled by the given member.
These should be added to
ra:pipeline_command/4
as well to control which member of the cluster sends notifications. This would involve some refactoring of how notifications are stored within the cluster state (inra_server_proc
's#state.pending_notifys
field) and the shape of thenotify
ra_server:effect()
:ra/src/ra_server.erl
Line 153 in 09cc606
Currently, notifications are grouped by pid:
ra/src/ra_server.erl
Lines 2310 to 2321 in 09cc606
and replied to in batches:
ra/src/ra_server_proc.erl
Lines 1708 to 1731 in 09cc606
This will need to be refactored so that notifications are grouped by pid and reply-from.
The text was updated successfully, but these errors were encountered: