ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
From: v.ondruch@tiscali.cz
To: ruby-core@ruby-lang.org
Subject: [ruby-core:99250] [Ruby master Bug#16492] TestBugReporter#test_bug_reporter_add test failures
Date: Tue, 21 Jul 2020 12:32:46 +0000 (UTC)	[thread overview]
Message-ID: <redmine.journal-86633.20200721123246.703@ruby-lang.org> (raw)
In-Reply-To: redmine.issue-16492.20200109091741.703@ruby-lang.org

Issue #16492 has been updated by vo.x (Vit Ondruch).


So I did quite a lot of testing focusing especially on internals of `EnvUtils.invoke_ruby` and I am not sure if there is a fix. It seems that especially the s390x build cluster is sometimes under heavy load. I extended the timeout and so far the test was executed in the more then 56 seconds for the worst case. I am afraid that even 60 seconds timeout would not be enough in some case. 

Therefore I wonder if there is any other possible solution?

For example I have tried for the process to exit prior waiting for the threads to join, but I don't think I see any difference.

Now I am going to test with the disabled timeout error, because it seems to me that the output consumed from the stdout/stderr contains the expected content, just the threads/process does not exit in time.

Last option could be to repeat the test several times until it succeeds. It does not look that the worst cases happens one after another, although there might be periods of time when the situation is worse.

----------------------------------------
Bug #16492: TestBugReporter#test_bug_reporter_add test failures
https://bugs.ruby-lang.org/issues/16492#change-86633

* Author: vo.x (Vit Ondruch)
* Status: Open
* Priority: Normal
* ruby -v: ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [s390x-linux]
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN
----------------------------------------
Building Ruby packages on Fedora, in 90% of cases, I observe the following error on s390:

~~~
  1) Error:
TestBugReporter#test_bug_reporter_add:
Timeout::Error: execution of assert_in_out_err expired timeout (10 sec)
pid 2061293 killed by SIGKILL (signal 9)
| 
| -:1: [BUG] Segmentation fault at 0x001f73ed000003e8
| ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [s390x-linux]
| 
| -- Control frame information -----------------------------------------------
| c:0003 p:---- s:0012 e:000011 CFUNC  :kill
| c:0002 p:0021 s:0006 e:000005 EVAL   -:1 [FINISH]
| c:0001 p:0000 s:0003 E:000430 (none) [FINISH]
| 
| -- Ruby level backtrace information ----------------------------------------
| -:1:in `<main>'
| -:1:in `kill'
| 
| -- Other runtime information -----------------------------------------------
| 
| * Loaded script: -
| 
| * Loaded features:
| 
|     0 enumerator.so
|     1 thread.rb
|     2 rational.so
|     3 complex.so
|     4 ruby2_keywords.rb
|     5 /builddir/build/BUILD/ruby-2.7.0/.ext/s390x-linux/enc/encdb.so
|     6 /builddir/build/BUILD/ruby-2.7.0/.ext/s390x-linux/enc/trans/transdb.so
|     7 /builddir/build/BUILD/ruby-2.7.0/abrt.rb
|     8 /builddir/build/BUILD/ruby-2.7.0/.ext/s390x-linux/-test-/bug_reporter.so
| 
| * Process memory map:
| 
| 2aa27a00000-2aa27a01000 r-xp 00000000 fc:03 1845127                      /builddir/build/BUILD/ruby-2.7.0/ruby
| 2aa27a01000-2aa27a02000 r--p 00000000 fc:03 1845127                      /builddir/build/BUILD/ruby-2.7.0/ruby
| 2aa27a02000-2aa27a03000 rw-p 00001000 fc:03 1845127                      /builddir/build/BUILD/ruby-2.7.0/ruby
| 2aa28a7e000-2aa28bfe000 rw-p 00000000 00:00 0                            [heap]
| 3ff9ff80000-3ff9ff81000 r-xp 00000000 fc:03 1844756                      /builddir/build/BUILD/ruby-2.7.0/.ext/s390x-linux/-test-/bug_reporter.so
| 3ff9ff81000-3ff9ff82000 r--p 00000000 fc:03 1844756                      /builddir/build/BUILD/ruby-2.7.0/.ext/s390x-linux/-test-/bug_reporter.so
| 3ff9ff82000-3ff9ff83000 rw-p 00000000 00:00 0 
| 3ffa0000000-3ffa0002000 r-xp 00000000 fc:03 1844387                      /builddir/build/BUILD/ruby-2.7.0/.ext/s390x-linux/enc/trans/transdb.so
| 3ffa0002000-3ffa0003000 r--p 00001000 fc:03 1844387                      /builddir/build/BUILD/ruby-2.7.0/.ext/s390x-linux/enc/trans/transdb.so
| 3ffa0003000-3ffa0004000 rw-p 00000000 00:00 0 
| 3ffa0036000-3ffa0037000 ---p 00000000 00:00 0 
| 3ffa0037000-3ffa0078000 rw-p 00000000 00:00 0 
| 3ffa0078000-3ffa0079000 ---p 00000000 00:00 0 
| 3ffa0079000-3ffa00ba000 rw-p 00000000 00:00 0 
| 3ffa00ba000-3ffa00bb000 ---p 00000000 00:00 0 
| 3ffa00bb000-3ffa00fc000 rw-p 00000000 00:00 0 
| 3ffa00fc000-3ffa00fd000 ---p 00000000 00:00 0 
| 3ffa00fd000-3ffa013e000 rw-p 00000000 00:00 0 
| 3ffa013e000-3ffa013f000 ---p 00000000 00:00 0 
| 3ffa013f000-3ffa0180000 rw-p 00000000 00:00 0 
| 3ffa0180000-3ffa0181000 ---p 00000000 00:00 0 
| 3ffa0181000-3ffa01c2000 rw-p 00000000 00:00 0 
| 3ffa01c2000-3ffa01c3000 ---p 00000000 00:00 0 
| 3ffa01c3000-3ffa0204000 rw-p 00000000 00:00 0 
| 3ffa0204000-3ffa0205000 ---p 00000000 00:00 0 
| 3ffa0205000-3ffa0246000 rw-p 00000000 00:00 0 
| 3ffa0246000-3ffa0247000 ---p 00000000 00:00 0 
| 3ffa0247000-3ffa0288000 rw-p 00000000 00:00 0 
| 3ffa0288000-3ffa0289000 ---p 00000000 00:00 0 
| 3ffa0289000-3ffa02ca000 rw-p 00000000 00:00 0 
| 3ffa02ca000-3ffa02cb000 ---p 00000000 00:00 0 
| 3ffa02cb000-3ffa030c000 rw-p 00000000 00:00 0 
| 3ffa030c000-3ffa030d000 ---p 00000000 00:00 0 
| 3ffa030d000-3ffa034e000 rw-p 00000000 00:00 0 
| 3ffa034e000-3ffa034f000 ---p 00000000 00:00 0 
| 3ffa034f000-3ffa0390000 rw-p 00000000 00:00 0 
| 3ffa0390000-3ffa0391000 ---p 00000000 00:00 0 
| 3ffa0391000-3ffa03d2000 rw-p 00000000 00:00 0 
| 3ffa03d2000-3ffa03d3000 ---p 00000000 00:00 0 
| 3ffa03d3000-3ffa0414000 rw-p 00000000 00:00 0 
| 3ffa0414000-3ffa0415000 ---p 00000000 00:00 0 
| 3ffa0415000-3ffa0456000 rw-p 00000000 00:00 0 
| 3ffa0456000-3ffa0457000 ---p 00000000 00:00 0 
| 3ffa0457000-3ffa0498000 rw-p 00000000 00:00 0 
| 3ffa0498000-3ffa0499000 ---p 00000000 00:00 0 
| 3ffa0499000-3ffa04da000 rw-p 00000000 00:00 0 
| 3ffa04da000-3ffa04db000 ---p 00000000 00:00 0 
| 3ffa04db000-3ffa051c000 rw-p 00000000 00:00 0 
| 3ffa051c000-3ffa051d000 ---p 00000000 00:00 0 
| 3ffa051d000-3ffa055e000 rw-p 00000000 00:00 0 
| 3ffa055e000-3ffa055f000 ---p 00000000 00:00 0 
| 3ffa055f000-3ffa05a0000 rw-p 00000000 00:00 0 
| 3ffa05a0000-3ffa05a1000 ---p 00000000 00:00 0 
| 3ffa05a1000-3ffa05e2000 rw-p 00000000 00:00 0 
| 3ffa05e2000-3ffa05e3000 ---p 00000000 00:00 0 
| 3ffa05e3000-3ffa0624000 rw-p 00000000 00:00 0 
| 3ffa0624000-3ffa0625000 ---p 00000000 00:00 0 
| 3ffa0625000-3ffa0666000 rw-p 00000000 00:00 0 
| 3ffa0666000-3ffa0667000 ---p 00000000 00:00 0 
| 3ffa0667000-3ffa06a8000 rw-p 00000000 00:00 0 
| 3ffa06a8000-3ffa06a9000 ---p 00000000 00:00 0 
| 3ffa06a9000-3ffa06ea000 rw-p 00000000 00:00 0 
| 3ffa06ea000-3ffa06eb000 ---p 00000000 00:00 0 
| 3ffa06eb000-3ffa072c000 rw-p 00000000 00:00 0 
| 3ffa072c000-3ffa072d000 ---p 00000000 00:00 0 
| 3ffa072d000-3ffa076e000 rw-p 00000000 00:00 0 
| 3ffa076e000-3ffa076f000 ---p 00000000 00:00 0 
| 3ffa076f000-3ffa07b0000 rw-p 00000000 00:00 0 
| 3ffa07b0000-3ffa07b1000 ---p 00000000 00:00 0 
| 3ffa07b1000-3ffa07f2000 rw-p 00000000 00:00 0 
| 3ffa07f2000-3ffa07f3000 ---p 00000000 00:00 0 
| 3ffa07f3000-3ffa0834000 rw-p 00000000 00:00 0 
| 3ffa0834000-3ffa0835000 ---p 00000000 00:00 0 
| 3ffa0835000-3ffa2980000 rw-p 00000000 00:00 0 
| 3ffa2980000-3ffa2a17000 r-xp 00000000 fc:03 1813828                      /usr/lib64/libm-2.30.9000.so
| 3ffa2a17000-3ffa2a18000 r--p 00096000 fc:03 1813828                      /usr/lib64/libm-2.30.9000.so
| 3ffa2a18000-3ffa2a19000 rw-p 00097000 fc:03 1813828                      /usr/lib64/libm-2.30.9000.so
| 3ffa2a80000-3ffa2ab2000 r-xp 00000000 fc:03 1814596                      /usr/lib64/libcrypt.so.2.0.0
| 3ffa2ab2000-3ffa2ab3000 ---p 00032000 fc:03 1814596                      /usr/lib64/libcrypt.so.2.0.0
| 3ffa2ab3000-3ffa2ab4000 r--p 00032000 fc:03 1814596                      /usr/lib64/libcrypt.so.2.0.0
| 3ffa2ab4000-3ffa2abd000 rw-p 00000000 00:00 0 
| 3ffa2b00000-3ffa2b03000 r-xp 00000000 fc:03 1813826                      /usr/lib64/libdl-2.30.9000.so
| 3ffa2b03000-3ffa2b04000 r--p 00002000 fc:03 1813826                      /usr/lib64/libdl-2.30.9000.so
| 3ffa2b04000-3ffa2b05000 rw-p 00000000 00:00 0 
| 3ffa2b80000-3ffa2c05000 r-xp 00000000 fc:03 1814658                      /usr/lib64/libgmp.so.10.3.2
| 3ffa2c05000-3ffa2c07000 r--p 00084000 fc:03 1814658                      /usr/lib64/libgmp.so.10.3.2
| 3ffa2c07000-3ffa2c08000 rw-p 00086000 fc:03 1814658                      /usr/lib64/libgmp.so.10.3.2
| 3ffa2c80000-3ffa2c88000 r-xp 00000000 fc:03 1813840                      /usr/lib64/librt-2.30.9000.so
| 3ffa2c88000-3ffa2c89000 r--p 00007000 fc:03 1813840                      /usr/lib64/librt-2.30.9000.so
| 3ffa2c89000-3ffa2c8a000 rw-p 00008000 fc:03 1813840                      /usr/lib64/librt-2.30.9000.so
| 3ffa2d00000-3ffa2d1e000 r-xp 00000000 fc:03 1813836                      /usr/lib64/libpthread-2.30.9000.so
| 3ffa2d1e000-3ffa2d1f000 r--p 0001d000 fc:03 1813836                      /usr/lib64/libpthread-2.30.9000.so
| 3ffa2d1f000-3ffa2d20000 rw-p 0001e000 fc:03 1813836                      /usr/lib64/libpthread-2.30.9000.so
| 3ffa2d20000-3ffa2d24000 rw-p 00000000 00:00 0 
| 3ffa2d80000-3ffa2f1e000 r-xp 00000000 fc:03 1813824                      /usr/lib64/libc-2.30.9000.so
| 3ffa2f1e000-3ffa2f22000 r--p 0019d000 fc:03 1813824                      /usr/lib64/libc-2.30.9000.so
| 3ffa2f22000-3ffa2f25000 rw-p 001a1000 fc:03 1813824                      /usr/lib64/libc-2.30.9000.so
| 3ffa2f25000-3ffa2f28000 rw-p 00000000 00:00 0 
| 3ffa2f80000-3ffa2f82000 r-xp 00000000 fc:03 1844333                      /builddir/build/BUILD/ruby-2.7.0/.ext/s390x-linux/enc/encdb.so
| 3ffa2f82000-3ffa2f83000 r--p 00001000 fc:03 1844333                      /builddir/build/BUILD/ruby-2.7.0/.ext/s390x-linux/enc/encdb.so
| 3ffa2f83000-3ffa2f84000 rw-p 00000000 00:00 0 
| 3ffa3000000-3ffa336e000 r-xp 00000000 fc:03 1844256                      /builddir/build/BUILD/ruby-2.7.0/libruby.so.2.7.0
| 3ffa336e000-3ffa3377000 r--p 0036d000 fc:03 1844256                      /builddir/build/BUILD/ruby-2.7.0/libruby.so.2.7.0
| 3ffa3377000-3ffa3378000 rw-p 00376000 fc:03 1844256                      /builddir/build/BUILD/ruby-2.7.0/libruby.so.2.7.0
| 3ffa3378000-3ffa338f000 rw-p 00000000 00:00 0 
| 3ffa3400000-3ffa3426000 r-xp 00000000 fc:03 1813817                      /usr/lib64/ld-2.30.9000.so
| 3ffa3426000-3ffa3427000 r--p 00025000 fc:03 1813817                      /usr/lib64/ld-2.30.9000.so
| 3ffa3427000-3ffa3428000 rw-p 00026000 fc:03 1813817                      /usr/lib64/ld-2.30.9000.so
| 3ffa3428000-3ffa3429000 rw-p 00000000 00:00 0 
| 3ffa3476000-3ffa347e000 rw-p 00000000 00:00 0 
| 3ffa347e000-3ffa3480000 r-xp 00000000 00:00 0                            [vdso]
| 3ffc5301000-3ffc5b00000 rw-p 00000000 00:00 0                            [stack]
| 
| 
| Sample bug reporter: 12345
    /builddir/build/BUILD/ruby-2.7.0/test/-ext-/bug_reporter/test_bug_reporter.rb:22:in `test_bug_reporter_add'
Finished tests in 544.051367s, 38.5515 tests/s, 4998.1953 assertions/s.
20974 tests, 2719275 assertions, 0 failures, 1 errors, 68 skips
ruby -v: ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [s390x-linux]
~~~

Since the default timeout is 10s, I tried to increase the timeout to 30s via simple `sed -i '/assert_in_out_err/ s/)/, timeout: 30)/' test/-ext-/bug_reporter/test_bug_reporter.rb` and this seems to help to avoid this issue.

However, I am not really sure why s390x is so slow handling this test case :/



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

  parent reply	other threads:[~2020-07-21 12:33 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <redmine.issue-16492.20200109091741.703@ruby-lang.org>
2020-06-25 12:39 ` [ruby-core:98937] [Ruby master Bug#16492] TestBugReporter#test_bug_reporter_add test failures v.ondruch
2020-07-21 12:32 ` v.ondruch [this message]
2020-07-22 13:29 ` [ruby-core:99263] " v.ondruch
2020-07-22 13:33 ` [ruby-core:99264] " v.ondruch
2020-07-22 16:35 ` [ruby-core:99269] " v.ondruch
2020-07-23 15:02 ` [ruby-core:99298] " jaruga
2020-07-23 15:15 ` [ruby-core:99300] " jaruga
2020-07-23 19:22 ` [ruby-core:99304] " jaruga
2020-07-27 13:13 ` [ruby-core:99352] " v.ondruch
2021-04-06  8:24 ` [ruby-core:103251] " v.ondruch
2021-04-08 15:30 ` [ruby-core:103309] " mame
2021-04-09  6:17 ` [ruby-core:103332] " jaruga
2021-04-29 11:27 ` [ruby-core:103654] " jaruga
2021-08-09 10:53 ` [ruby-core:104842] " jaruga
2021-08-24 11:45 ` [ruby-core:105060] " jaruga (Jun Aruga)
2021-08-24 13:12 ` [ruby-core:105063] " xtkoba (Tee KOBAYASHI)
2023-08-23 23:35 ` [ruby-core:114474] " jeremyevans0 (Jeremy Evans) via ruby-core
2023-09-05 12:39 ` [ruby-core:114635] " vo.x (Vit Ondruch) via ruby-core

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.ruby-lang.org/en/community/mailing-lists/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=redmine.journal-86633.20200721123246.703@ruby-lang.org \
    --to=ruby-core@ruby-lang.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).