[PATCH] support SO_REUSEPORT on new listeners (:reuseport)

Eric Wong normalperson at yhbt.net
Fri Oct 25 20:49:28 UTC 2013


Eric Wong <normalperson at yhbt.net> wrote:
> This allows users to start an independent instance of unicorn on
> a the same port as a running unicorn (as long as both instances
> use :reuseport).
> 
> ref: https://lwn.net/Articles/542629/
> ---

Also pushed out a couple of trivial IO_PURGATORY-related fixes to
support this.  We'll drop 1.8 support one of these days.

commit e025cd99beee500f175a3bcc302a1307b39ffb77
Author: Eric Wong <e at 80x24.org>
Date:   Fri Oct 25 19:45:15 2013 +0000

    avoid IO_PURGATORY on Ruby 1.9+
    
    Ruby 1.9 and later includes IO#autoclose=, so we can use it
    and prevent some dead IO objects from hanging around.

commit 7c125886b5862bf20711bae22e6697ad46141434
Author: Eric Wong <e at 80x24.org>
Date:   Fri Oct 25 19:27:05 2013 +0000

    support SO_REUSEPORT on new listeners (:reuseport)
    
    This allows users to start an independent instance of unicorn on
    a the same port as a running unicorn (as long as both instances
    use :reuseport).
    
    ref: https://lwn.net/Articles/542629/

commit 1dc099228ee0f59c13385a3e7346a2cb37d85153
Author: Eric Wong <e at 80x24.org>
Date:   Fri Oct 25 19:54:39 2013 +0000

    tests: limit oobgc check to accepted sockets
    
    Otherwise these tests fail if we start using IO#autoclose=true
    on Ruby 1.9 (and also if we use IPv6 sockets for tests).


More information about the mongrel-unicorn mailing list