[experimental-ims] be1eb03 Try to test the object alloc / LRU / Nuke / beresp.storage hinting

Geoff Simmons geoff at varnish-cache.org
Wed Aug 31 16:03:22 CEST 2011


commit be1eb0364d5642750537b628148c00169a3bba78
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