Source: ruby-bdb Version: 0.6.6-1 Severity: serious Justification: FTBFS on amd64
Attempting to build this package on AMD64, I got the following results: --------------------8<--------------------8<-------------------- /usr/bin/install -c -m 0755 bdb.so ./.gem.20140313-22704-1exw4lh make[1]: Leaving directory `/home/gwolf/vcs/build-area/ruby-bdb-0.6.6/src' Running tests for ruby1.9.1 using debian/ruby-tests.rb... VERSION of BDB is Berkeley DB 5.3.28: (September 9, 2013) Run options: # Running tests: ............ Finished tests in 0.561218s, 21.3821 tests/s, 4124.9583 assertions/s. 12 tests, 2315 assertions, 0 failures, 0 errors, 0 skips VERSION of BDB is Berkeley DB 5.3.28: (September 9, 2013) Run options: # Running tests: ..................EEEE. Finished tests in 4.073800s, 5.6458 tests/s, 1880.0627 assertions/s. 1) Error: test_18_hash_delete(TestHash): RangeError: integer -1893907612379325628 too small to convert to `unsigned int' tests/hash.rb:387:in `initialize' tests/hash.rb:387:in `new' tests/hash.rb:387:in `open' tests/hash.rb:387:in `test_18_hash_delete' 2) Error: test_18_index(TestHash): BDB::Fatal: closed DB tests/hash.rb:400:in `index' tests/hash.rb:400:in `block in test_18_index' tests/hash.rb:397:in `times' tests/hash.rb:397:in `test_18_index' 3) Error: test_19_convert(TestHash): BDB::Fatal: closed DB tests/hash.rb:409:in `to_hash' tests/hash.rb:409:in `test_19_convert' 4) Error: test_20_blurb(TestHash): BDB::Fatal: closed DB tests/hash.rb:426:in `each' tests/hash.rb:426:in `test_20_blurb' 23 tests, 7659 assertions, 0 failures, 4 errors, 0 skips ERROR: Test "ruby1.9.1" failed. Exiting. dh_auto_install: dh_ruby --install /home/gwolf/vcs/build-area/ruby-bdb-0.6.6/debian/ruby-bdb returned exit code 1 make: *** [binary] Error 1 dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2 --------------------8<--------------------8<-------------------- Setting $VERBOSE=1 in tests/hash.rb yields the following results with Ruby 1.9.1: --------------------8<--------------------8<-------------------- $ ruby1.9.1 -e '$:<<"../../build-area/ruby-bdb-0.6.6/debian/ruby-bdb/usr/lib/ruby/vendor_ruby/1.9.1//x86_64-linux/"; require "./tests/hash"' VERSION of BDB is Berkeley DB 5.3.28: (September 9, 2013) Run options: # Running tests: ..................E/home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:400: warning: Hash#index is deprecated; use Hash#key EE. Finished tests in 3.898375s, 5.6434 tests/s, 1967.7432 assertions/s. 1) Error: test_18_hash_delete(TestHash): RangeError: integer -3058836581575265859 too small to convert to `unsigned int' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:387:in `initialize' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:387:in `new' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:387:in `open' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:387:in `test_18_hash_delete' 2) Error: test_18_index(TestHash): BDB::Fatal: closed DB /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:400:in `index' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:400:in `block in test_18_index' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:397:in `times' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:397:in `test_18_index' 3) Error: test_19_convert(TestHash): BDB::Fatal: closed DB /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:409:in `to_hash' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:409:in `test_19_convert' 22 tests, 7671 assertions, 0 failures, 3 errors, 0 skips --------------------8<--------------------8<-------------------- And with Ruby 2.0: --------------------8<--------------------8<-------------------- $ ruby2.0 -e '$:<<"../../build-area/ruby-bdb-0.6.6/debian/ruby-bdb/usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/2.0.0/"; require "./tests/hash"' VERSION of BDB is Berkeley DB 5.3.28: (September 9, 2013) Run options: # Running tests: [19/22] TestHash#test_18_hash_delete = 0.00 s 1) Error: test_18_hash_delete(TestHash): RangeError: integer 3180312599820893546 too big to convert to `unsigned int' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:387:in `initialize' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:387:in `new' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:387:in `open' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:387:in `test_18_hash_delete' /usr/lib/ruby/2.0.0/minitest/unit.rb:1301:in `run' /usr/lib/ruby/2.0.0/test/unit/testcase.rb:17:in `run' /usr/lib/ruby/2.0.0/minitest/unit.rb:919:in `block in _run_suite' /usr/lib/ruby/2.0.0/minitest/unit.rb:912:in `map' /usr/lib/ruby/2.0.0/minitest/unit.rb:912:in `_run_suite' /usr/lib/ruby/2.0.0/test/unit.rb:657:in `block in _run_suites' /usr/lib/ruby/2.0.0/test/unit.rb:655:in `each' /usr/lib/ruby/2.0.0/test/unit.rb:655:in `_run_suites' /usr/lib/ruby/2.0.0/minitest/unit.rb:867:in `_run_anything' /usr/lib/ruby/2.0.0/minitest/unit.rb:1060:in `run_tests' /usr/lib/ruby/2.0.0/minitest/unit.rb:1047:in `block in _run' /usr/lib/ruby/2.0.0/minitest/unit.rb:1046:in `each' /usr/lib/ruby/2.0.0/minitest/unit.rb:1046:in `_run' /usr/lib/ruby/2.0.0/minitest/unit.rb:1035:in `run' /usr/lib/ruby/2.0.0/test/unit.rb:21:in `run' /usr/lib/ruby/2.0.0/test/unit.rb:774:in `run' /usr/lib/ruby/2.0.0/test/unit.rb:366:in `block (2 levels) in autorun' /usr/lib/ruby/2.0.0/test/unit.rb:27:in `run_once' /usr/lib/ruby/2.0.0/test/unit.rb:365:in `block in autorun' [20/22] TestHash#test_18_index/home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:400: warning: Hash#index is deprecated; use Hash#key = 0.00 s 2) Error: test_18_index(TestHash): BDB::Fatal: closed DB /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:400:in `index' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:400:in `block in test_18_index' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:397:in `times' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:397:in `test_18_index' /usr/lib/ruby/2.0.0/minitest/unit.rb:1301:in `run' /usr/lib/ruby/2.0.0/test/unit/testcase.rb:17:in `run' /usr/lib/ruby/2.0.0/minitest/unit.rb:919:in `block in _run_suite' /usr/lib/ruby/2.0.0/minitest/unit.rb:912:in `map' /usr/lib/ruby/2.0.0/minitest/unit.rb:912:in `_run_suite' /usr/lib/ruby/2.0.0/test/unit.rb:657:in `block in _run_suites' /usr/lib/ruby/2.0.0/test/unit.rb:655:in `each' /usr/lib/ruby/2.0.0/test/unit.rb:655:in `_run_suites' /usr/lib/ruby/2.0.0/minitest/unit.rb:867:in `_run_anything' /usr/lib/ruby/2.0.0/minitest/unit.rb:1060:in `run_tests' /usr/lib/ruby/2.0.0/minitest/unit.rb:1047:in `block in _run' /usr/lib/ruby/2.0.0/minitest/unit.rb:1046:in `each' /usr/lib/ruby/2.0.0/minitest/unit.rb:1046:in `_run' /usr/lib/ruby/2.0.0/minitest/unit.rb:1035:in `run' /usr/lib/ruby/2.0.0/test/unit.rb:21:in `run' /usr/lib/ruby/2.0.0/test/unit.rb:774:in `run' /usr/lib/ruby/2.0.0/test/unit.rb:366:in `block (2 levels) in autorun' /usr/lib/ruby/2.0.0/test/unit.rb:27:in `run_once' /usr/lib/ruby/2.0.0/test/unit.rb:365:in `block in autorun' [21/22] TestHash#test_19_convert = 0.00 s 3) Error: test_19_convert(TestHash): BDB::Fatal: closed DB /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:409:in `to_hash' /home/gwolf/vcs/pkg-ruby-extras/ruby-bdb/tests/hash.rb:409:in `test_19_convert' /usr/lib/ruby/2.0.0/minitest/unit.rb:1301:in `run' /usr/lib/ruby/2.0.0/test/unit/testcase.rb:17:in `run' /usr/lib/ruby/2.0.0/minitest/unit.rb:919:in `block in _run_suite' /usr/lib/ruby/2.0.0/minitest/unit.rb:912:in `map' /usr/lib/ruby/2.0.0/minitest/unit.rb:912:in `_run_suite' /usr/lib/ruby/2.0.0/test/unit.rb:657:in `block in _run_suites' /usr/lib/ruby/2.0.0/test/unit.rb:655:in `each' /usr/lib/ruby/2.0.0/test/unit.rb:655:in `_run_suites' /usr/lib/ruby/2.0.0/minitest/unit.rb:867:in `_run_anything' /usr/lib/ruby/2.0.0/minitest/unit.rb:1060:in `run_tests' /usr/lib/ruby/2.0.0/minitest/unit.rb:1047:in `block in _run' /usr/lib/ruby/2.0.0/minitest/unit.rb:1046:in `each' /usr/lib/ruby/2.0.0/minitest/unit.rb:1046:in `_run' /usr/lib/ruby/2.0.0/minitest/unit.rb:1035:in `run' /usr/lib/ruby/2.0.0/test/unit.rb:21:in `run' /usr/lib/ruby/2.0.0/test/unit.rb:774:in `run' /usr/lib/ruby/2.0.0/test/unit.rb:366:in `block (2 levels) in autorun' /usr/lib/ruby/2.0.0/test/unit.rb:27:in `run_once' /usr/lib/ruby/2.0.0/test/unit.rb:365:in `block in autorun' Finished tests in 3.592808s, 6.1233 tests/s, 2132.8719 assertions/s. 22 tests, 7663 assertions, 0 failures, 3 errors, 0 skips ruby -v: ruby 2.0.0p384 (2014-01-12) [x86_64-linux-gnu] --------------------8<--------------------8<-------------------- Clearly, the offending code happens when opening the test database /tmp/aa (whether the name should be hardcoded is a matter for another bug report :-| ) Commenting out line 388 (which sets the 'set_h_hash' parameter to the BDB instance to «proc {|a| a.hash}») allows the tests to pass. According to the documentation, set_h_hash is meant to «specify a hashing function». ./examples/func.rb is the only other file to make use of this parameter, in exactly the same way as this test (and thus will likely fail). The most I can dig into the issue right now (as I'm tired and my brain does not want to parse C↔Ruby interaction) is that behaviour related to set_h_hash is found in lines 666-677 of src/common.h. -- System Information: Debian Release: jessie/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 3.13-1-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org