Kouhei Sutou 2019-05-10 10:22:25 +0900 (Fri, 10 May 2019) Revision: 31c30bcf4a334e43c2f43874a10104fc7424b907 https://github.com/groonga/groonga/commit/31c30bcf4a334e43c2f43874a10104fc7424b907 Message: ii: improve logged key on search Modified files: lib/ii.c test/command/suite/select/slices/filtered/selector/in_values.expected Modified: lib/ii.c (+29 -2) =================================================================== --- lib/ii.c 2019-05-10 10:04:05 +0900 (91ab9f61c) +++ lib/ii.c 2019-05-10 10:22:25 +0900 (d71620585) @@ -10329,7 +10329,21 @@ grn_ii_select(grn_ctx *ctx, grn_ii *ii, grn_log("o=%d n=%d s=%d r=%d", ti->offset, ti->ntoken, ti->size, ti->rid); } */ - GRN_LOG(ctx, GRN_LOG_INFO, "n=%d (%.*s)", n, string_len, string); + if (grn_logger_pass(ctx, GRN_LOG_INFO)) { + if (grn_type_id_is_text_family(ctx, ii->lexicon->header.domain)) { + GRN_LOG(ctx, GRN_LOG_INFO, "n=%d (%.*s)", n, string_len, string); + } else { + grn_obj inspected; + GRN_TEXT_INIT(&inspected, 0); + grn_inspect_key(ctx, &inspected, ii->lexicon, string, string_len); + GRN_LOG(ctx, GRN_LOG_INFO, + "n=%d (%.*s)", + n, + (int)GRN_TEXT_LEN(&inspected), + GRN_TEXT_VALUE(&inspected)); + GRN_OBJ_FIN(ctx, &inspected); + } + } /* todo : array as result if (n == 1 && (*tis)->cursors->n_entries == 1 && op == GRN_OP_OR && !GRN_HASH_SIZE(s) && !s->garbages @@ -10685,7 +10699,20 @@ grn_ii_sel(grn_ctx *ctx, grn_ii *ii, const char *string, unsigned int string_len grn_hash *s, grn_operator op, grn_search_optarg *optarg) { ERRCLR(ctx); - GRN_LOG(ctx, GRN_LOG_INFO, "grn_ii_sel > (%.*s)", string_len, string); + if (grn_logger_pass(ctx, GRN_LOG_INFO)) { + if (grn_type_id_is_text_family(ctx, ii->lexicon->header.domain)) { + GRN_LOG(ctx, GRN_LOG_INFO, "grn_ii_sel > (%.*s)", string_len, string); + } else { + grn_obj inspected; + GRN_TEXT_INIT(&inspected, 0); + grn_inspect_key(ctx, &inspected, ii->lexicon, string, string_len); + GRN_LOG(ctx, GRN_LOG_INFO, + "grn_ii_sel > (%.*s)", + (int)GRN_TEXT_LEN(&inspected), + GRN_TEXT_VALUE(&inspected)); + GRN_OBJ_FIN(ctx, &inspected); + } + } { grn_select_optarg arg; if (!s) { return GRN_INVALID_ARGUMENT; } Modified: test/command/suite/select/slices/filtered/selector/in_values.expected (+6 -4) =================================================================== --- test/command/suite/select/slices/filtered/selector/in_values.expected 2019-05-10 10:04:05 +0900 (352894d01) +++ test/command/suite/select/slices/filtered/selector/in_values.expected 2019-05-10 10:22:25 +0900 (f4fd321f1) @@ -93,18 +93,18 @@ select Memos --filter '_id > 1' --slices[groonga].filter 'in_values(date, ] #|i| [table][select][index][selector][in_values] <> #|i| [object][search][index][key][exact] <Times.memos_date> -#|i| grn_ii_sel > () -#|i| n=1 () +#|i| grn_ii_sel > (#<key 1463626800.0 table:#<pat Times key:Time>>) +#|i| n=1 (#<key 1463626800.0 table:#<pat Times key:Time>>) #|i| exact: 1 #|i| hits=1 #|i| [object][search][index][key][exact] <Times.memos_date> (binary line) (binary line) +#|i| grn_ii_sel > (#<key 1463626801.0 table:#<pat Times key:Time>>) +#|i| n=1 (#<key 1463626801.0 table:#<pat Times key:Time>>) #|i| exact: 2 #|i| hits=2 #|i| [object][search][index][key][exact] <Times.memos_date> -#|i| grn_ii_sel > (タ2ュ+)3) -#|i| n=1 (タ2ュ+)3) +#|i| grn_ii_sel > (#<key 1463626803.0 table:#<pat Times key:Time>>) +#|i| n=1 (#<key 1463626803.0 table:#<pat Times key:Time>>) #|i| exact: 3 #|i| hits=3 #|i| [accessor][resolve][table] (temporary) -> <Memos> -> <ShortText> -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://lists.osdn.me/mailman/archives/groonga-commit/attachments/20190510/1bc1cb1a/attachment-0001.html>