<div dir="ltr">Hello. I have one case and I can not find good solution for it.<br>In varnish3 req.backend was saved during restarts, so I can compare old backend property and set other backend after first restart.<br>But in varnish 5 and newer req.backend_hint in vcl_recv is default always. I can not use retry in vcl_backend_response, because this function did not called.<div>How can I fix it?</div><div><br></div><div>My bad solution:</div><div><br></div><div>sub vcl_init {<br>    new upstream_rr = directors.round_robin();<br>    key_rr.add_backend(srv1);<br>    key_rr.add_backend(srv2);<br>}<br></div><div><br></div><div>sub vcl_recv {<br></div><div>    if (req.restarts == 0) {<br>      set req.backend_hint = upstream_rr.backend();<br>    } else {<br>      if (req.restarts == 1) {<br>        std.syslog(180, "RECV IN PROG: set backend srv1");<br>        set req.backend_hint = srv1;<br>      } elseif (req.restarts == 2) {<br>        std.syslog(180, "RECV IN PROG: set backend srv2");<br>        set req.backend_hint = srv2;<br>      } elseif (req.restarts > 2) {<br>        std.syslog(180, "RECV IN PROG: use other DC backend default");<br>        set req.backend_hint = default;<br>      }<br>    }</div><div>    return (hash);<br><div><div>}</div><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div>-- </div><div><span style="font-size:12.8px">Николай Богданов</span></div><div><span style="font-size:12.8px">Инженер АО «Флант»</span><br></div><div><a href="http://flant.ru/" target="_blank">http://flant.ru/</a></div><div>+7 (495) 721-10-27, доб. 422</div><div>+7 (926) <span style="color:rgb(72,72,72);font-family:Verdana,sans-serif;font-size:12px">125-39-69</span></div></div></div></div></div></div>