Issue #9525 has been updated by Akira Tanaka.


I guess getaddrinfo() doesn't block if an IP address is given.

At least, following command on Debian GNU/Linux (jessie) doesn't show anything.

    % strace -e socket ruby -rsocket -e 'Socket.pack_sockaddr_in(80, "192.168.1.1")'

It means the command create no socket and no communication to another site.


----------------------------------------
Bug #9525: Stuck with Socket.pack_sockaddr_in
https://bugs.ruby-lang.org/issues/9525#change-45220

* Author: Naotoshi Seo
* Status: Feedback
* Priority: Normal
* Assignee: 
* Category: 
* Target version: 
* ruby -v: 1.9.3p194
* Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
We met this trouble with Fluentd https://github.com/fluent/fluentd. 

Fluentd is sometimes stuck at `Socket.pack_sockaddr_in` line on shutdown. 
Here is the gist https://gist.github.com/sonots/9047653 to explain details. 





-- 
http://bugs.ruby-lang.org/