[3.0] 8e3bcec Try to test the object alloc / LRU / Nuke / beresp.storage hinting
Tollef Fog Heen
tfheen at varnish-cache.org
Wed Aug 24 09:24:05 CEST 2011
commit 8e3bcecf063753c701c25aa0f1adeebbc042567c
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date: Mon Aug 22 10:36:15 2011 +0000
Try to test the object alloc / LRU / Nuke / beresp.storage hinting
diff --git a/bin/varnishtest/tests/c00044.vtc b/bin/varnishtest/tests/c00044.vtc
new file mode 100644
index 0000000..e7251a9
--- /dev/null
+++ b/bin/varnishtest/tests/c00044.vtc
@@ -0,0 +1,86 @@
+varnishtest "Object/LRU/Stevedores"
+
+server s1 {
+ rxreq
+ txresp -bodylen 1048100
+ rxreq
+ txresp -bodylen 1048101
+ rxreq
+ txresp -bodylen 1048102
+
+ rxreq
+ txresp -bodylen 1048103
+
+ rxreq
+ txresp -bodylen 1048104
+} -start
+
+varnish v1 -storage "-smalloc,1m -smalloc,1m, -smalloc,1m" -vcl+backend {
+ sub vcl_fetch {
+ set beresp.storage = "invalid";
+ }
+} -start
+
+
+client c1 {
+ txreq -url /foo
+ rxresp
+ expect resp.status == 200
+ expect resp.bodylen == 1048100
+} -run
+
+varnish v1 -expect SMA.Transient.g_bytes == 0
+varnish v1 -expect SMA.s0.g_bytes == 0
+varnish v1 -expect SMA.s0.g_space > 1000000
+varnish v1 -expect SMA.s1.g_bytes > 1000000
+varnish v1 -expect SMA.s1.g_space < 100
+varnish v1 -expect SMA.s2.g_bytes == 0
+varnish v1 -expect SMA.s2.g_space > 1000000
+
+client c1 {
+ txreq -url /bar
+ rxresp
+ expect resp.status == 200
+ expect resp.bodylen == 1048101
+} -run
+
+varnish v1 -expect SMA.Transient.g_bytes == 0
+varnish v1 -expect SMA.s0.g_bytes == 0
+varnish v1 -expect SMA.s0.g_space > 1000000
+varnish v1 -expect SMA.s1.g_bytes > 1000000
+varnish v1 -expect SMA.s1.g_space < 100
+varnish v1 -expect SMA.s2.g_bytes > 1000000
+varnish v1 -expect SMA.s2.g_space < 100
+
+client c1 {
+ txreq -url /burp
+ rxresp
+ expect resp.status == 200
+ expect resp.bodylen == 1048102
+} -run
+
+varnish v1 -expect SMA.Transient.g_bytes == 0
+varnish v1 -expect SMA.s0.g_bytes > 1000000
+varnish v1 -expect SMA.s0.g_space < 100
+varnish v1 -expect SMA.s1.g_bytes > 1000000
+varnish v1 -expect SMA.s1.g_space < 100
+varnish v1 -expect SMA.s2.g_bytes > 1000000
+varnish v1 -expect SMA.s2.g_space < 100
+
+client c1 {
+ txreq -url /foo1
+ rxresp
+ expect resp.status == 200
+ expect resp.bodylen == 1048103
+} -run
+
+varnish v1 -expect n_lru_nuked == 1
+
+client c1 {
+ txreq -url /foo
+ rxresp
+ expect resp.status == 200
+ expect resp.bodylen == 1048104
+} -run
+
+varnish v1 -expect n_lru_nuked == 2
diff --git a/bin/varnishtest/tests/c00045.vtc b/bin/varnishtest/tests/c00045.vtc
new file mode 100644
index 0000000..0e4aaef
--- /dev/null
+++ b/bin/varnishtest/tests/c00045.vtc
@@ -0,0 +1,64 @@
+varnishtest "Object/LRU/Stevedores with hinting"
+
+server s1 {
+ rxreq
+ txresp -bodylen 1048100
+ rxreq
+ txresp -bodylen 1048101
+ rxreq
+ txresp -bodylen 1048102
+} -start
+
+varnish v1 -storage "-smalloc,1m -smalloc,1m, -smalloc,1m" -vcl+backend {
+ sub vcl_fetch {
+ set beresp.storage = "s0";
+ }
+} -start
+
+
+client c1 {
+ txreq -url /foo
+ rxresp
+ expect resp.status == 200
+ expect resp.bodylen == 1048100
+} -run
+
+varnish v1 -expect SMA.Transient.g_bytes == 0
+varnish v1 -expect SMA.s0.g_bytes > 1000000
+varnish v1 -expect SMA.s0.g_space < 100
+varnish v1 -expect SMA.s1.g_bytes == 0
+varnish v1 -expect SMA.s1.g_space > 1000000
+varnish v1 -expect SMA.s2.g_bytes == 0
+varnish v1 -expect SMA.s2.g_space > 1000000
+
+client c1 {
+ txreq -url /bar
+ rxresp
+ expect resp.status == 200
+ expect resp.bodylen == 1048101
+} -run
+
+varnish v1 -expect n_lru_nuked == 1
+varnish v1 -expect SMA.Transient.g_bytes == 0
+varnish v1 -expect SMA.s0.g_bytes > 1000000
+varnish v1 -expect SMA.s0.g_space < 100
+varnish v1 -expect SMA.s1.g_bytes == 0
+varnish v1 -expect SMA.s1.g_space > 1000000
+varnish v1 -expect SMA.s2.g_bytes == 0
+varnish v1 -expect SMA.s2.g_space > 1000000
+
+client c1 {
+ txreq -url /foo
+ rxresp
+ expect resp.status == 200
+ expect resp.bodylen == 1048102
+} -run
+
+varnish v1 -expect n_lru_nuked == 2
+varnish v1 -expect SMA.Transient.g_bytes == 0
+varnish v1 -expect SMA.s0.g_bytes > 1000000
+varnish v1 -expect SMA.s0.g_space < 100
+varnish v1 -expect SMA.s1.g_bytes == 0
+varnish v1 -expect SMA.s1.g_space > 1000000
+varnish v1 -expect SMA.s2.g_bytes == 0
+varnish v1 -expect SMA.s2.g_space > 1000000
More information about the varnish-commit
mailing list