This repository was archived by the owner on Feb 16, 2026. It is now read-only.
File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ varnishtest "subsequent rush on rush miss"
2+
3+ barrier b1 cond 2
4+ barrier b2 cond 2
5+ barrier b3 cond 2
6+ barrier b4 cond 2
7+
8+ server s1 {
9+ rxreq
10+ expect req.http.user-agent == c1
11+ barrier b1 sync
12+ barrier b2 sync
13+ txresp -hdr "Vary: accept"
14+
15+ rxreq
16+ expect req.http.user-agent == c2
17+ txresp -hdr "Vary: accept"
18+ } -start
19+
20+ varnish v1 -cliok "param.set thread_pools 1"
21+ varnish v1 -cliok "param.set rush_exponent 1"
22+ varnish v1 -cliok "param.set debug +syncvsl,+waitinglist"
23+ varnish v1 -vcl+backend "" -start
24+
25+ client c1 {
26+ txreq
27+ rxresp
28+ expect resp.http.x-varnish == 1001
29+ } -start
30+
31+ barrier b1 sync
32+
33+ logexpect l1 -v v1 -q Debug -g raw {
34+ expect * * Debug "on waiting list"
35+ } -start
36+
37+ client c2 {
38+ txreq -hdr "accept: nothing"
39+ rxresp
40+ expect resp.http.x-varnish == 1004
41+ } -start
42+
43+ logexpect l1 -wait -start
44+
45+ client c3 {
46+ txreq
47+ rxresp
48+ expect resp.http.x-varnish == "1006 1002"
49+ } -start
50+
51+ logexpect l1 -wait
52+
53+ barrier b2 sync
54+
55+ client c1 -wait
56+ client c2 -wait
57+ client c3 -wait
58+
59+ varnish v1 -expect cache_miss == 2
60+ varnish v1 -expect cache_hit == 1
61+ varnish v1 -expect cache_hit_grace == 0
62+ varnish v1 -expect s_bgfetch == 0
63+ varnish v1 -expect busy_sleep == 2
64+ varnish v1 -expect busy_wakeup == 2
Original file line number Diff line number Diff line change @@ -858,15 +858,17 @@ PARAM_SIMPLE(
858858PARAM_SIMPLE (
859859 /* name */ rush_exponent ,
860860 /* type */ uint ,
861- /* min */ "2 " ,
861+ /* min */ "1 " ,
862862 /* max */ NULL ,
863863 /* def */ "3" ,
864864 /* units */ "requests per request" ,
865865 /* descr */
866866 "How many parked request we start for each completed request on "
867867 "the object.\n"
868868 "NB: Even with the implicit delay of delivery, this parameter "
869- "controls an exponential increase in number of worker threads." ,
869+ "controls an exponential increase in number of worker threads. "
870+ "A value of 1 will instead serialize requests resumption and is "
871+ "only useful for testing purposes." ,
870872 /* flags */ EXPERIMENTAL
871873)
872874
You can’t perform that action at this time.
0 commit comments