diff options
Diffstat (limited to 'src/couch_expiring_cache/src/couch_expiring_cache_fdb.erl')
-rw-r--r-- | src/couch_expiring_cache/src/couch_expiring_cache_fdb.erl | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/couch_expiring_cache/src/couch_expiring_cache_fdb.erl b/src/couch_expiring_cache/src/couch_expiring_cache_fdb.erl index b939cbccb..7c4ad8f6f 100644 --- a/src/couch_expiring_cache/src/couch_expiring_cache_fdb.erl +++ b/src/couch_expiring_cache/src/couch_expiring_cache_fdb.erl @@ -13,11 +13,11 @@ -module(couch_expiring_cache_fdb). -export([ - get_entries/3, + get_range_to/3, insert/6, lookup/3, clear_all/1, - clear_range/3 + clear_range_to/3 ]). @@ -86,11 +86,11 @@ clear_all(Name) -> end). --spec clear_range(Name :: binary(), EndTS :: ?TIME_UNIT, +-spec clear_range_to(Name :: binary(), EndTS :: ?TIME_UNIT, Limit :: non_neg_integer()) -> OldestTS :: ?TIME_UNIT. -clear_range(Name, EndTS, Limit) when Limit > 0 -> - fold_expiry(Name, EndTS, Limit, +clear_range_to(Name, EndTS, Limit) when Limit > 0 -> + fold_range(Name, EndTS, Limit, fun(Tx, PK, XK, _Key, ExpiresTS, Acc) -> ok = erlfdb:clear(Tx, PK), ok = erlfdb:clear(Tx, XK), @@ -98,11 +98,11 @@ clear_range(Name, EndTS, Limit) when Limit > 0 -> end, 0). --spec get_entries(Name :: binary(), EndTS :: ?TIME_UNIT, +-spec get_range_to(Name :: binary(), EndTS :: ?TIME_UNIT, Limit :: non_neg_integer()) -> [{Key :: binary(), Val :: binary()}]. -get_entries(Name, EndTS, Limit) when Limit > 0 -> - fold_expiry(Name, EndTS, Limit, +get_range_to(Name, EndTS, Limit) when Limit > 0 -> + fold_range(Name, EndTS, Limit, fun(Tx, PK, _XK, Key, _ExpiresTS, Acc) -> case get_val(Tx, PK) of not_found -> @@ -117,7 +117,7 @@ get_entries(Name, EndTS, Limit) when Limit > 0 -> %% Private -fold_expiry(Name, EndTS, Limit, Fun, Acc0) when Limit > 0 -> +fold_range(Name, EndTS, Limit, Fun, Acc0) when Limit > 0 -> fabric2_fdb:transactional(fun(Tx) -> {LayerPrefix, ExpiresPrefix} = prefixes(Tx, Name), fabric2_fdb:fold_range({tx, Tx}, ExpiresPrefix, fun({XK, _XV}, Acc) -> |