<div dir="ltr"># HG changeset patch<br># User Sangdeuk Kwon <<a href="mailto:sangdeuk.kwon@quantil.com">sangdeuk.kwon@quantil.com</a>><br># Date 1670390583 -32400<br>#      Wed Dec 07 14:23:03 2022 +0900<br># Node ID a1069fbf10ffd806b7c8d6deb3f6546edc7b0427<br># Parent  0b360747c74e3fa7e439e0684a8cf1da2d14d8f6<br>proxy_cache_max_range_offset could affect the background updating<br><br>proxy_cache_max_range_offset doesn't care about the upstream of background updating.<br>So, nginx drops the new cache file after background updating.<br>This behavior is strange because background updating is just to fetch<br>new content after serving a stale cache, not to serve it.<br><br>I think the background updating should be not affected by proxy_cache_max_range_offset.<br><br>Related directives:<br>proxy_cache_max_range_offset 10;<br>proxy_cache_use_stale updating;<br>proxy_cache_background_update on;<br><br>diff -r 0b360747c74e -r a1069fbf10ff src/http/ngx_http_upstream.c<br>--- a/src/http/ngx_http_upstream.c      Thu Nov 24 23:08:30 2022 +0400<br>+++ b/src/http/ngx_http_upstream.c      Wed Dec 07 14:23:03 2022 +0900<br>@@ -986,7 +986,9 @@<br>         return rc;<br>     }<br> <br>-    if (ngx_http_upstream_cache_check_range(r, u) == NGX_DECLINED) {<br>+    if (!r->background<br>+        && ngx_http_upstream_cache_check_range(r, u) == NGX_DECLINED)<br>+    {<br>         u->cacheable = 0;<br>     }<br> <br></div>