diff options
author | ILYA Khlopotov <iilyak@apache.org> | 2017-04-27 09:11:53 -0700 |
---|---|---|
committer | ILYA Khlopotov <iilyak@apache.org> | 2017-04-27 10:12:01 -0700 |
commit | 8d888d76f26726c1da3e97384e9ecedd8ef077f8 (patch) | |
tree | 57d9b55b4c52b384b892128e94d8c47945af6e09 | |
parent | bcd718bb80d7a6cf9aa8d06242d8f30419fbe588 (diff) | |
download | couchdb-8d888d76f26726c1da3e97384e9ecedd8ef077f8.tar.gz |
Adjust reverted code to new couch_lru API
-rw-r--r-- | src/couch/src/couch_server.erl | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/couch/src/couch_server.erl b/src/couch/src/couch_server.erl index 893b957d6..ad2a5f0ec 100644 --- a/src/couch/src/couch_server.erl +++ b/src/couch/src/couch_server.erl @@ -281,10 +281,11 @@ maybe_close_lru_db(#server{dbs_open=NumOpen, max_dbs_open=MaxOpen}=Server) when NumOpen < MaxOpen -> {ok, Server}; maybe_close_lru_db(#server{lru=Lru}=Server) -> - try - {ok, db_closed(Server#server{lru = couch_lru:close(Lru)}, [])} - catch error:all_dbs_active -> - {error, all_dbs_active} + case couch_lru:close(Lru) of + {true, NewLru} -> + {ok, db_closed(Server#server{lru = NewLru}, [])}; + false -> + {error, all_dbs_active} end. open_async(Server, From, DbName, Filepath, Options) -> @@ -319,10 +320,11 @@ open_async(Server, From, DbName, Filepath, Options) -> db_opened(Server, Options). handle_call(close_lru, _From, #server{lru=Lru} = Server) -> - try - {reply, ok, db_closed(Server#server{lru = couch_lru:close(Lru)}, [])} - catch error:all_dbs_active -> - {reply, {error, all_dbs_active}, Server} + case couch_lru:close(Lru) of + {true, NewLru} -> + {reply, ok, db_closed(Server#server{lru = NewLru}, [])}; + false -> + {reply, {error, all_dbs_active}, Server} end; handle_call(open_dbs_count, _From, Server) -> {reply, Server#server.dbs_open, Server}; |