# HG changeset patch # User Sergey Kovalev <xray@randoman.ru> # Date 1478146426 -25200 # Thu Nov 03 11:13:46 2016 +0700 # Node ID 57a3036fd504a93dcbfd75a263a5d71523cdc379 # Parent cb4a4e9bba8ed7038dc423a9ad07139215db3363 Events: add ability to receive sockets by SCM_RIGHTS With this patch ngx_event_recvmsg() handler can process SCM_RIGHTS messages and treat received sockets as new accby RandoMan70 - Nginx Development
details: http://hg.nginx.org/nginx/rev/56fc55e32f23 branches: changeset: 6692:56fc55e32f23 user: Roman Arutyunyan <arut@nginx.com> date: Thu Sep 15 14:55:46 2016 +0300 description: Stream: filters. diffstat: auto/modules | 6 +- auto/sources | 1 + src/event/modules/ngx_iocp_module.c | 2 + src/evby Vladimir Homutov - Nginx Development
Use ngx_queue_t On Aug 23, 2016 09:41, "Raghavan, Gopal" <gopal.raghavan@here.com> wrote: > I can store as ngx_rbtree_t. > Any suggestion on how to store a struct with list of items, something like > this in shared memory? > > typedef struct { > ngx_rbtree_node_t node; > ngx_uint_t id; > ngx_list_tby wandenberg - Nginx Development
I can store as ngx_rbtree_t. Any suggestion on how to store a struct with list of items, something like this in shared memory? typedef struct { ngx_rbtree_node_t node; ngx_uint_t id; ngx_list_t *items; // list of items. But ngx_list_t is not possible since it needs ngx_pool_t. Any alternatives? } ngx_http_metadata_shm_block_t;by Raghavan, Gopal - Nginx Development
Hello! On Tue, Aug 23, 2016 at 02:51:54AM +0000, Raghavan, Gopal wrote: > Is it possible to use ngx_list_create and ngx_list_init with share memory? > List functions take ngx_pool_t, however shared memory zone provides ngx_slab_pool_t. > If yes, could you please share an example. No, it's not possible. -- Maxim Dounin http://nginx.org/ _______________________________________________by Maxim Dounin - Nginx Development
Is it possible to use ngx_list_create and ngx_list_init with share memory? List functions take ngx_pool_t, however shared memory zone provides ngx_slab_pool_t. If yes, could you please share an example. Thanks, -- Gopal _______________________________________________ nginx-devel mailing list nginx-devel@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-develby Raghavan, Gopal - Nginx Development
details: http://hg.nginx.org/njs/rev/016339472304 branches: changeset: 139:016339472304 user: Igor Sysoev <igor@sysoev.ru> date: Thu Aug 04 14:45:27 2016 +0300 description: nxt_str_t changes. diffstat: nginx/ngx_http_js_module.c | 73 ++++++++++++++++++++++-------------------- nginx/ngx_stream_js_module.c | 23 +++++++------ njs/njs_array.c | 4 +- njs/by Igor Sysoev - Nginx Development
# HG changeset patch # User Piotr Sikora <piotrsikora@google.com> # Date 1467064812 25200 # Mon Jun 27 15:00:12 2016 -0700 # Node ID 33d0b463aa3484428a30d838f6c58d8fe717746b # Parent d452cb27639f714bc43b7f3ede417e3e7f8efdd6 Configure: don't test alternatives if preferred feature is found. Signed-off-by: Piotr Sikora <piotrsikora@google.com> diff -r d452cb27639f -r 33d0b463aa34by Piotr Sikora - Nginx Development
# HG changeset patch # User Piotr Sikora <piotrsikora@google.com> # Date 1467064812 25200 # Mon Jun 27 15:00:12 2016 -0700 # Node ID 4dd0a17ea347f936d81236168bd33288e15fa782 # Parent d452cb27639f714bc43b7f3ede417e3e7f8efdd6 Configure: don't test alternatives if preferred feature is found. Signed-off-by: Piotr Sikora <piotrsikora@google.com> diff -r d452cb27639f -r 4dd0a17ea347by Piotr Sikora - Nginx Development
# HG changeset patch # User Piotr Sikora <piotrsikora@google.com> # Date 1467064812 25200 # Mon Jun 27 15:00:12 2016 -0700 # Node ID 9e0d65eda7fa016c0aebddf898d6f3f5834351f1 # Parent d452cb27639f714bc43b7f3ede417e3e7f8efdd6 Configure: don't test alternatives if preferred feature is found. Signed-off-by: Piotr Sikora <piotrsikora@google.com> diff -r d452cb27639f -r 9e0d65eda7faby Piotr Sikora - Nginx Development
# HG changeset patch # User Piotr Sikora <piotrsikora@google.com> # Date 1467064812 25200 # Mon Jun 27 15:00:12 2016 -0700 # Node ID d1974e5bf34e45539bd2a4b3d08924fd3ed01639 # Parent d452cb27639f714bc43b7f3ede417e3e7f8efdd6 Configure: don't test alternatives if preferred feature is found. While there, remove unused NGX_HAVE_READ_AHEAD. Signed-off-by: Piotr Sikora <piotrsikora@googby Piotr Sikora - Nginx Development
Hey Maxim, > There was at least one attempt to introduce a code using both > fcntl(F_READAHEAD) and posix_fadvise() depending on a > configuration. And I don't think this should be prevented at > configure stage. This code isn't part of current NGINX codebase, so it's a moot point. Once fallbacks to alternatives are added to the code (and I might add some myself), it's trivial to rby Piotr Sikora - Nginx Development
Hi Piotr, On Mon, Jun 27, 2016 at 07:55:17PM -0700, Piotr Sikora wrote: > # HG changeset patch > # User Piotr Sikora <piotrsikora@google.com> > # Date 1467064812 25200 > # Mon Jun 27 15:00:12 2016 -0700 > # Node ID e4375e338d9acf927ffdc4cd18c704bb7ea1fd4e > # Parent d452cb27639f714bc43b7f3ede417e3e7f8efdd6 > Configure: don't test alternatives if preferred featureby ru@nginx.com - Nginx Development
# HG changeset patch # User Piotr Sikora <piotrsikora@google.com> # Date 1467064812 25200 # Mon Jun 27 15:00:12 2016 -0700 # Node ID e4375e338d9acf927ffdc4cd18c704bb7ea1fd4e # Parent d452cb27639f714bc43b7f3ede417e3e7f8efdd6 Configure: don't test alternatives if preferred feature is found. Signed-off-by: Piotr Sikora <piotrsikora@google.com> diff -r d452cb27639f -r e4375e338d9aby Piotr Sikora - Nginx Development
OK, this clears up things. Thanks a lot! Thierry ________________________________________ De : nginx-devel de la part de Maxim Dounin Envoyé : mercredi 22 juin 2016 16:59 À : nginx-devel@nginx.org Objet : Re: PCRE compiled code lost at reload Hello! On Wed, Jun 22, 2016 at 02:49:36PM +0000, MAGNIEN, Thierry wrote: > I think I start understanding what's wrong. > > Let me explain wby MAGNIEN, Thierry - Nginx Development
Hello! On Wed, Jun 22, 2016 at 02:49:36PM +0000, MAGNIEN, Thierry wrote: > I think I start understanding what's wrong. > > Let me explain what I've done: > > I have a ngx_http_mymodule_data_t struct which include this: > ngx_pool_t *regex_pool; > > After initializing my data struct in shared memory, I do something like this: > my_data->regex_pool = ngx_create_pby Maxim Dounin - Nginx Development
Hi, I think I start understanding what's wrong. Let me explain what I've done: I have a ngx_http_mymodule_data_t struct which include this: ngx_pool_t *regex_pool; After initializing my data struct in shared memory, I do something like this: my_data->regex_pool = ngx_create_pool(REGEX_POOL_SIZE, cycle->log); Later, at regex compilation, I use this: my_regex.pool = ((ngx_http_mymoduleby MAGNIEN, Thierry - Nginx Development
Hello! On Wed, Jun 22, 2016 at 02:21:51PM +0000, MAGNIEN, Thierry wrote: > Thanks for your response. I already saw that, and that's why I > use a dedicated pool in shared memory for regex compilation. All > my ngx_regex_compile_t structs allocate from this unique pool. > Could pool in shared memory be automatically freed when > reloading ? And in that case, why would new workeby Maxim Dounin - Nginx Development
Hi Maxim, Thanks for your response. I already saw that, and that's why I use a dedicated pool in shared memory for regex compilation. All my ngx_regex_compile_t structs allocate from this unique pool. Could pool in shared memory be automatically freed when reloading ? And in that case, why would new workers get the correct value ? Is there a place where memory is duplicated between workers beforeby MAGNIEN, Thierry - Nginx Development
Hello! On Wed, Jun 22, 2016 at 09:31:12AM +0000, MAGNIEN, Thierry wrote: > I'm experiencing a strange behavior and I wonder if I'm missing > something obvious... > > I've developed a module and I use shared memory and slab > allocations to keep data unique across workers and have data > survive a reload. > > Everything works fine except one single thing: PCRE compileby Maxim Dounin - Nginx Development
Hi, My data are not located in a configuration file, all data can be updated in real-time without reloading. A single POST request triggers update of the information by the worker that handles the request and all workers can then use updated information simultaneously. There may be possibilities to bypass the issue but so far, I’d like to understand why only this specific piece of data isby MAGNIEN, Thierry - Nginx Development
A little bit off-topic, but which benefits you think, you will get using cross process compiled regexp? The compiling of regex is normally fast operation, that will be done only once (even jit), and can be done in each worker. What I cannot imagine, is the sharing of the result of regexp execution. But not the regexp self. Regards, sebres. 22.06.2016 11:31, MAGNIEN, Thierry wrote: > Hi, &gby Sergey Brester - Nginx Development
Hi, I'm experiencing a strange behavior and I wonder if I'm missing something obvious... I've developed a module and I use shared memory and slab allocations to keep data unique across workers and have data survive a reload. Everything works fine except one single thing: PCRE compiled codes (ngx_regex_compile_t->regex->code). To be more precise, at reload, in my module init function, I rby MAGNIEN, Thierry - Nginx Development
details: http://hg.nginx.org/njs/rev/c72fd0d1fabc branches: changeset: 113:c72fd0d1fabc user: Igor Sysoev <igor@sysoev.ru> date: Wed Jun 01 15:31:34 2016 +0300 description: Using nxt_regex interface in nJSVM. diffstat: Makefile | 2 + njs/njs_disassembler.c | 1 - njs/njs_lexer_keyword.c | 1 - njs/njs_regexp.c | 238 ++++++++++++++++++++-by Igor Sysoev - Nginx Development
details: http://hg.nginx.org/nginx/rev/f01ab2dbcfdc branches: changeset: 6480:f01ab2dbcfdc user: Sergey Kandaurov <pluknet@nginx.com> date: Thu Mar 31 02:33:57 2016 +0300 description: Fixed logging. diffstat: src/core/nginx.c | 2 +- src/core/ngx_cycle.c | 6 +++--- src/core/ngx_file.cby Sergey Kandaurov - Nginx Development
details: http://hg.nginx.org/njs/rev/6e70fe1e0a47 branches: changeset: 88:6e70fe1e0a47 user: Igor Sysoev <igor@sysoev.ru> date: Wed Mar 23 15:49:49 2016 +0300 description: User defined function prototype. diffstat: njs/njs_builtin.c | 18 ++++++-- njs/njs_function.c | 63 ++++++++++++++++++++++++++++- njs/njs_function.h | 3 + njs/njs_object.cby Igor Sysoev - Nginx Development
details: http://hg.nginx.org/nginx/rev/8f038068f4bc branches: changeset: 6436:8f038068f4bc user: Roman Arutyunyan <arut@nginx.com> date: Wed Jan 20 19:52:12 2016 +0300 description: Stream: UDP proxy. diffstat: auto/options | 4 +- auto/sources | 1 + auto/unix | 39 +++ src/core/ngx_connectionby Roman Arutyunyan - Nginx Development
Hi, I am doing ssl session caching using the NGINX shared memory cache and getting high response times in load testing. Test setup: clients -------> NGINX --------> server Client sends around 200 Requests/sec and 50% of requests reuses ssl session. NGINX version is 1.0.10 and OpenSSL version used is OpenSSL 1.0.1e-fips 11 Feb 2013. Test Results: Test shows that the connect time increaby Sreekanth M - Nginx Development
Hello! On Mon, Sep 07, 2015 at 10:29:42PM +0300, Gena Makhomed wrote: > On 07.09.2015 19:58, Maxim Dounin wrote: > > >>>Also, it's important to understand that, while collision attacks > >>>now exists, it doesn't really make MD5 bad for various > >>>non-security uses. > >> > >>nginx cache is security use too. > >> > >>by Maxim Dounin - Nginx Development
On 07.09.2015 19:58, Maxim Dounin wrote: >>> Also, it's important to understand that, while collision attacks >>> now exists, it doesn't really make MD5 bad for various >>> non-security uses. >> >> nginx cache is security use too. >> >> If user configure common shared cache for all virtual servers, >> and config have two servers: first, proby Gena Makhomed - Nginx Development