annotate auto/threads @ 8047:7015f26aef90

Cache: ignore stale-if-error for 4xx and 5xx codes. Previously the stale-if-error extension of the Cache-Control upstream header triggered the return of a stale response for all error conditions that can be specified in the proxy_cache_use_stale directive. The list of these errors includes both network/timeout/format errors, as well as some HTTP codes like 503, 504, 403, 429 etc. The latter prevented a cache entry from being updated by a response with any of these HTTP codes during the stale-if-error period. Now stale-if-error only works for network/timeout/format errors and ignores the upstream HTTP code. The return of a stale response for certain HTTP codes is still possible using the proxy_cache_use_stale directive. This change also applies to the stale-while-revalidate extension of the Cache-Control header, which triggers stale-if-error if it is missing. Reported at http://mailman.nginx.org/pipermail/nginx/2020-July/059723.html.
author Roman Arutyunyan <arut@nginx.com>
date Wed, 29 Jul 2020 13:28:04 +0300
parents 04ebf29eaf5b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6018
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
1
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
2 # Copyright (C) Nginx, Inc.
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
3
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
4
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
5 if [ $USE_THREADS = YES ]; then
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
6
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
7 if [ "$NGX_PLATFORM" = win32 ]; then
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
8 cat << END
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
9
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
10 $0: --with-threads is not supported on Windows
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
11
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
12 END
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
13 exit 1
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
14 fi
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
15
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
16 have=NGX_THREADS . auto/have
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
17 CORE_DEPS="$CORE_DEPS $THREAD_POOL_DEPS"
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
18 CORE_SRCS="$CORE_SRCS $THREAD_POOL_SRCS"
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
19 CORE_LIBS="$CORE_LIBS -lpthread"
7246
04ebf29eaf5b Configure: fixed static compilation with OpenSSL 1.1.1.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6018
diff changeset
20 NGX_LIBPTHREAD="-lpthread"
6018
466bd63b63d1 Thread pools implementation.
Valentin Bartenev <vbart@nginx.com>
parents:
diff changeset
21 fi