[Varnish] #1045: Ban lurker doesn't work anymore

Varnish varnish-bugs at varnish-cache.org
Sun Oct 30 23:51:10 CET 2011

#1045: Ban lurker doesn't work anymore
 Reporter:  Yvan        |        Type:  defect  
   Status:  new         |    Priority:  high    
Milestone:              |   Component:  varnishd
  Version:  3.0.2       |    Severity:  major   
 Keywords:  ban lurker  |  

Comment(by kristian):

 Hmm, I see where this went wrong. There is no indication in
 ban_check_object() whether the check was OK or not, only if an object was
 banned. We blindly assume that return 0 means sleep 1.0s.

 In #1030 we corrected the basic issue, but didn't take into account what
 happens when the ban list is perfectly ban-lurker-friendly but objects
 simply can't be banned.

 Scoof: I'm not too happy with the solution in your patch because it
 negates large parts of the fix in #1030.

 Phk: Seems like we need three return values from ban_check_object(). I
 suppose it's dirty to "hide" that in BAN_CheckObject (e.g: ret =
 ban_check_object(..); if (ret == 0 || ret == 1) return 0; else return 1;
 )? The third return value would be "nothing banned, but bans updated",
 which shouldn't be relevant outside of cache_ban.c.

Ticket URL: <https://www.varnish-cache.org/trac/ticket/1045#comment:2>
Varnish <https://varnish-cache.org/>
The Varnish HTTP Accelerator

More information about the varnish-bugs mailing list