Mercurial > hg > nginx
annotate docs/GNUmakefile @ 7235:c2a0a838c40f
gRPC: special handling of "trailer only" responses.
The gRPC protocol makes a distinction between HEADERS frame with
the END_STREAM flag set, and a HEADERS frame followed by an empty
DATA frame with the END_STREAM flag. The latter is not permitted,
and results in errors not being propagated through nginx. Instead,
gRPC clients complain that "server closed the stream without sending
trailers" (seen in grpc-go) or "13: Received RST_STREAM with error
code 2" (seen in grpc-c).
To fix this, nginx now returns HEADERS with the END_STREAM flag if
the response length is known to be 0, and we are not expecting
any trailer headers to be added. And the response length is
explicitly set to 0 in the gRPC proxy if we see initial HEADERS frame
with the END_STREAM flag set.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Sat, 17 Mar 2018 23:04:26 +0300 |
parents | f303f3e43f7b |
children | 1bc938b270dc |
rev | line source |
---|---|
681 | 1 |
775 | 2 VER= $(shell grep 'define NGINX_VERSION' src/core/nginx.h \ |
5147
864030a4ff2a
Configure: unified nginx version computation constructs.
Ruslan Ermilov <ru@nginx.com>
parents:
4831
diff
changeset
|
3 | sed -e 's/^.*"\(.*\)".*/\1/') |
681 | 4 NGINX= nginx-$(VER) |
5 TEMP= tmp | |
5585
f303f3e43f7b
Docs: switched from java XSLScript to xslscript.pl.
Maxim Dounin <mdounin@mdounin.ru>
parents:
5147
diff
changeset
|
6 XSLS?= xslscript.pl |
681 | 7 |
8 | |
4187
b9dade63fcc2
The reference documentation is moving elsewhere.
Ruslan Ermilov <ru@nginx.com>
parents:
4110
diff
changeset
|
9 all: changes |
4068
22364b1f61c9
Initial English translation of Core and HTTP Core modules.
Ruslan Ermilov <ru@nginx.com>
parents:
4013
diff
changeset
|
10 |
681 | 11 changes: $(TEMP)/$(NGINX)/CHANGES.ru \ |
12 $(TEMP)/$(NGINX)/CHANGES | |
13 | |
14 | |
4831
5e3bda6f5208
Pass changes.xml thru xmllint when generating CHANGES and CHANGES.ru.
Ruslan Ermilov <ru@nginx.com>
parents:
4776
diff
changeset
|
15 $(TEMP)/$(NGINX)/CHANGES.ru: docs/dtd/changes.dtd \ |
5e3bda6f5208
Pass changes.xml thru xmllint when generating CHANGES and CHANGES.ru.
Ruslan Ermilov <ru@nginx.com>
parents:
4776
diff
changeset
|
16 docs/xml/nginx/changes.xml \ |
4013
b427290fb6bc
- Added missing dependencies for the CHANGES{,ru} targets.
Ruslan Ermilov <ru@nginx.com>
parents:
3999
diff
changeset
|
17 docs/xml/change_log_conf.xml \ |
681 | 18 docs/xslt/changes.xslt |
19 | |
4776
3032f4854b81
Simplified makefile that builds CHANGES.
Ruslan Ermilov <ru@nginx.com>
parents:
4187
diff
changeset
|
20 mkdir -p $(TEMP)/$(NGINX) |
681 | 21 |
4831
5e3bda6f5208
Pass changes.xml thru xmllint when generating CHANGES and CHANGES.ru.
Ruslan Ermilov <ru@nginx.com>
parents:
4776
diff
changeset
|
22 xmllint --noout --valid docs/xml/nginx/changes.xml |
4013
b427290fb6bc
- Added missing dependencies for the CHANGES{,ru} targets.
Ruslan Ermilov <ru@nginx.com>
parents:
3999
diff
changeset
|
23 xsltproc --stringparam lang ru \ |
4776
3032f4854b81
Simplified makefile that builds CHANGES.
Ruslan Ermilov <ru@nginx.com>
parents:
4187
diff
changeset
|
24 -o $@ docs/xslt/changes.xslt docs/xml/nginx/changes.xml |
681 | 25 |
26 | |
4831
5e3bda6f5208
Pass changes.xml thru xmllint when generating CHANGES and CHANGES.ru.
Ruslan Ermilov <ru@nginx.com>
parents:
4776
diff
changeset
|
27 $(TEMP)/$(NGINX)/CHANGES: docs/dtd/changes.dtd \ |
5e3bda6f5208
Pass changes.xml thru xmllint when generating CHANGES and CHANGES.ru.
Ruslan Ermilov <ru@nginx.com>
parents:
4776
diff
changeset
|
28 docs/xml/nginx/changes.xml \ |
4013
b427290fb6bc
- Added missing dependencies for the CHANGES{,ru} targets.
Ruslan Ermilov <ru@nginx.com>
parents:
3999
diff
changeset
|
29 docs/xml/change_log_conf.xml \ |
681 | 30 docs/xslt/changes.xslt |
31 | |
4776
3032f4854b81
Simplified makefile that builds CHANGES.
Ruslan Ermilov <ru@nginx.com>
parents:
4187
diff
changeset
|
32 mkdir -p $(TEMP)/$(NGINX) |
681 | 33 |
4831
5e3bda6f5208
Pass changes.xml thru xmllint when generating CHANGES and CHANGES.ru.
Ruslan Ermilov <ru@nginx.com>
parents:
4776
diff
changeset
|
34 xmllint --noout --valid docs/xml/nginx/changes.xml |
4013
b427290fb6bc
- Added missing dependencies for the CHANGES{,ru} targets.
Ruslan Ermilov <ru@nginx.com>
parents:
3999
diff
changeset
|
35 xsltproc --stringparam lang en \ |
4776
3032f4854b81
Simplified makefile that builds CHANGES.
Ruslan Ermilov <ru@nginx.com>
parents:
4187
diff
changeset
|
36 -o $@ docs/xslt/changes.xslt docs/xml/nginx/changes.xml |
681 | 37 |
38 | |
5585
f303f3e43f7b
Docs: switched from java XSLScript to xslscript.pl.
Maxim Dounin <mdounin@mdounin.ru>
parents:
5147
diff
changeset
|
39 docs/xslt/changes.xslt: docs/xsls/changes.xsls |
681 | 40 |
5585
f303f3e43f7b
Docs: switched from java XSLScript to xslscript.pl.
Maxim Dounin <mdounin@mdounin.ru>
parents:
5147
diff
changeset
|
41 $(XSLS) -o $@ $< |