Kouhei Sutou
null+****@clear*****
Mon Dec 8 11:51:16 JST 2014
Kouhei Sutou 2014-12-08 11:51:16 +0900 (Mon, 08 Dec 2014) New Revision: 71e8a6d34e7805b1d1f9dd275733d529e0919b8e https://github.com/groonga/groonga/commit/71e8a6d34e7805b1d1f9dd275733d529e0919b8e Message: request-canceler: just set ctx->rc for canceling Error message and logging are done at unregistering the request. Modified files: lib/request_canceler.c Modified: lib/request_canceler.c (+10 -4) =================================================================== --- lib/request_canceler.c 2014-12-05 20:41:03 +0900 (42a852d) +++ lib/request_canceler.c 2014-12-08 11:51:16 +0900 (866292f) @@ -83,6 +83,12 @@ grn_request_canceler_unregister(grn_ctx *ctx, grn_hash_delete(&grn_gctx, entries, request_id, size, NULL); } MUTEX_UNLOCK(grn_the_request_canceler->mutex); + + if (ctx->rc == GRN_INTERRUPTED_FUNCTION_CALL) { + ERRSET(ctx, GRN_LOG_NOTICE, ctx->rc, + "[request-canceler] a request is canceled: <%.*s>", + size, request_id); + } } grn_bool @@ -95,10 +101,10 @@ grn_request_canceler_cancel(const char *request_id, unsigned int size) void *value; if (grn_hash_get(&grn_gctx, entries, request_id, size, &value)) { grn_request_canceler_entry *entry = value; - ERRSET(entry->ctx, GRN_LOG_NOTICE, GRN_INTERRUPTED_FUNCTION_CALL, - "[request-canceler] cancel request: <%.*s>", - size, request_id); - canceled = GRN_TRUE; + if (entry->ctx->rc == GRN_SUCCESS) { + entry->ctx->rc = GRN_INTERRUPTED_FUNCTION_CALL; + canceled = GRN_TRUE; + } } } MUTEX_UNLOCK(grn_the_request_canceler->mutex); -------------- next part -------------- HTML����������������������������...Download