aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEvgeniy Khramtsov <ekhramtsov@process-one.net>2016-03-22 19:32:30 +0300
committerEvgeniy Khramtsov <ekhramtsov@process-one.net>2016-03-22 19:32:30 +0300
commit61e914a83f8f2c69e8cc233ec59fce2fdaf83133 (patch)
treef5ab02e24afa92ce9b6c2d976de7e4c453a4e830
parentFix a typo in travis.yml (diff)
Keep alive Riak connections by default
-rw-r--r--src/ejabberd_riak.erl8
-rw-r--r--src/ejabberd_riak_sup.erl1
2 files changed, 8 insertions, 1 deletions
diff --git a/src/ejabberd_riak.erl b/src/ejabberd_riak.erl
index 90bdb4c06..82ffe5e3d 100644
--- a/src/ejabberd_riak.erl
+++ b/src/ejabberd_riak.erl
@@ -73,7 +73,13 @@ start_link(Num, Server, Port, _StartInterval, Options) ->
%% @private
is_connected() ->
- catch riakc_pb_socket:is_connected(get_random_pid()).
+ lists:all(
+ fun({_Id, Pid, _Type, _Modules}) when is_pid(Pid) ->
+ case catch riakc_pb_socket:is_connected(get_random_pid()) of
+ true -> true;
+ _ -> false
+ end
+ end, supervisor:which_children(ejabberd_riak_sup)).
%% @private
get_proc(I) ->
diff --git a/src/ejabberd_riak_sup.erl b/src/ejabberd_riak_sup.erl
index 7294e0055..af811441b 100644
--- a/src/ejabberd_riak_sup.erl
+++ b/src/ejabberd_riak_sup.erl
@@ -109,6 +109,7 @@ init([]) ->
Options = lists:filter(
fun(X) -> X /= nil end,
[auto_reconnect,
+ {keepalive, true},
if CACertFile /= nil -> {cacertfile ,CACertFile};
true -> nil
end,