]> err.no Git - varnish/commit
Complete the separation of synthetic from received objects.
authorphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Thu, 31 Jul 2008 12:50:36 +0000 (12:50 +0000)
committerphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Thu, 31 Jul 2008 12:50:36 +0000 (12:50 +0000)
commit0273d1bf97cd5db5295543cd1acf8d01a1b971ba
tree3d5d387b1243dda8098a7a85497b57010b6785d8
parenta207bbf5aa603928db5021a3aa8a1f7a68263965
Complete the separation of synthetic from received objects.

Any object, also errors, we receive from the backend will
go to vcl_fetch(), and can be cached if desired.

Any object we create, for instance if we cannot contact the
backend, will go to vcl_error() and will not be cached.

Technical details:

Implement VCL variable setting for booleans like obj.cacheable.

Remove obj.valid, only valid objects go to vcl_fetch now.

On fetch failure, drop the object and go to STP_ERROR with 503

Update testcase b00015.vtc accordingly.

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@3044 d4fa192b-c00b-0410-8231-f00ffab90ce4
varnish-cache/bin/varnishd/cache.h
varnish-cache/bin/varnishd/cache_center.c
varnish-cache/bin/varnishd/cache_vrt.c
varnish-cache/bin/varnishd/mgt_vcc.c
varnish-cache/bin/varnishd/rfc2616.c
varnish-cache/bin/varnishtest/tests/b00015.vtc
varnish-cache/include/vrt_obj.h
varnish-cache/lib/libvcl/vcc_action.c
varnish-cache/lib/libvcl/vcc_gen_obj.tcl
varnish-cache/lib/libvcl/vcc_obj.c