Kouhei Sutou
null+****@clear*****
Wed Nov 19 19:06:29 JST 2014
Kouhei Sutou 2014-11-19 19:06:29 +0900 (Wed, 19 Nov 2014) New Revision: 862bf3f430d957f7bc3d870fd40ba51cd31be491 https://github.com/groonga/groonga/commit/862bf3f430d957f7bc3d870fd40ba51cd31be491 Message: range_filter: support default output_columns Added files: test/command/suite/range_filter/output_columns/default.expected test/command/suite/range_filter/output_columns/default.test Modified files: lib/proc.c Modified: lib/proc.c (+15 -4) =================================================================== --- lib/proc.c 2014-11-19 19:03:12 +0900 (a1e5bb8) +++ lib/proc.c 2014-11-19 19:06:29 +0900 (7f4e377) @@ -6346,10 +6346,21 @@ proc_range_filter(grn_ctx *ctx, int nargs, grn_obj **args, grn_table_sort_key_close(ctx, sort_keys, n_sort_keys); } - grn_select_output_columns(ctx, res, -1, real_offset, real_limit, - GRN_TEXT_VALUE(output_columns), - GRN_TEXT_LEN(output_columns), - filter_expr); + { + const char *raw_output_columns; + int raw_output_columns_len; + + raw_output_columns = GRN_TEXT_VALUE(output_columns); + raw_output_columns_len = GRN_TEXT_LEN(output_columns); + if (raw_output_columns_len == 0) { + raw_output_columns = DEFAULT_OUTPUT_COLUMNS; + raw_output_columns_len = strlen(raw_output_columns); + } + grn_select_output_columns(ctx, res, -1, real_offset, real_limit, + raw_output_columns, + raw_output_columns_len, + filter_expr); + } exit: if (filter_expr) { Added: test/command/suite/range_filter/output_columns/default.expected (+17 -0) 100644 =================================================================== --- /dev/null +++ test/command/suite/range_filter/output_columns/default.expected 2014-11-19 19:06:29 +0900 (892f095) @@ -0,0 +1,17 @@ +table_create Memos TABLE_NO_KEY +[[0,0.0,0.0],true] +column_create Memos id COLUMN_SCALAR Int32 +[[0,0.0,0.0],true] +column_create Memos text COLUMN_SCALAR Text +[[0,0.0,0.0],true] +table_create IDs TABLE_PAT_KEY Int32 +[[0,0.0,0.0],true] +column_create IDs memos_id COLUMN_INDEX Memos id +[[0,0.0,0.0],true] +load --table Memos +[ +{"id": 0, "text": "aaa"} +] +[[0,0.0,0.0],1] +range_filter Memos id --min 0 --min_border include --max 10 --max_border exclude +[[0,0.0,0.0],[[["_id","UInt32"],["id","Int32"],["text","Text"]],[1,0,"aaa"]]] Added: test/command/suite/range_filter/output_columns/default.test (+15 -0) 100644 =================================================================== --- /dev/null +++ test/command/suite/range_filter/output_columns/default.test 2014-11-19 19:06:29 +0900 (35fdfd9) @@ -0,0 +1,15 @@ +table_create Memos TABLE_NO_KEY +column_create Memos id COLUMN_SCALAR Int32 +column_create Memos text COLUMN_SCALAR Text + +table_create IDs TABLE_PAT_KEY Int32 +column_create IDs memos_id COLUMN_INDEX Memos id + +load --table Memos +[ +{"id": 0, "text": "aaa"} +] + +range_filter Memos id \ + --min 0 --min_border include \ + --max 10 --max_border exclude -------------- next part -------------- HTML����������������������������...Download