diff options
author | Nick Vatamaniuc <vatamane@gmail.com> | 2021-11-20 01:00:08 -0500 |
---|---|---|
committer | Nick Vatamaniuc <nickva@users.noreply.github.com> | 2021-11-22 17:31:31 -0500 |
commit | b78ccf18cb4ed6e183ed0bf4e5cbe40d7a7dc493 (patch) | |
tree | 82158f0b6c7e97e6955bf0c558aac6eb0329b410 /src/mango/src/mango_cursor_text.erl | |
parent | 6e87e43fae23647b281ede250ad9f1a68a8f1cde (diff) | |
download | couchdb-b78ccf18cb4ed6e183ed0bf4e5cbe40d7a7dc493.tar.gz |
Apply erlfmt formatting to source tree
These exceptions from main were ported over to 3.x
```
--- a/src/chttpd/src/chttpd.erl
+++ b/src/chttpd/src/chttpd.erl
@@ -491,6 +491,7 @@ extract_cookie(#httpd{mochi_req = MochiReq}) ->
end.
%%% end hack
+%% erlfmt-ignore
set_auth_handlers() ->
AuthenticationDefault = "{chttpd_auth, cookie_authentication_handler},
```
```
--- a/src/couch/src/couch_debug.erl
+++ b/src/couch/src/couch_debug.erl
@@ -49,6 +49,7 @@ help() ->
].
-spec help(Function :: atom()) -> ok.
+%% erlfmt-ignore
help(opened_files) ->
```
Diffstat (limited to 'src/mango/src/mango_cursor_text.erl')
-rw-r--r-- | src/mango/src/mango_cursor_text.erl | 122 |
1 files changed, 57 insertions, 65 deletions
diff --git a/src/mango/src/mango_cursor_text.erl b/src/mango/src/mango_cursor_text.erl index 43ef84e4c..53bf63edb 100644 --- a/src/mango/src/mango_cursor_text.erl +++ b/src/mango/src/mango_cursor_text.erl @@ -20,13 +20,11 @@ execute/3 ]). - -include_lib("couch/include/couch_db.hrl"). -include_lib("dreyfus/include/dreyfus.hrl"). -include("mango_cursor.hrl"). -include("mango.hrl"). - -record(cacc, { selector, dbname, @@ -42,14 +40,14 @@ execution_stats }). - create(Db, Indexes, Selector, Opts0) -> - Index = case Indexes of - [Index0] -> - Index0; - _ -> - ?MANGO_ERROR(multiple_text_indexes) - end, + Index = + case Indexes of + [Index0] -> + Index0; + _ -> + ?MANGO_ERROR(multiple_text_indexes) + end, Opts = unpack_bookmark(couch_db:name(Db), Opts0), @@ -69,7 +67,6 @@ create(Db, Indexes, Selector, Opts0) -> fields = Fields }}. - explain(Cursor) -> #cursor{ selector = Selector, @@ -81,7 +78,6 @@ explain(Cursor) -> {sort, sort_query(Opts, Selector)} ]. - execute(Cursor, UserFun, UserAcc) -> #cursor{ db = Db, @@ -131,12 +127,13 @@ execute(Cursor, UserFun, UserAcc) -> JsonBM = dreyfus_bookmark:pack(FinalBM), Arg = {add_key, bookmark, JsonBM}, {_Go, FinalUserAcc} = UserFun(Arg, LastUserAcc), - FinalUserAcc0 = mango_execution_stats:maybe_add_stats(Opts, UserFun, Stats0, FinalUserAcc), + FinalUserAcc0 = mango_execution_stats:maybe_add_stats( + Opts, UserFun, Stats0, FinalUserAcc + ), FinalUserAcc1 = mango_cursor:maybe_add_warning(UserFun, Cursor, Stats0, FinalUserAcc0), {ok, FinalUserAcc1} end. - execute(CAcc) -> case search_docs(CAcc) of {ok, Bookmark, []} -> @@ -152,7 +149,6 @@ execute(CAcc) -> execute(FinalCAcc) end. - search_docs(CAcc) -> #cacc{ dbname = DbName, @@ -167,19 +163,15 @@ search_docs(CAcc) -> ?MANGO_ERROR({text_search_error, {error, Reason}}) end. - handle_hits(CAcc, []) -> {ok, CAcc}; - handle_hits(CAcc0, [{Sort, Doc} | Rest]) -> CAcc1 = handle_hit(CAcc0, Sort, Doc), handle_hits(CAcc1, Rest). - handle_hit(CAcc0, Sort, not_found) -> CAcc1 = update_bookmark(CAcc0, Sort), CAcc1; - handle_hit(CAcc0, Sort, Doc) -> #cacc{ limit = Limit, @@ -208,7 +200,6 @@ handle_hit(CAcc0, Sort, Doc) -> CAcc2 end. - apply_user_fun(CAcc, Doc) -> FinalDoc = mango_fields:extract(Doc, CAcc#cacc.fields), #cacc{ @@ -224,39 +215,40 @@ apply_user_fun(CAcc, Doc) -> throw({stop, CAcc#cacc{user_acc = NewUserAcc, execution_stats = Stats0}}) end. - %% Convert Query to Dreyfus sort specifications %% Covert <<"Field">>, <<"desc">> to <<"-Field">> %% and append to the dreyfus query sort_query(Opts, Selector) -> {sort, {Sort}} = lists:keyfind(sort, 1, Opts), - SortList = lists:map(fun(SortField) -> - {Dir, RawSortField} = case SortField of - {Field, <<"asc">>} -> {asc, Field}; - {Field, <<"desc">>} -> {desc, Field}; - Field when is_binary(Field) -> {asc, Field} + SortList = lists:map( + fun(SortField) -> + {Dir, RawSortField} = + case SortField of + {Field, <<"asc">>} -> {asc, Field}; + {Field, <<"desc">>} -> {desc, Field}; + Field when is_binary(Field) -> {asc, Field} + end, + SField = mango_selector_text:append_sort_type(RawSortField, Selector), + case Dir of + asc -> + SField; + desc -> + <<"-", SField/binary>> + end end, - SField = mango_selector_text:append_sort_type(RawSortField, Selector), - case Dir of - asc -> - SField; - desc -> - <<"-", SField/binary>> - end - end, Sort), + Sort + ), case SortList of [] -> relevance; _ -> SortList end. - get_partition(Opts, Default) -> case couch_util:get_value(partition, Opts) of <<>> -> Default; Else -> Else end. - get_bookmark(Opts) -> case lists:keyfind(bookmark, 1, Opts) of {_, BM} when is_list(BM), BM /= [] -> @@ -265,7 +257,6 @@ get_bookmark(Opts) -> nil end. - update_bookmark(CAcc, Sortable) -> BM = CAcc#cacc.bookmark, QueryArgs = CAcc#cacc.query_args, @@ -273,28 +264,27 @@ update_bookmark(CAcc, Sortable) -> NewBM = dreyfus_bookmark:update(Sort, BM, [Sortable]), CAcc#cacc{bookmark = NewBM}. - pack_bookmark(Bookmark) -> case dreyfus_bookmark:pack(Bookmark) of null -> nil; Enc -> Enc end. - unpack_bookmark(DbName, Opts) -> - NewBM = case lists:keyfind(bookmark, 1, Opts) of - {_, nil} -> - []; - {_, Bin} -> - try - dreyfus_bookmark:unpack(DbName, Bin) - catch _:_ -> - ?MANGO_ERROR({invalid_bookmark, Bin}) - end - end, + NewBM = + case lists:keyfind(bookmark, 1, Opts) of + {_, nil} -> + []; + {_, Bin} -> + try + dreyfus_bookmark:unpack(DbName, Bin) + catch + _:_ -> + ?MANGO_ERROR({invalid_bookmark, Bin}) + end + end, lists:keystore(bookmark, 1, Opts, {bookmark, NewBM}). - ddocid(Idx) -> case mango_idx:ddoc(Idx) of <<"_design/", Rest/binary>> -> @@ -303,7 +293,6 @@ ddocid(Idx) -> Else end. - update_query_args(CAcc) -> #cacc{ bookmark = Bookmark, @@ -314,29 +303,32 @@ update_query_args(CAcc) -> limit = get_limit(CAcc) }. - get_limit(CAcc) -> erlang:min(get_dreyfus_limit(), CAcc#cacc.limit + CAcc#cacc.skip). - get_dreyfus_limit() -> config:get_integer("dreyfus", "max_limit", 200). - get_json_docs(DbName, Hits) -> - Ids = lists:map(fun(#sortable{item = Item}) -> - couch_util:get_value(<<"_id">>, Item#hit.fields) - end, Hits), + Ids = lists:map( + fun(#sortable{item = Item}) -> + couch_util:get_value(<<"_id">>, Item#hit.fields) + end, + Hits + ), % TODO: respect R query parameter (same as json indexes) {ok, IdDocs} = dreyfus_fabric:get_json_docs(DbName, Ids), - lists:map(fun(#sortable{item = Item} = Sort) -> - Id = couch_util:get_value(<<"_id">>, Item#hit.fields), - case lists:keyfind(Id, 1, IdDocs) of - {Id, {doc, Doc}} -> - {Sort, Doc}; - false -> - {Sort, not_found} - end - end, Hits). + lists:map( + fun(#sortable{item = Item} = Sort) -> + Id = couch_util:get_value(<<"_id">>, Item#hit.fields), + case lists:keyfind(Id, 1, IdDocs) of + {Id, {doc, Doc}} -> + {Sort, Doc}; + false -> + {Sort, not_found} + end + end, + Hits + ). -endif. |