Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1107044

Summary: ruby: FTBFS in rawhide
Product: [Fedora] Fedora Reporter: Dennis Gilmore <dennis>
Component: rubyAssignee: Vít Ondruch <vondruch>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: bkabrda, jskarvad, jstribny, lmacken, mmorsi, mtasaka, pbrobinson, s, tagoh, vanmeeuwen+fedora, vondruch, yselkowi
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ruby-2.1.2-23.fc21 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-06-27 12:58:20 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 245418, 1105908    
Attachments:
Description Flags
build.log
none
root.log
none
state.log
none
Enable tcl/tk 8.6 compilation none

Description Dennis Gilmore 2014-06-09 19:12:59 UTC
Your package ruby failed to build from source in current rawhide.

http://koji.fedoraproject.org/koji/taskinfo?taskID=6998619

For details on mass rebuild see https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild

Comment 1 Dennis Gilmore 2014-06-09 19:13:08 UTC
Created attachment 905921 [details]
build.log

Comment 2 Dennis Gilmore 2014-06-09 19:13:11 UTC
Created attachment 905922 [details]
root.log

Comment 3 Dennis Gilmore 2014-06-09 19:13:12 UTC
Created attachment 905923 [details]
state.log

Comment 4 Vít Ondruch 2014-06-10 14:07:46 UTC
Created attachment 907283 [details]
Enable tcl/tk 8.6 compilation

Comment 5 Vít Ondruch 2014-06-10 14:09:21 UTC
Although I can convince Ruby to compile against newer Tcl/Tk, the Tcl/Tk extension just segfaults. May by Tcl/Tk maintainer can have some idea ...

Comment 6 Jaroslav Škarvada 2014-06-13 13:46:43 UTC
(In reply to Vít Ondruch from comment #5)
> Although I can convince Ruby to compile against newer Tcl/Tk, the Tcl/Tk
> extension just segfaults. May by Tcl/Tk maintainer can have some idea ...

Actually there are two problems (at least :)

a) tcl/tk need to be build with threads
- this has been recently fixed in rawhide. By rebuilding against tcl-8.6.1-5 / tk-8.6.1-2 simple samples from the ruby sources stop segfaulting.

b) ruby needs to be patched not to segfault on reproducer from: https://bugs.ruby-lang.org/issues/8000
- I guess this is caused the way how ruby hacks the stack, there were some related changes in tcl/tk-8.6. I will try to look on it more deep.

Comment 7 Yaakov Selkowitz 2014-06-25 22:20:32 UTC
2.1.2-23 fixed i686 and x86_64, but not armv7hl:

http://koji.fedoraproject.org/koji/taskinfo?taskID=7074012

Error:
OpenSSL::TestPKeyRSA#test_sign_verify_memory_leak:
Timeout::Error: execution of assert_no_memory_leak expired
    /builddir/build/BUILD/ruby-2.1.2/test/openssl/test_pkey_rsa.rb:80:in `test_sign_verify_memory_leak'
15006 tests, 2462554 assertions, 0 failures, 1 errors, 31 skips

Comment 8 Vít Ondruch 2014-06-26 08:41:05 UTC
Seems to be related to this issue: https://bugs.ruby-lang.org/issues/9743

Comment 9 Yaakov Selkowitz 2014-06-26 20:41:40 UTC
(In reply to Vít Ondruch from comment #8)
> Seems to be related to this issue: https://bugs.ruby-lang.org/issues/9743

Possibly, but why would only armv7hl be affected?

Comment 10 Yaakov Selkowitz 2014-06-27 00:38:26 UTC
(In reply to Vít Ondruch from comment #8)
> Seems to be related to this issue: https://bugs.ruby-lang.org/issues/9743

Sorry, I misread this at first.  This commit is actually part of 2.1.2, and it's the new tests within which are timing out.  Given that the test uses 20,000 iterations, it's not really surprising that only armv7hl is affected, given that at least some of those units are much slower than an i686.

Cutting that down to 10,000 iterations was successful in a scratch build:

http://koji.fedoraproject.org/koji/taskinfo?taskID=7081290

Although I do wonder how reliable even that will be.

Comment 11 Vít Ondruch 2014-06-27 12:58:20 UTC
(In reply to Yaakov Selkowitz from comment #10)
> Cutting that down to 10,000 iterations was successful in a scratch build:

I guess this is good at least as a workaround, so I applied it and build Ruby. Will see what upstream thinks about it:

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

Thanks!