test/drbでUNIXソケットが残る問題

$B31$H$$$$$^$9!#(B

$B<g$KCfED$5$s!J$H(Bakr$B$5$s!K$X!#(B

$BCfED$5$s$+$i(Btwitter$B$G65$($F$b$i$C$?!"(Btest/drb/$B$r<B9T$9$k$H(BUNIX$B%I%a%$%s$N(Bsocket$B$,(B
$TMPDIR$B$K;D$k7o$rD4$Y$^$7$?!#(B

DRbServer$B$N8e;OKvCf$K%W%m%;%9$,=*N;$7$F$7$^$&(B(kill$B$7$A$c$&(B)$B$N$,860x$_$?$$$G$9!#(B
$B<!$N$h$&$K$9$k$H$A$g$C$H$O%^%7$K$J$j$^$9$+!)(B

Index: drbtest.rb

— drbtest.rb (revision 36395)
+++ drbtest.rb (working copy)
@@ -73,6 +73,9 @@
def teardown
@ext.stop_service if defined?(@ext) && @ext
DRbService.manager.unregist(@service_name)

  • while (@there.inspect rescue nil)
  •  # nop
    
  • end
    signal = /mswin|mingw/ =~ RUBY_PLATFORM ? :INT : :TERM
    Thread.list.each {|th|
    if th.respond_to?(:pid) && th[:drb_service] == @service_name
    @@ -291,6 +294,9 @@
    def teardown
    @ext.stop_service if defined?(@ext) && @ext
    DRbService.manager.unregist(@service_name)
  • while (@there.inspect rescue nil)
  •  # nop
    
  • end
    signal = /mswin|mingw/ =~ RUBY_PLATFORM ? :INT : :TERM
    Thread.list.each {|th|
    if th.respond_to?(:pid) && th[:drb_service] == @service_name

$B$J$+$@$G$9!#(B

At Tue, 17 Jul 2012 04:15:34 +0900,
Masatoshi SEKI wrote in [ruby-dev:45962]:

$BCfED$5$s$+$i(Btwitter$B$G65$($F$b$i$C$?!"(Btest/drb/$B$r<B9T$9$k$H(BUNIX$B%I%a%$%s$N(Bsocket$B$,(B

$TMPDIR$B$K;D$k7o$rD4$Y$^$7$?!#(B

DRbServer$B$N8e;OKvCf$K%W%m%;%9$,=*N;$7$F$7$^$&(B(kill$B$7$A$c$&(B)$B$N$,860x$_$?$$$G$9!#(B

$B<!$N$h$&$K$9$k$H$A$g$C$H$O%^%7$K$J$j$^$9$+!)(B

$B;D$i$J$/$J$C$?$h$&$G$9!#(Bbusy
loop$B$J$N$,$d$d5$$K$J$i$J$/$b$J$$$G$9$,!D(B

On 2012/07/17, at 10:08, Nobuyoshi N. [email protected] wrote:

$B;D$i$J$/$J$C$?$h$&$G$9!#(Bbusy loop$B$J$N$,$d$d5$$K$J$i$J$/$b$J$$$G$9$,!D(B

$B$&$s!#LB$C$?$s$@$1$I!“(B
$B<j85$N4D6-$@$HB?$/$F0l2s$7$+2s$i$J$+$C$?$N$H!”(B
CPU$B;H$&=hM}$H$$$&$h$j%W%m%;%94VDL?.$P$C$+$j$J$N$G!"(B
$BFCJL$JBT$A9g$o$;$OITMW$8$c$J$$$+$HH=CG$7$^$7$?!#(B