From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: poffice@blade.nagaokaut.ac.jp Delivered-To: poffice@blade.nagaokaut.ac.jp Received: from kankan.nagaokaut.ac.jp (kankan.nagaokaut.ac.jp [133.44.2.24]) by blade.nagaokaut.ac.jp (Postfix) with ESMTP id C373F17D0893 for ; Mon, 24 Jun 2013 21:16:12 +0900 (JST) Received: from funfun.nagaokaut.ac.jp (funfun.nagaokaut.ac.jp [133.44.2.201]) by kankan.nagaokaut.ac.jp (Postfix) with ESMTP id C1708EA67F2 for ; Mon, 24 Jun 2013 20:49:43 +0900 (JST) Received: from funfun.nagaokaut.ac.jp (localhost.nagaokaut.ac.jp [127.0.0.1]) by funfun.nagaokaut.ac.jp (Postfix) with ESMTP id 0B6AE97A82C for ; Mon, 24 Jun 2013 20:49:44 +0900 (JST) X-Virus-Scanned: amavisd-new at nagaokaut.ac.jp Received: from funfun.nagaokaut.ac.jp ([127.0.0.1]) by funfun.nagaokaut.ac.jp (funfun.nagaokaut.ac.jp [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 4fj04jpdrgEN for ; Mon, 24 Jun 2013 20:49:43 +0900 (JST) Received: from voscc.nagaokaut.ac.jp (voscc.nagaokaut.ac.jp [133.44.1.100]) by funfun.nagaokaut.ac.jp (Postfix) with ESMTP id DD35A97A827 for ; Mon, 24 Jun 2013 20:49:43 +0900 (JST) Received: from carbon.ruby-lang.org (carbon.ruby-lang.org [221.186.184.68]) by voscc.nagaokaut.ac.jp (Postfix) with ESMTP id 4F77F95241A for ; Mon, 24 Jun 2013 20:49:40 +0900 (JST) Received: from beryllium.ruby-lang.org (beryllium.ruby-lang.org [127.0.0.1]) by carbon.ruby-lang.org (Postfix) with ESMTP id 7609C3C21EB5E; Mon, 24 Jun 2013 20:49:39 +0900 (JST) Received: from fluorine.ruby-lang.org (www.rubyist.net [210.251.121.216]) by carbon.ruby-lang.org (Postfix) with ESMTP id 214BC3C21F13F for ; Mon, 24 Jun 2013 20:49:39 +0900 (JST) Received: from ruby-lang.org (localhost [127.0.0.1]) by fluorine.ruby-lang.org (Postfix) with ESMTP id 018803F8CE for ; Mon, 24 Jun 2013 20:49:38 +0900 (JST) Delivered-To: ruby-core@ruby-lang.org Date: Mon, 24 Jun 2013 20:49:39 +0900 Posted: Mon, 24 Jun 2013 20:49:38 +0900 From: "vo.x (Vit Ondruch)" Reply-To: ruby-core@ruby-lang.org Subject: [ruby-core:55631] [ruby-trunk - Bug #7311] DRb test suite fails when hostname cannot be reached To: ruby-core@ruby-lang.org Message-Id: References: X-ML-Name: ruby-core X-Mail-Count: 55631 X-MLServer: fml [fml 4.0.3 release (20011202/4.0.3)]; post only (only members can post) X-ML-Info: If you have a question, send e-mail with the body "help" (without quotes) to the address ruby-core-ctl@ruby-lang.org; help= X-Mailer: Redmine X-Redmine-Issue-Author: vo.x X-Redmine-Issue-Assignee: seki X-Auto-Response-Suppress: OOF X-Redmine-Issue-Id: 7311 X-Redmine-Mailinglistintegration-Message-Ids: 29042 X-Redmine-Project: ruby-trunk Auto-Submitted: auto-generated X-Redmine-Site: Ruby Issue Tracking System X-Redmine-Host: bugs.ruby-lang.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Precedence: bulk List-Id: ruby-core.ruby-lang.org List-Software: fml [fml 4.0.3 release (20011202/4.0.3)] List-Post: List-Owner: List-Help: List-Unsubscribe: Issue #7311 has been updated by vo.x (Vit Ondruch). Could somebody please review and apply the patches? They are just a few lines of code. Thanks ---------------------------------------- Bug #7311: DRb test suite fails when hostname cannot be reached https://bugs.ruby-lang.org/issues/7311#change-40117 Author: vo.x (Vit Ondruch) Status: Assigned Priority: Normal Assignee: seki (Masatoshi Seki) Category: Target version: next minor ruby -v: ruby 2.0.0dev (2012-11-07 trunk 37538) [x86_64-linux] Backport: =begin I have set following hostname: $ hostname dhcp-25-70 However, it cannot be reached: $ ping `hostname` PING dhcp-25-70 (10.34.25.70) 56(84) bytes of data. From dhcp-25-1 (10.34.25.1) icmp_seq=1 Destination Host Unreachable From dhcp-25-1 (10.34.25.1) icmp_seq=2 Destination Host Unreachable From dhcp-25-1 (10.34.25.1) icmp_seq=3 Destination Host Unreachable From dhcp-25-1 (10.34.25.1) icmp_seq=4 Destination Host Unreachable This causes that the DRb test suite fails: TestDRbAry#test_01 = 3.16 s = E TestDRbAry#test_02_collect = 3.01 s = E TestDRbAry#test_03_redo = 3.01 s = E TestDRbAry#test_05_break = 3.01 s = E TestDRbAry#test_06_next = 3.01 s = E TestDRbAry#test_07_break_18 = 3.01 s = E TestDRbCore#test_00_DRbObject = 0.15 s = . TestDRbCore#test_01 = 2.85 s = E TestDRbCore#test_01_02_loop = 3.00 s = E TestDRbCore#test_02_unknown = 3.01 s = F TestDRbCore#test_03 = 0.16 s = . TestDRbCore#test_04 = 0.16 s = . TestDRbCore#test_05_eq = 0.15 s = . TestDRbCore#test_06_timeout = 0.36 s = . TestDRbCore#test_07_public_private_protected_missing = 0.16 s = . TestDRbCore#test_08_here = 0.16 s = . TestDRbCore#test_09_option = 0.16 s = . TestDRbCore#test_10_yield = 1.70 s = E TestDRbCore#test_10_yield_undumped = 3.17 s = E TestDRbCore#test_11_remote_no_method_error = 0.16 s = . TestDRbLarge#test_01_large_ary = 0.05 s = . TestDRbLarge#test_02_large_ary = 0.06 s = . TestDRbLarge#test_03_large_ary = 2.63 s = E TestDRbLarge#test_04_many_arg = 0.05 s = . TestDRbLarge#test_05_too_large_ary = 0.07 s = . TestDRbMServer#test_01 = 2.88 s = E TestDRbRuby18Yield#test_01_one = 0.00 s = . TestDRbRuby18Yield#test_02_two = 0.00 s = . TestDRbRuby18Yield#test_03_many = 0.00 s = . TestDRbRuby18Yield#test_04_many_to_one = 0.00 s = . TestDRbRuby18Yield#test_05_array_subclass = 0.00 s = . TestDRbRuby18Yield#test_06_taint = 0.00 s = . TestDRbRubyYield#test_01_one = 0.00 s = . TestDRbRubyYield#test_02_two = 0.00 s = . TestDRbRubyYield#test_03_many = 0.00 s = . TestDRbRubyYield#test_04_many_to_one = 0.00 s = . TestDRbRubyYield#test_05_array_subclass = 0.00 s = . TestDRbRubyYield#test_06_taint = 0.00 s = . TestDRbSSLAry#test_01 = 3.09 s = E TestDRbSSLAry#test_02_collect = 3.01 s = E TestDRbSSLAry#test_03_redo = 3.01 s = E TestDRbSSLAry#test_05_break = 3.01 s = E TestDRbSSLAry#test_06_next = 3.01 s = E TestDRbSSLAry#test_07_break_18 = 3.01 s = E TestDRbSSLCore#test_00_DRbObject = 0.20 s = . TestDRbSSLCore#test_01 = 2.82 s = E TestDRbSSLCore#test_01_02_loop = 0.22 s = . TestDRbSSLCore#test_02_unknown = 0.20 s = . TestDRbSSLCore#test_03 = 0.24 s = . TestDRbSSLCore#test_04 = 0.21 s = . TestDRbSSLCore#test_05_eq = 0.23 s = . TestDRbSSLCore#test_06_timeout = 0.44 s = . TestDRbSSLCore#test_07_public_private_protected_missing = 0.29 s = . TestDRbSSLCore#test_08_here = 0.22 s = . TestDRbSSLCore#test_09_option = 0.21 s = . TestDRbSSLCore#test_10_yield = 0.75 s = E TestDRbSSLCore#test_10_yield_undumped = 3.22 s = E TestDRbSSLCore#test_11_remote_no_method_error = 0.24 s = . TestDRbSafe1#test_01 = 0.15 s = . TestDRbSafe1#test_02_collect = 2.60 s = E TestDRbSafe1#test_03_redo = 3.01 s = E TestDRbSafe1#test_05_break = 3.00 s = E TestDRbSafe1#test_06_next = 3.01 s = E TestDRbSafe1#test_07_break_18 = 3.01 s = E TestDRbUNIXAry#test_01 = 0.17 s = . TestDRbUNIXAry#test_02_collect = 2.84 s = E TestDRbUNIXAry#test_03_redo = 3.01 s = E TestDRbUNIXAry#test_05_break = 3.01 s = E TestDRbUNIXAry#test_06_next = 3.01 s = E TestDRbUNIXAry#test_07_break_18 = 3.01 s = E TestDRbUNIXCore#test_00_DRbObject = 0.16 s = . TestDRbUNIXCore#test_01 = 2.84 s = E TestDRbUNIXCore#test_01_02_loop = 0.17 s = . TestDRbUNIXCore#test_02_unknown = 0.16 s = . TestDRbUNIXCore#test_03 = 0.17 s = . TestDRbUNIXCore#test_04 = 0.16 s = . TestDRbUNIXCore#test_05_eq = 0.16 s = . TestDRbUNIXCore#test_06_timeout = 0.37 s = . TestDRbUNIXCore#test_07_public_private_protected_missing = 0.17 s = . TestDRbUNIXCore#test_08_here = 0.17 s = . TestDRbUNIXCore#test_09_option = 0.17 s = . TestDRbUNIXCore#test_10_yield = 1.29 s = E TestDRbUNIXCore#test_10_yield_undumped = 3.17 s = E TestDRbUNIXCore#test_11_remote_no_method_error = 0.17 s = . TestDRbYield#test_01_one = 2.73 s = E TestDRbYield#test_02_two = 3.01 s = E TestDRbYield#test_03_many = 3.01 s = E TestDRbYield#test_04_many_to_one = 3.01 s = E TestDRbYield#test_05_array_subclass = 3.01 s = E TestDRbYield#test_06_taint = 3.01 s = E So there are two possible ways how to fix this issue. (1) Enforce usage of localhost in test suite (0001-Enforce-localhost-for-DRb-tests.patch). Unfortunately it appears it does not solve my issues completely under some (not so clear) circumstances. (2) Detect if hostname is associated with some IP address of my computer, otherwise fallback to localhost (0001-Fallback-to-localhost-if-hostname-is-not-associated-.patch). This resolves my issue completely. BTW this test error later causes deadlock in TestProcess test suite [1], which is nasty :/ [1] https://github.com/ruby/ruby/blob/trunk/test/ruby/test_process.rb#L12 =end -- http://bugs.ruby-lang.org/