[master] a4ea4a076 New counter MAIN.pipe_limited
Dridi Boukelmoune
dridi.boukelmoune at gmail.com
Mon Apr 15 07:57:07 UTC 2019
commit a4ea4a07618009f7a52c3eb8bbdf24b8a8588796
Author: Dridi Boukelmoune <dridi.boukelmoune at gmail.com>
Date: Thu Apr 11 19:52:07 2019 +0200
New counter MAIN.pipe_limited
To keep track of the number of times pipe_sess_max kicked in. This one
can be lazily updated.
diff --git a/bin/varnishd/VSC_main.vsc b/bin/varnishd/VSC_main.vsc
index 91d17fc8b..0377f9659 100644
--- a/bin/varnishd/VSC_main.vsc
+++ b/bin/varnishd/VSC_main.vsc
@@ -399,6 +399,14 @@
:oneliner: Number of ongoing pipe sessions
+.. varnish_vsc:: pipe_limited
+ :group: wrk
+ :oneliner: Pipes hit pipe_sess_max
+
+ Number of times more pipes were needed, but the limit was reached. See
+ also parameter pipe_sess_max.
+
+
.. varnish_vsc:: s_pipe
:group: wrk
:oneliner: Total pipe sessions seen
diff --git a/bin/varnishd/cache/cache_req_fsm.c b/bin/varnishd/cache/cache_req_fsm.c
index 5fb7f615e..eb797917d 100644
--- a/bin/varnishd/cache/cache_req_fsm.c
+++ b/bin/varnishd/cache/cache_req_fsm.c
@@ -710,6 +710,7 @@ cnt_pipe(struct worker *wrk, struct req *req)
V1P_Leave();
break;
}
+ wrk->stats->pipe_limited++;
/* fall through */
case VCL_RET_FAIL:
req->req_step = R_STP_VCLFAIL;
diff --git a/bin/varnishtest/tests/v00059.vtc b/bin/varnishtest/tests/v00059.vtc
index 2b8e24148..26282201d 100644
--- a/bin/varnishtest/tests/v00059.vtc
+++ b/bin/varnishtest/tests/v00059.vtc
@@ -64,3 +64,4 @@ barrier b2 sync
varnish v1 -expect MAIN.n_pipe == 1
barrier b4 sync
varnish v1 -expect MAIN.n_pipe == 0
+varnish v1 -expect MAIN.pipe_limited == 1
More information about the varnish-commit
mailing list