stream coordinator fall back to consistent query
This commit is contained in:
parent
e46216b5a8
commit
eb91d50fd4
|
@ -183,6 +183,18 @@ local_pid(StreamId) when is_list(StreamId) ->
|
||||||
members(StreamId) when is_list(StreamId) ->
|
members(StreamId) when is_list(StreamId) ->
|
||||||
MFA = {?MODULE, query_members, [StreamId]},
|
MFA = {?MODULE, query_members, [StreamId]},
|
||||||
case ra:local_query({?MODULE, node()}, MFA) of
|
case ra:local_query({?MODULE, node()}, MFA) of
|
||||||
|
{ok, {_, {ok, _} = Result}, _} ->
|
||||||
|
Result;
|
||||||
|
{ok, {_, {error, not_found} = Result}, _} ->
|
||||||
|
%% fall back to consistent query
|
||||||
|
case ra:consistent_query({?MODULE, node()}, MFA) of
|
||||||
|
{ok, Result, _} ->
|
||||||
|
Result;
|
||||||
|
{error, _} = Err ->
|
||||||
|
Err;
|
||||||
|
{timeout, _} ->
|
||||||
|
{error, timeout}
|
||||||
|
end;
|
||||||
{ok, {_, Result}, _} ->
|
{ok, {_, Result}, _} ->
|
||||||
Result;
|
Result;
|
||||||
{error, _} = Err ->
|
{error, _} = Err ->
|
||||||
|
|
Loading…
Reference in New Issue