[master] f087fe6d3 Align ESI bodybytes accounting with #3354
Poul-Henning Kamp
phk at FreeBSD.org
Mon Oct 5 07:25:07 UTC 2020
commit f087fe6d37679d8d709cfec85451fde4f68fbb95
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date: Mon Oct 5 07:23:47 2020 +0000
Align ESI bodybytes accounting with #3354
diff --git a/bin/varnishd/cache/cache_esi_deliver.c b/bin/varnishd/cache/cache_esi_deliver.c
index 9bd59b5c7..daf9ece9c 100644
--- a/bin/varnishd/cache/cache_esi_deliver.c
+++ b/bin/varnishd/cache/cache_esi_deliver.c
@@ -475,7 +475,7 @@ static inline int
ved_bytes(struct req *req, struct ecx *ecx, enum vdp_action act,
const void *ptr, ssize_t len)
{
- req->acct.resp_bodybytes += len;
+ (void)req;
if (act == VDP_END)
act = VDP_FLUSH;
return (VDP_bytes(ecx->preq, act, ptr, len));
@@ -871,5 +871,5 @@ ved_deliver(struct req *req, struct boc *boc, int wantbody)
if (i && req->doclose == SC_NULL)
req->doclose = SC_REM_CLOSE;
- (void)VDP_Close(req);
+ req->acct.resp_bodybytes += VDP_Close(req);
}
diff --git a/bin/varnishtest/tests/e00000.vtc b/bin/varnishtest/tests/e00000.vtc
index 3030a11c7..47bcdc574 100644
--- a/bin/varnishtest/tests/e00000.vtc
+++ b/bin/varnishtest/tests/e00000.vtc
@@ -32,3 +32,4 @@ client c1 {
client c1 -run
logexpect l1 -wait
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 33
diff --git a/bin/varnishtest/tests/e00001.vtc b/bin/varnishtest/tests/e00001.vtc
index 8a4a42480..c903a0acb 100644
--- a/bin/varnishtest/tests/e00001.vtc
+++ b/bin/varnishtest/tests/e00001.vtc
@@ -38,3 +38,4 @@ client c1 {
client c1 -run
logexpect l1 -wait
varnish v1 -expect esi_errors == 2
+varnish v1 -expect MAIN.s_resp_bodybytes == 40
diff --git a/bin/varnishtest/tests/e00002.vtc b/bin/varnishtest/tests/e00002.vtc
index 244d4bce5..2ca2b1352 100644
--- a/bin/varnishtest/tests/e00002.vtc
+++ b/bin/varnishtest/tests/e00002.vtc
@@ -27,3 +27,4 @@ client c1 {
client c1 -run
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 35
diff --git a/bin/varnishtest/tests/e00003.vtc b/bin/varnishtest/tests/e00003.vtc
index be3eb1a21..23041400c 100644
--- a/bin/varnishtest/tests/e00003.vtc
+++ b/bin/varnishtest/tests/e00003.vtc
@@ -84,6 +84,7 @@ client c1 {
client c1 -run
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 150
logexpect l1 -wait
logexpect l2 -wait
diff --git a/bin/varnishtest/tests/e00004.vtc b/bin/varnishtest/tests/e00004.vtc
index 9e19b667f..44a31c760 100644
--- a/bin/varnishtest/tests/e00004.vtc
+++ b/bin/varnishtest/tests/e00004.vtc
@@ -33,3 +33,4 @@ client c1 {
client c1 -run
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 67
diff --git a/bin/varnishtest/tests/e00005.vtc b/bin/varnishtest/tests/e00005.vtc
index 832a6eeee..7137195b6 100644
--- a/bin/varnishtest/tests/e00005.vtc
+++ b/bin/varnishtest/tests/e00005.vtc
@@ -34,3 +34,4 @@ client c1 {
client c1 -run
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 67
diff --git a/bin/varnishtest/tests/e00006.vtc b/bin/varnishtest/tests/e00006.vtc
index e1b7319c0..b6b511808 100644
--- a/bin/varnishtest/tests/e00006.vtc
+++ b/bin/varnishtest/tests/e00006.vtc
@@ -43,6 +43,7 @@ client c1 {
client c1 -run
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 78
# Now try with invalid URLs
@@ -78,14 +79,19 @@ client c1 {
rxresp
expect resp.status == 200
expect resp.bodylen == 4
+} -run
+
+varnish v1 -expect esi_errors == 1
+varnish v1 -expect MAIN.s_resp_bodybytes == 82
+
+client c1 {
txreq -url /https
rxresp
expect resp.status == 200
expect resp.bodylen == 6
-}
-
-client c1 -run
+} -run
logexpect l1 -wait
varnish v1 -expect esi_errors == 2
+varnish v1 -expect MAIN.s_resp_bodybytes == 88
diff --git a/bin/varnishtest/tests/e00007.vtc b/bin/varnishtest/tests/e00007.vtc
index 015ffbb15..038f45f47 100644
--- a/bin/varnishtest/tests/e00007.vtc
+++ b/bin/varnishtest/tests/e00007.vtc
@@ -48,3 +48,4 @@ client c1 {
client c1 -run
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 120
diff --git a/bin/varnishtest/tests/e00008.vtc b/bin/varnishtest/tests/e00008.vtc
index 4c516e003..1264aea55 100644
--- a/bin/varnishtest/tests/e00008.vtc
+++ b/bin/varnishtest/tests/e00008.vtc
@@ -114,3 +114,4 @@ logexpect l1 -wait
logexpect l2 -wait
logexpect l3 -wait
varnish v1 -expect esi_errors == 18
+varnish v1 -expect MAIN.s_resp_bodybytes == 472
diff --git a/bin/varnishtest/tests/e00009.vtc b/bin/varnishtest/tests/e00009.vtc
index 70a820698..e15e56ae7 100644
--- a/bin/varnishtest/tests/e00009.vtc
+++ b/bin/varnishtest/tests/e00009.vtc
@@ -35,6 +35,7 @@ client c1 {
} -run
logexpect l1 -wait
+varnish v1 -expect MAIN.s_resp_bodybytes == 57
varnish v1 -cli "param.set feature +esi_disable_xml_check"
@@ -46,3 +47,4 @@ client c1 {
expect resp.http.transfer-encoding == "chunked"
} -run
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 79
diff --git a/bin/varnishtest/tests/e00012.vtc b/bin/varnishtest/tests/e00012.vtc
index 0786c2181..e73f535b1 100644
--- a/bin/varnishtest/tests/e00012.vtc
+++ b/bin/varnishtest/tests/e00012.vtc
@@ -32,6 +32,8 @@ client c1 {
expect resp.http.Transfer-Encoding == "chunked"
} -run
+varnish v1 -expect MAIN.s_resp_bodybytes == 67
+
client c1 {
txreq -url /foo/bar -proto HTTP/1.0
rxresp
@@ -43,3 +45,4 @@ client c1 {
} -run
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 134
diff --git a/bin/varnishtest/tests/e00015.vtc b/bin/varnishtest/tests/e00015.vtc
index 951785115..3edc19747 100644
--- a/bin/varnishtest/tests/e00015.vtc
+++ b/bin/varnishtest/tests/e00015.vtc
@@ -48,6 +48,7 @@ client c1 {
varnish v1 -vsl_catchup
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 149
server s1 {
rxreq
@@ -131,6 +132,8 @@ client c1 {
txreq -url /top2 -hdr "fiddle: do_esi"
rxresp
expect resp.status == 503
+ expect resp.bodylen == 251
} -run
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 865
diff --git a/bin/varnishtest/tests/e00016.vtc b/bin/varnishtest/tests/e00016.vtc
index feb86d614..142032366 100644
--- a/bin/varnishtest/tests/e00016.vtc
+++ b/bin/varnishtest/tests/e00016.vtc
@@ -50,3 +50,4 @@ client c1 {
client c1 -run
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 105
diff --git a/bin/varnishtest/tests/e00017.vtc b/bin/varnishtest/tests/e00017.vtc
index dd50cedfb..09333378e 100644
--- a/bin/varnishtest/tests/e00017.vtc
+++ b/bin/varnishtest/tests/e00017.vtc
@@ -86,3 +86,4 @@ client c1 {
client c1 -run
varnish v1 -expect esi_errors == 0
+varnish v1 -expect MAIN.s_resp_bodybytes == 684
diff --git a/bin/varnishtest/tests/e00019.vtc b/bin/varnishtest/tests/e00019.vtc
index 98ed56f3e..b0b08b8df 100644
--- a/bin/varnishtest/tests/e00019.vtc
+++ b/bin/varnishtest/tests/e00019.vtc
@@ -77,3 +77,4 @@ logexpect l1 -wait
varnish v1 -expect esi_errors == 5
varnish v1 -expect esi_warnings == 1
+varnish v1 -expect MAIN.s_resp_bodybytes == 65856
More information about the varnish-commit
mailing list