Hi,
I have an issue with varnish (v5.2.1) returning incomplete responses when the
cache gets full and it starts nuking objects.The request that triggered the
object nuke is returned incomplete (tested with curl) and the python requests
library complains with "ChunkedEncodingError: ('Connection broken:
IncompleteRead(0 bytes read)', IncompleteRead(0 bytes read))".
Do you see anything wrong in the vlc file? Should there be a mandatory return
statement in the vcl_recv function?
vcl 4.0;
backend pub1 { .host = "pub1.example.com"; .port = "80"; .probe = {
.url = "/"; .timeout = 5s; .interval = 10s; .window =
5; .threshold = 3; } .connect_timeout = 10s;
.first_byte_timeout = 900s; .between_bytes_timeout = 900s;}
backend pub2 { .host = "pub2.example.com"; .port = "80"; .probe = {
.url = "/"; .timeout = 5s; .interval = 10s; .window =
5; .threshold = 3; } .connect_timeout = 10s;
.first_byte_timeout = 900s; .between_bytes_timeout = 900s;} # Enables use of
"Cache-Control: no-cache"sub vcl_recv { if (req.http.Cache-Control ~
"no-cache") { set req.hash_always_miss = true; }
set req.backend_hint = pub1;
if (req.http.host == "pub1-cache.example.com") { set
req.backend_hint = pub1; }
if (req.http.host == "pub2-cache.example.com") { set
req.backend_hint = pub2; }}
# Use smaller TTL for non 200 backend response codessub vcl_backend_response {
if (beresp.status != 200){ set beresp.ttl = 60s; }}
Thanks a lot!Radu
_______________________________________________
varnish-misc mailing list
[email protected]
https://www.varnish-cache.org/lists/mailman/listinfo/varnish-misc