# HG changeset patch # User Roman Arutyunyan <arut@nginx.com> # Date 1707486707 -28800 # Fri Feb 09 21:51:47 2024 +0800 # Node ID 4584ba4b1d65a90f69201cecf1f1e650c1cbd87b # Parent 5d28510b62bffba3187d7fe69baccd2d2da41a12 QUIC: input packet batching with recvmmsg(). diff --git a/auto/os/linux b/auto/os/linux --- a/auto/os/linux +++ b/auto/os/linux @@ -303,4 +303,15 @@ ngx_feature_test=by Roman Arutyunyan - Nginx Development
Hello! On Wed, Dec 13, 2023 at 04:16:15PM -0600, Julio Suarez wrote: > 1. > > Yes, double checked configuration (what I'm running isn't exactly what's > in that link). No shared memory zones or thread pools enabled. Sounds > like a change in configuration is needed to test this. > > Would enabling proxy_cache_path be sufficient for this, or should this > be done anotby Maxim Dounin - Nginx Development
Hi, This is very discussion helpful. 1. Yes, double checked configuration (what I'm running isn't exactly what's in that link). No shared memory zones or thread pools enabled. Sounds like a change in configuration is needed to test this. Would enabling proxy_cache_path be sufficient for this, or should this be done another way? When proxy_cache_path is enabled, I see calls to ngx_shmtx_by Julio Suarez - Nginx Development
Hello! On Mon, Dec 11, 2023 at 05:09:17PM -0600, Julio Suarez wrote: > Hi Maxim, > > > Nitpicking: Added ISB as ngx_cpu_pause() for aarch64. > > Yes, we can make that change. > > > Could you please clarify what do you mean by "a bug"? An empty > > ngx_cpu_pause() is certainly not a bug, it's just a lack of a more > > optimal solution for theby Maxim Dounin - Nginx Development
Hi Maxim, Nitpicking: Added ISB as ngx_cpu_pause() for aarch64. Yes, we can make that change. Could you please clarify what do you mean by "a bug"? An empty ngx_cpu_pause() is certainly not a bug, it's just a lack of a more optimal solution for the particular architecture. Agree, not a bug. I'm in a team that focuses on performance, so sub-optimal performance is a "bug"by Julio Suarez - Nginx Development
details: https://hg.nginx.org/njs/rev/714fae197d83 branches: changeset: 2220:714fae197d83 user: Dmitry Volyntsev <xeioex@nginx.com> date: Mon Oct 16 18:09:37 2023 -0700 description: Modules: fixed items() method of a shared dictionary. Previously, under a memory pressure the method might return prematurely while still holding the mutex for the shared memory. This fixes #676 iby Dmitry Volyntsev - Nginx Development
details: https://hg.nginx.org/njs/rev/ff7eb3c4bf76 branches: changeset: 2176:ff7eb3c4bf76 user: Dmitry Volyntsev <xeioex@nginx.com> date: Mon Jul 03 13:32:41 2023 -0700 description: Modules: introduced js_shared_dict_zone directive. The directive allows to declare a dictionary that is shared among the working processes. A dictionary expects strings as keys. It stores string orby Dmitry Volyntsev - Nginx Development
details: https://hg.nginx.org/njs/rev/314a2a9fe9c7 branches: changeset: 2105:314a2a9fe9c7 user: Dmitry Volyntsev <xeioex@nginx.com> date: Fri May 05 20:08:55 2023 -0700 description: Refactored $262 object as external. This allows to decouple $262 object which is only needed for tests from the njs core. diffstat: auto/cc | 4 -- auto/helpby Dmitry Volyntsev - Nginx Development
Hello! On Tue, Apr 11, 2023 at 06:36:51PM +0400, Sergey Kandaurov wrote: > > > On 11 Apr 2023, at 18:29, Maxim Dounin <mdounin@mdounin.ru> wrote: > > > > Hello! > > > > On Tue, Apr 11, 2023 at 06:05:14PM +0400, Sergey Kandaurov wrote: > > > >>> On 11 Apr 2023, at 17:48, Maxim Dounin <mdounin@mdounin.ru> wrote: > >>>by Maxim Dounin - Nginx Development
> On 11 Apr 2023, at 18:29, Maxim Dounin <mdounin@mdounin.ru> wrote: > > Hello! > > On Tue, Apr 11, 2023 at 06:05:14PM +0400, Sergey Kandaurov wrote: > >>> On 11 Apr 2023, at 17:48, Maxim Dounin <mdounin@mdounin.ru> wrote: >>> >>> Hello! >>> >>> Below are patches for the nginx-1.24.0 release, and corresponding >>by Sergey Kandaurov - Nginx Development
Hello! On Tue, Apr 11, 2023 at 06:05:14PM +0400, Sergey Kandaurov wrote: > > On 11 Apr 2023, at 17:48, Maxim Dounin <mdounin@mdounin.ru> wrote: > > > > Hello! > > > > Below are patches for the nginx-1.24.0 release, and corresponding > > changes to the site. > > > > # HG changeset patch > > # User Maxim Dounin <mdounin@mdounin.ru&by Maxim Dounin - Nginx Development
Hello! On Wed, Mar 29, 2023 at 04:05:20AM +0400, Sergey Kandaurov wrote: > > > On 22 Mar 2023, at 05:02, Maxim Dounin <mdounin@mdounin.ru> wrote: > > > > Hello! > > > > On Mon, Mar 20, 2023 at 06:13:34PM +0400, Sergey Kandaurov wrote: > > > >> # HG changeset patch > >> # User Sergey Kandaurov <pluknet@nginx.com> > >&gby Maxim Dounin - Nginx Development
details: https://hg.nginx.org/nginx/rev/ac779115ed6e branches: changeset: 8155:ac779115ed6e user: Maxim Dounin <mdounin@mdounin.ru> date: Tue Mar 28 18:01:53 2023 +0300 description: nginx-1.23.4-RELEASE diffstat: docs/xml/nginx/changes.xml | 157 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 157 insertions(+), 0 deletions(-) diffs (167 lines): diff -r 09aby Konstantin Pavlov - Nginx Development
Hello! On Tue, Mar 28, 2023 at 06:39:41PM +0400, Sergey Kandaurov wrote: > > On 28 Mar 2023, at 18:14, Maxim Dounin <mdounin@mdounin.ru> wrote: > > > > Hello! > > > > Changes with nginx 1.23.4 28 Mar 2023 > > > > *) Change: now TLSv1.3 protocol is enabled by default. > > > > *) Change: noby Maxim Dounin - Nginx Development
> On 28 Mar 2023, at 18:14, Maxim Dounin <mdounin@mdounin.ru> wrote: > > Hello! > > Changes with nginx 1.23.4 28 Mar 2023 > > *) Change: now TLSv1.3 protocol is enabled by default. > > *) Change: now nginx issues a warning if protocol parameters of a > listening socket are redefined. > > *) Change:by Sergey Kandaurov - Nginx Development
Hello! Changes with nginx 1.23.4 28 Mar 2023 *) Change: now TLSv1.3 protocol is enabled by default. *) Change: now nginx issues a warning if protocol parameters of a listening socket are redefined. *) Change: now nginx closes connections with lingering if pipelining was used by the client. *) Feature: byte ranges support inby Maxim Dounin - Nginx Development
Hi Aleksei, Why not permanently assign the task of resolving a given upstream server group (all servers/peers within it) to a single worker? It seems that this approach would resolve the SRV issues, and remove the need for the shared queue of tasks. The load would still be spread evenly for the most realistic scenarios - which is where there are many upstream server groups of few servers, asby J Carter - Nginx Development
# HG changeset patch # User Aleksei Bavshin <a.bavshin@nginx.com> # Date 1670883784 28800 # Mon Dec 12 14:23:04 2022 -0800 # Node ID f8eb6b94d8f46008eb5f2f1dbc747750d5755506 # Parent cfae397f1ea87a35c41febab6162fe5142aa767b Upstream: allow any worker to resolve upstream servers. This change addresses one of the limitations of the current re-resolve code, dependency on the worker 0. Nby Aleksei Bavshin - Nginx Development
# HG changeset patch # User Ruslan Ermilov <ru@nginx.com> # Date 1392462754 -14400 # Sat Feb 15 15:12:34 2014 +0400 # Node ID b6e13aa0330c8434add55c88598480016b80fc0e # Parent 106328a70f4ecb32f828d33e5cd66c861e455f92 Upstream: re-resolvable servers. Specifying the upstream server by a hostname together with the "resolve" parameter will make the hostname to be periodically reby Aleksei Bavshin - Nginx Development
# HG changeset patch # User Roman Arutyunyan <arut@nginx.com> # Date 1423128416 -10800 # Thu Feb 05 12:26:56 2015 +0300 # Node ID 09954272153fb0ad62a80799a854a22fd9ebcdc9 # Parent b6e13aa0330c8434add55c88598480016b80fc0e Stream: re-resolvable servers. Co-authored-by: Ruslan Ermilov <ru@nginx.com> Co-authored-by: Sergey Kandaurov <pluknet@nginx.com> Co-authored-by: Vladimirby Aleksei Bavshin - Nginx Development
The series is a compilation of patches with the upstream re-resolve feature from the Nginx Plus. The original commits were rebased on top of the current OSS code, grouped by features introduced and squashed. Some formatting quirks and other minor oddities could be attributed to a conscious effort to reduce divergence with the source branch. The last couple of patches in the series is a new codeby Aleksei Bavshin - Nginx Development
Hello, Thanks again for your reply and thoughts. On 02/01/2023 23:47, Maxim Dounin wrote: > Hello! > > On Mon, Jan 02, 2023 at 06:21:03AM +0000, J Carter wrote: > >>> "The fundamental problem with dynamic rates in limit_req, which is >>> a leaky bucket limiter, is that the rate is a property which >>> applies to multiple requests as accumulated in theby J Carter - Nginx Development
Hello! On Mon, Jan 02, 2023 at 06:21:03AM +0000, J Carter wrote: > > "The fundamental problem with dynamic rates in limit_req, which is > > a leaky bucket limiter, is that the rate is a property which > > applies to multiple requests as accumulated in the bucket (and > > this is basically why it is configured in the limit_req_zone, and > > not in limit_req)by Maxim Dounin - Nginx Development
Hello, Happy new year to you too, and thank you for the detailed feedback. > "The fundamental problem with dynamic rates in limit_req, which is > a leaky bucket limiter, is that the rate is a property which > applies to multiple requests as accumulated in the bucket (and > this is basically why it is configured in the limit_req_zone, and > not in limit_req), while the dynby J Carter - Nginx Development
Hello! On Fri, Dec 30, 2022 at 10:23:12PM +0000, J Carter wrote: > Please find below a patch to enable dynamic rate limiting for > limit_req module. Thanks for the patch, and Happy New Year. The fundamental problem with dynamic rates in limit_req, which is a leaky bucket limiter, is that the rate is a property which applies to multiple requests as accumulated in the bucket (and thisby Maxim Dounin - Nginx Development
> On 15 Dec 2022, at 08:25, Maxim Dounin <mdounin@mdounin.ru> wrote: > > Hello! > > On Thu, Dec 15, 2022 at 06:13:41AM +0400, Sergey Kandaurov wrote: > >> # HG changeset patch >> # User Sergey Kandaurov <pluknet@nginx.com> >> # Date 1671069897 -14400 >> # Thu Dec 15 06:04:57 2022 +0400 >> # Node ID 8fbae86083f2efda8b4e079b3bda148dby Sergey Kandaurov - Nginx Development
Hello! On Thu, Dec 15, 2022 at 06:13:41AM +0400, Sergey Kandaurov wrote: > # HG changeset patch > # User Sergey Kandaurov <pluknet@nginx.com> > # Date 1671069897 -14400 > # Thu Dec 15 06:04:57 2022 +0400 > # Node ID 8fbae86083f2efda8b4e079b3bda148dec220323 > # Parent c38588d8376b77fc2f56f90ca16533031b235491 > SSL: SSL_CTX_set_tlsext_ticket_key_cb() deprecated inby Maxim Dounin - Nginx Development
# HG changeset patch # User Sergey Kandaurov <pluknet@nginx.com> # Date 1671069897 -14400 # Thu Dec 15 06:04:57 2022 +0400 # Node ID 8fbae86083f2efda8b4e079b3bda148dec220323 # Parent c38588d8376b77fc2f56f90ca16533031b235491 SSL: SSL_CTX_set_tlsext_ticket_key_cb() deprecated in OpenSSL 3.0. It becomes hidden when OpenSSL is built with OPENSSL_NO_DEPRECATED. While this is manageable forby Sergey Kandaurov - Nginx Development
details: https://hg.nginx.org/nginx/rev/aa901551a7eb branches: changeset: 8090:aa901551a7eb user: Maxim Dounin <mdounin@mdounin.ru> date: Wed Oct 19 10:56:20 2022 +0300 description: nginx-1.23.2-RELEASE diffstat: docs/xml/nginx/changes.xml | 114 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 114 insertions(+), 0 deletions(-) diffs (124 lines): diff -r 403by Konstantin Pavlov - Nginx Development
Hello! Changes with nginx 1.23.2 19 Oct 2022 *) Feature: the "$proxy_protocol_tlv_..." variables. *) Feature: TLS session tickets encryption keys are now automatically rotated when using shared memory in the "ssl_session_cache" directive. *) Change: the logging level of the "bad record type&quby Maxim Dounin - Nginx Development