From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on dcvr.yhbt.net X-Spam-Level: X-Spam-ASN: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.0 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 7A5872070D; Fri, 8 Jul 2016 18:53:29 +0000 (UTC) Date: Fri, 8 Jul 2016 18:53:29 +0000 From: Eric Wong To: Lucas Nussbaum , 830353@bugs.debian.org Cc: kgio-public@bogomips.org Subject: Re: Bug#830353: ruby-kgio: FTBFS: ERROR: Test "ruby2.3" failed. Message-ID: <20160708185329.GA29627@dcvr.yhbt.net> References: <20160708092805.GA27159@xanadu.blop.info> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20160708092805.GA27159@xanadu.blop.info> List-Id: Lucas Nussbaum wrote: > The full build log is available from: > http://people.debian.org/~lucas/logs/2016/07/07/ruby-kgio_2.10.0-1_unstable_reb.normal.log > > A list of current common problems and possible solutions is available at > http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute! > > About the archive rebuild: The rebuild was done on EC2 VM instances from > Amazon Web Services, using a clean, minimal and up-to-date chroot. Every > failed build was retried once to eliminate random failures. Thanks for the report. Can you try the patch below? I'd be interested to know what non-standard sysctl knobs are set for kernel socket buffer sizes (in /proc/sys/net/{core,ipv4}/*mem*) You can also increase the 20M to 30M or whatever (otoh, that means using more memory during tests :<) I'm not comfortable calling setsockopt to set SO_{SND,RCV}BUF knobs since that can trigger VM deadlock bugs on some older kernels, too. Anyways, most of the kgio functionality is in Ruby 2.3 nowadays and kgio can probably go away when support for 2.2 can be dropped in gems. ----8<---- Subject: [PATCH] test: increase random blob size for giant socket buffers Socket buffers on some systems may be too big to trigger partial write/blocking behavior we need for our tests. Increase it to 20M for now and see if we can fix an FTBFS on larger machines: https://bugs.debian.org/830353 This should also speed up tests a little since urandom is slow and reading 10M from it in the first place was lazy. --- test/lib_read_write.rb | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/test/lib_read_write.rb b/test/lib_read_write.rb index 26e7aef..f5c5bf8 100644 --- a/test/lib_read_write.rb +++ b/test/lib_read_write.rb @@ -7,7 +7,12 @@ $-w = true require 'kgio' module LibReadWriteTest - RANDOM_BLOB = File.open("/dev/urandom") { |fp| fp.read(10 * 1024 * 1024) } + RANDOM_BLOB = File.open("/dev/urandom") do |fp| + nr = 31 + buf = fp.read(nr) + # get roughly a 20MB block of random data + (buf * (20 * 1024 * 1024 / nr)) + (buf * rand(123)) + end def teardown @rd.close if defined?(@rd) && ! @rd.closed? -- EW