lp:~titusx/nginx/mainline

Created by TitusX on 2014-05-03 and last modified on 2021-04-13
Get this branch:
bzr branch lp:~titusx/nginx/mainline

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
TitusX
Project:
Nginx
Status:
Mature

Import details

Import Status: Reviewed

This branch is an import of the HEAD branch of the Git repository at https://github.com/nginx/nginx.git.

The next import is scheduled to run in 5 hours.

Last successful import was 56 minutes ago.

Import started 56 minutes ago on alnitak and finished 56 minutes ago taking 10 seconds — see the log
Import started 6 hours ago on alnitak and finished 6 hours ago taking 10 seconds — see the log
Import started 12 hours ago on izar and finished 12 hours ago taking 10 seconds — see the log
Import started 18 hours ago on alnitak and finished 18 hours ago taking 10 seconds — see the log
Import started on 2021-04-18 on alnitak and finished on 2021-04-18 taking 10 seconds — see the log
Import started on 2021-04-18 on izar and finished on 2021-04-18 taking 10 seconds — see the log
Import started on 2021-04-18 on alnitak and finished on 2021-04-18 taking 10 seconds — see the log
Import started on 2021-04-17 on alnitak and finished on 2021-04-17 taking 10 seconds — see the log
Import started on 2021-04-17 on izar and finished on 2021-04-17 taking 10 seconds — see the log
Import started on 2021-04-17 on izar and finished on 2021-04-17 taking 10 seconds — see the log

Recent revisions

6864. By Maxim Dounin <email address hidden> on 2021-04-13

release-1.19.10 tag

6863. By Maxim Dounin <email address hidden> on 2021-04-13

nginx-1.19.10-RELEASE

6862. By Maxim Dounin <email address hidden> on 2021-04-07

Changed keepalive_requests default to 1000 (ticket #2155).

It turns out no browsers implement HTTP/2 GOAWAY handling properly, and
large enough number of resources on a page results in failures to load
some resources. In particular, Chrome seems to experience errors if
loading of all resources requires more than 1 connection (while it
is usually able to retry requests at least once, even with 2 connections
there are occasional failures for some reason), Safari if loading requires
more than 3 connections, and Firefox if loading requires more than 10
connections (can be configured with network.http.request.max-attempts,
defaults to 10).

It does not seem to be possible to resolve this on nginx side, even strict
limiting of maximum concurrency does not help, and loading issues seems to
be triggered by merely queueing of a request for a particular connection.
The only available mitigation seems to use higher keepalive_requests value.

The new default is 1000 and matches previously used default for
http2_max_requests. It is expected to be enough for 99.98% of the pages
(https://httparchive.org/reports/state-of-the-web?start=latest#reqTotal)
even in Chrome.

6861. By Maxim Dounin <email address hidden> on 2021-04-07

Added $connection_time variable.

6860. By Maxim Dounin <email address hidden> on 2021-04-07

Introduced the "keepalive_time" directive.

Similar to lingering_time, it limits total connection lifetime before
keepalive is switched off. The default is 1 hour, which is close to
the total maximum connection lifetime possible with default
keepalive_requests and keepalive_timeout.

6859. By Maxim Dounin <email address hidden> on 2021-04-06

HTTP/2: relaxed PRIORITY frames limit.

Firefox uses several idle streams for PRIORITY frames[1], and
"http2_max_concurrent_streams 1;" results in "client sent too many
PRIORITY frames" errors when a connection is established by Firefox.

Fix is to relax the PRIORITY frames limit to use at least 100 as
the initial value (which is the recommended by the HTTP/2 protocol
minimum limit on the number of concurrent streams, so it is not
unreasonable for clients to assume that similar number of idle streams
can be used for prioritization).

[1] https://hg.mozilla.org/mozilla-central/file/32a9e6e145d6e3071c3993a20bb603a2f388722b/netwerk/protocol/http/Http2Stream.cpp#l1270

6858. By Maxim Dounin <email address hidden> on 2021-04-05

Configure: fixed --test-build-epoll on FreeBSD 13.

In FreeBSD 13, eventfd(2) was added, and this breaks build
with --test-build-epoll and without --with-file-aio. Fix is
to move eventfd(2) detection to auto/os/linux, as it is used
only on Linux as a notification mechanism for epoll().

6857. By Maxim Dounin <email address hidden> on 2021-04-05

Gzip: updated handling of zlib variant from Intel.

In current versions (all versions based on zlib 1.2.11, at least
since 2018) it no longer uses 64K hash and does not force window
bits to 13 if it is less than 13. That is, it needs just 16 bytes
more memory than normal zlib, so these bytes are simply added to
the normal size calculation.

6856. By Maxim Dounin <email address hidden> on 2021-04-05

Gzip: support for zlib-ng.

6855. By Maxim Dounin <email address hidden> on 2021-04-05

Version bump.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.

Subscribers