diff options
author | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2017-05-18 13:21:17 +0300 |
---|---|---|
committer | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2017-05-18 13:21:17 +0300 |
commit | bcb44ccb6f87efdf82cf66c9bd1249d5cc882da3 (patch) | |
tree | 298e8b4e70bb9c04a03f5e703c54f6f44269ee88 /src/mod_last_riak.erl | |
parent | ?SQL_UPSERT returns 'ok' on success (diff) |
Implement cache for mod_last
Diffstat (limited to 'src/mod_last_riak.erl')
-rw-r--r-- | src/mod_last_riak.erl | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/mod_last_riak.erl b/src/mod_last_riak.erl index 9b71f994..ac3faa14 100644 --- a/src/mod_last_riak.erl +++ b/src/mod_last_riak.erl @@ -43,19 +43,20 @@ get_last(LUser, LServer) -> {LUser, LServer}) of {ok, #last_activity{timestamp = TimeStamp, status = Status}} -> - {ok, TimeStamp, Status}; - {error, notfound} -> - not_found; - Err -> - Err + {ok, {TimeStamp, Status}}; + {error, notfound} -> + error; + _Err -> + %% TODO: log error + {error, db_failure} end. store_last_info(LUser, LServer, TimeStamp, Status) -> US = {LUser, LServer}, - {atomic, ejabberd_riak:put(#last_activity{us = US, - timestamp = TimeStamp, - status = Status}, - last_activity_schema())}. + ejabberd_riak:put(#last_activity{us = US, + timestamp = TimeStamp, + status = Status}, + last_activity_schema()). remove_user(LUser, LServer) -> {atomic, ejabberd_riak:delete(last_activity, {LUser, LServer})}. |