Timeout::timeout makes IO#close block if there's a #read present
----------------------------------------------------------------

                 Key: JRUBY-5503
                 URL: http://jira.codehaus.org/browse/JRUBY-5503
             Project: JRuby
          Issue Type: Bug
    Affects Versions: JRuby 1.6RC2, JRuby 1.5.6, JRuby 1.5.1
         Environment: Linux desk4 2.6.32-28-generic #55-Ubuntu SMP Mon Jan 10 
23:42:43 UTC 2011 x86_64 GNU/Linux
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) 64-Bit Server VM (build 17.1-b03, mixed mode)
            Reporter: Alex Young
            Assignee: Thomas E Enebo
         Attachments: test_pipe.rb

If one thread is blocked reading from one end of an IO.pipe, closing that same 
end from another thread causes the closing thread to block in the IO#close 
call, *if* the close happens inside a Timeout::timeout block. The attached test 
case shows the effect: in 1.8.7 and 1.9.2(-p136 and -p174), all three tests 
pass. On jruby-1.5.1, 1.5.6 and 1.6.0-RC2, #test_close_timeout_read (and only 
that test) blocks.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to