upstream keepalive - call for testing

magicbear nginx-forum at nginx.us
Thu Sep 1 13:38:00 UTC 2011


I use at 2x100Mbps server (40% and 10% utilisation), when stable
enought, then I will continue to test at 1000Mbps server.

splitice Wrote:
-------------------------------------------------------
> I havent had any crashes on 3x10mbit servers (90%
> utilisation) or 2x100mbit
> servers (20% utilisation).
> 
> Seems very stable.
> 
> On Thu, Sep 1, 2011 at 6:04 AM, magicbear
> <nginx-forum at nginx.us> wrote:
> 
> > OK, It works for 3 days with 40 million request
> haven't coredump.
> > Thanks.
> >
> > Maxim Dounin Wrote:
> >
> --------------------------------------------------
> -----
> > > Hello!
> > >
> > > On Sun, Aug 28, 2011 at 01:07:25PM -0400,
> > > magicbear wrote:
> > >
> > > > Hello, tested for 2 days, the segmentation
> > > failure frequence is
> > > > decreased, but sometime still will dead.
> > > >
> > > > Here is the coredump information. It seems
> > > appear too at official
> > > > without patch version.
> > >
> > > [...]
> > >
> > > > (gdb) bt
> > > > #0  0x000000000045bd99 in
> > > ngx_http_upstream_handler (ev=0x7f99438901e8)
> > > > at src/http/ngx_http_upstream.c:921
> > > > #1  0x0000000000427839 in
> > > ngx_event_expire_timers () at
> > > > src/event/ngx_event_timer.c:149
> > >
> > > Could you please test if the attached patch
> fixes
> > > things for you?
> > >
> > > You may also grab it from here:
> > >
> http://mdounin.ru/files/patch-nginx-ssl-shutdown.t
> > > xt
> > >
> > > Maxim Dounin
> > > # HG changeset patch
> > > # User Maxim Dounin <mdounin at mdounin.ru>
> > > # Date 1314581235 -14400
> > > # Node ID
> 804454a04e22d32c064a3af8e7b24326c7fc2d63
> > > # Parent 
> 4b58ea791d9f09b0e2d019fcdea340c0a390af6c
> > > Handle quiet ssl shutdown.
> > >
> > > OpenSSL's SSL_shutdown() may still try to talk
> to
> > > network even if
> > >
> SSL_set_shutdown(SSL_RECEIVED_SHUTDOWN|SSL_SENT_SH
> > > UTDOWN) was used.
> > > This happens if there are some unsent alerts.
> > >
> > > Use SSL_set_quiet_shutdown() to actually
> shutdown
> > > quitely if we were asked
> > > to.  Note that SSL_set_shutdown() is still
> > > required as not setting it will
> > > invalidate session.
> > >
> > > diff --git a/src/event/ngx_event_openssl.c
> > > b/src/event/ngx_event_openssl.c
> > > --- a/src/event/ngx_event_openssl.c
> > > +++ b/src/event/ngx_event_openssl.c
> > > @@ -1205,6 +1205,7 @@
> > > ngx_ssl_shutdown(ngx_connection_t *c)
> > >
> > >      if (c->timedout) {
> > >          mode =
> > > SSL_RECEIVED_SHUTDOWN|SSL_SENT_SHUTDOWN;
> > > +
> > > SSL_set_quiet_shutdown(c->ssl->connection, 1);
> > >
> > >      } else {
> > >          mode =
> > > SSL_get_shutdown(c->ssl->connection);
> > > @@ -1216,6 +1217,10 @@
> > > ngx_ssl_shutdown(ngx_connection_t *c)
> > >          if (c->ssl->no_send_shutdown) {
> > >              mode |= SSL_SENT_SHUTDOWN;
> > >          }
> > > +
> > > +        if (c->ssl->no_wait_shutdown &&
> > > c->ssl->no_send_shutdown) {
> > > +
> > > SSL_set_quiet_shutdown(c->ssl->connection, 1);
> > > +        }
> > >      }
> > >
> > >      SSL_set_shutdown(c->ssl->connection,
> mode);
> > >
> _______________________________________________
> > > nginx mailing list
> > > nginx at nginx.org
> > >
> http://mailman.nginx.org/mailman/listinfo/nginx
> >
> > Posted at Nginx Forum:
> >
> http://forum.nginx.org/read.php?2,213207,214602#ms
> g-214602
> >
> > _______________________________________________
> > nginx mailing list
> > nginx at nginx.org
> > http://mailman.nginx.org/mailman/listinfo/nginx
> >
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx

Posted at Nginx Forum: http://forum.nginx.org/read.php?2,213207,214622#msg-214622



More information about the nginx mailing list