summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Kocoloski <adam@cloudant.com>2013-06-06 15:44:05 -0400
committerRobert Newson <rnewson@apache.org>2014-07-23 17:57:34 +0100
commit4c994477d67352c5102ed773600089bd1037ab89 (patch)
tree3e4aba20b3d311d0e0795667da9c9c2965083129
parentd1995a5b76f10b94edc4bf729ace583d228e9ffa (diff)
downloadcouchdb-4c994477d67352c5102ed773600089bd1037ab89.tar.gz
Handle rexi-tagged messages
BugzID: 20204
-rw-r--r--src/rexi_utils.erl14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/rexi_utils.erl b/src/rexi_utils.erl
index ced0ca30b..79db48c86 100644
--- a/src/rexi_utils.erl
+++ b/src/rexi_utils.erl
@@ -59,6 +59,20 @@ process_message(RefList, Keypos, Fun, Acc0, TimeoutRef, PerMsgTO) ->
receive
{timeout, TimeoutRef} ->
{timeout, Acc0};
+ {rexi, Ref, Msg} ->
+ case lists:keyfind(Ref, Keypos, RefList) of
+ false ->
+ {ok, Acc0};
+ Worker ->
+ Fun(Msg, Worker, Acc0)
+ end;
+ {rexi, Ref, From, Msg} ->
+ case lists:keyfind(Ref, Keypos, RefList) of
+ false ->
+ {ok, Acc0};
+ Worker ->
+ Fun(Msg, {Worker, From}, Acc0)
+ end;
{Ref, Msg} ->
case lists:keyfind(Ref, Keypos, RefList) of
false ->