[nginx] gRPC: RST_STREAM(NO_ERROR) handling micro-optimization.
Sergey Kandaurov
pluknet at nginx.com
Thu Jun 17 09:49:38 UTC 2021
details: https://hg.nginx.org/nginx/rev/0302a4f0b6c4
branches:
changeset: 7873:0302a4f0b6c4
user: Sergey Kandaurov <pluknet at nginx.com>
date: Thu Jun 17 11:44:06 2021 +0300
description:
gRPC: RST_STREAM(NO_ERROR) handling micro-optimization.
After 2096b21fcd10, a single RST_STREAM(NO_ERROR) may not result in an error.
This change removes several unnecessary ctx->type checks for such a case.
diffstat:
src/http/modules/ngx_http_grpc_module.c | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)
diffs (21 lines):
diff -r 021416fca094 -r 0302a4f0b6c4 src/http/modules/ngx_http_grpc_module.c
--- a/src/http/modules/ngx_http_grpc_module.c Thu Jun 17 11:43:55 2021 +0300
+++ b/src/http/modules/ngx_http_grpc_module.c Thu Jun 17 11:44:06 2021 +0300
@@ -2177,6 +2177,8 @@ ngx_http_grpc_filter(void *data, ssize_t
}
ctx->rst = 1;
+
+ continue;
}
if (ctx->type == NGX_HTTP_V2_GOAWAY_FRAME) {
@@ -3484,6 +3486,8 @@ ngx_http_grpc_parse_rst_stream(ngx_http_
return NGX_AGAIN;
}
+ ctx->state = ngx_http_grpc_st_start;
+
return NGX_OK;
}
More information about the nginx-devel
mailing list