[Debian-med-packaging] Bug#927239: pbcopper: FTBFS randomly (failing tests)
Santiago Vila
sanvila at debian.org
Tue Apr 16 19:18:14 BST 2019
Package: src:pbcopper
Version: 0.4.1+dfsg-2
Severity: important
Tags: ftbfs patch
Dear maintainer:
I tried to build this package in buster but it failed:
--------------------------------------------------------------------------------
[...]
debian/rules build-arch
dh build-arch --builddirectory=build
dh_update_autotools_config -a -O--builddirectory=build
dh_autoreconf -a -O--builddirectory=build
dh_auto_configure -a -O--builddirectory=build
cd build && cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=None -DCMAKE_INSTALL_SYSCONFDIR=/etc -DCMAKE_INSTALL_LOCALSTATEDIR=/var -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON -DCMAKE_INSTALL_RUNSTATEDIR=/run "-GUnix Makefiles" -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_LIBDIR=lib/x86_64-linux-gnu ..
-- The CXX compiler identification is GNU 8.3.0
-- The C compiler identification is GNU 8.3.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
[... snipped ...]
1: [ RUN ] Data_RSReadName.constructed_from_name_parts_prints_expected_value_to_output_operator
1: [ OK ] Data_RSReadName.constructed_from_name_parts_prints_expected_value_to_output_operator (0 ms)
1: [ RUN ] Data_RSReadName.constructed_from_ccs_name_parts_prints_expected_value_to_output_operator
1: [ OK ] Data_RSReadName.constructed_from_ccs_name_parts_prints_expected_value_to_output_operator (0 ms)
1: [ RUN ] Data_RSReadName.constructed_properly_from_input_operator
1: [ OK ] Data_RSReadName.constructed_properly_from_input_operator (0 ms)
1: [ RUN ] Data_RSReadName.ccs_constructed_properly_from_input_operator
1: [ OK ] Data_RSReadName.ccs_constructed_properly_from_input_operator (0 ms)
1: [----------] 11 tests from Data_RSReadName (0 ms total)
1:
1: [----------] 1 test from JSON_Json
1: [ RUN ] JSON_Json.default_constructed_object_is_null
1: [ OK ] JSON_Json.default_constructed_object_is_null (0 ms)
1: [----------] 1 test from JSON_Json (0 ms total)
1:
1: [----------] 2 tests from Logging_Logger
1: [ RUN ] Logging_Logger.info_message_logged_to_stream
1: [ OK ] Logging_Logger.info_message_logged_to_stream (14 ms)
1: [ RUN ] Logging_Logger.custom_logging_sinks_receive_expected_messages
1: [ OK ] Logging_Logger.custom_logging_sinks_receive_expected_messages (0 ms)
1: [----------] 2 tests from Logging_Logger (14 ms total)
1:
1: [----------] 1 test from Parallel_WorkQueue
1: [ RUN ] Parallel_WorkQueue.strings
1: [ OK ] Parallel_WorkQueue.strings (299 ms)
1: [----------] 1 test from Parallel_WorkQueue (299 ms total)
1:
1: [----------] 11 tests from QGram_Index
1: [ RUN ] QGram_Index.shape_throws_on_invalid_qgram_sizes
1: [ OK ] QGram_Index.shape_throws_on_invalid_qgram_sizes (0 ms)
1: [ RUN ] QGram_Index.shape_hash_factors
1: [ OK ] QGram_Index.shape_hash_factors (0 ms)
1: [ RUN ] QGram_Index.shape_hashing
1: [ OK ] QGram_Index.shape_hashing (0 ms)
1: [ RUN ] QGram_Index.homopolymer_hasher
1: [ OK ] QGram_Index.homopolymer_hasher (0 ms)
1: [ RUN ] QGram_Index.shape_hash_iteration
1: [ OK ] QGram_Index.shape_hash_iteration (0 ms)
1: [ RUN ] QGram_Index.index_construct
1: [ OK ] QGram_Index.index_construct (0 ms)
1: [ RUN ] QGram_Index.index_copy
1: [ OK ] QGram_Index.index_copy (0 ms)
1: [ RUN ] QGram_Index.index_hits_INTERNAL_from_shape_short_seq
1: [ OK ] QGram_Index.index_hits_INTERNAL_from_shape_short_seq (0 ms)
1: [ RUN ] QGram_Index.index_hits_INTERNAL_from_shape_longer_seq
1: [ OK ] QGram_Index.index_hits_INTERNAL_from_shape_longer_seq (0 ms)
1: [ RUN ] QGram_Index.index_hits_PUBLIC_API_from_seq
1: [ OK ] QGram_Index.index_hits_PUBLIC_API_from_seq (0 ms)
1: [ RUN ] QGram_Index.index_hits_PUBLIC_API_empty_hits_result_when_query_seq_is_too_short
1: [ OK ] QGram_Index.index_hits_PUBLIC_API_empty_hits_result_when_query_seq_is_too_short (0 ms)
1: [----------] 11 tests from QGram_Index (4 ms total)
1:
1: [----------] 13 tests from Stream_Stream
1: [ RUN ] Stream_Stream.input_to_console
1: [ OK ] Stream_Stream.input_to_console (0 ms)
1: [ RUN ] Stream_Stream.char_input_to_all_caps
1: [ OK ] Stream_Stream.char_input_to_all_caps (0 ms)
1: [ RUN ] Stream_Stream.stringlist_to_chars
1: [ OK ] Stream_Stream.stringlist_to_chars (0 ms)
1: [ RUN ] Stream_Stream.char_input_split_into_words_and_printed_to_console
1: [ OK ] Stream_Stream.char_input_split_into_words_and_printed_to_console (0 ms)
1: [ RUN ] Stream_Stream.newlined_input_printed_to_console
1: [ OK ] Stream_Stream.newlined_input_printed_to_console (0 ms)
1: [ RUN ] Stream_Stream.composing_transform_chains
1: [ OK ] Stream_Stream.composing_transform_chains (0 ms)
1: [ RUN ] Stream_Stream.composing_named_transform_chains
1: [ OK ] Stream_Stream.composing_named_transform_chains (0 ms)
1: [ RUN ] Stream_Stream.arithmetic_stream_to_console
1: [ OK ] Stream_Stream.arithmetic_stream_to_console (0 ms)
1: [ RUN ] Stream_Stream.arithmetic_transformed_stream_to_console
1: [ OK ] Stream_Stream.arithmetic_transformed_stream_to_console (0 ms)
1: [ RUN ] Stream_Stream.arithmetic_transformed_to_different_type_stream_to_console
1: [ OK ] Stream_Stream.arithmetic_transformed_to_different_type_stream_to_console (0 ms)
1: [ RUN ] Stream_Stream.append_text_to_arithmetic_stream
1: [ OK ] Stream_Stream.append_text_to_arithmetic_stream (0 ms)
1: [ RUN ] Stream_Stream.append_text_to_arithmetic_stream_then_modify
1: [ OK ] Stream_Stream.append_text_to_arithmetic_stream_then_modify (0 ms)
1: [ RUN ] Stream_Stream.stream_works_with_static_public_member_function
1: [ OK ] Stream_Stream.stream_works_with_static_public_member_function (0 ms)
1: [----------] 13 tests from Stream_Stream (4 ms total)
1:
1: [----------] 2 tests from Utility_CallbackTimer
1: [ RUN ] Utility_CallbackTimer.scheduled_callbacks_fired_as_expected
1: [ OK ] Utility_CallbackTimer.scheduled_callbacks_fired_as_expected (10 ms)
1: [ RUN ] Utility_CallbackTimer.canceled_callbacks_not_called
1: [ OK ] Utility_CallbackTimer.canceled_callbacks_not_called (5 ms)
1: [----------] 2 tests from Utility_CallbackTimer (15 ms total)
1:
1: [----------] 3 tests from Utility_FileUtils
1: [ RUN ] Utility_FileUtils.FileExists
1: [ OK ] Utility_FileUtils.FileExists (0 ms)
1: [ RUN ] Utility_FileUtils.FilePrefix
1: [ OK ] Utility_FileUtils.FilePrefix (0 ms)
1: [ RUN ] Utility_FileUtils.FileExtension
1: [ OK ] Utility_FileUtils.FileExtension (0 ms)
1: [----------] 3 tests from Utility_FileUtils (1 ms total)
1:
1: [----------] 4 tests from Utility_Stopwatch
1: [ RUN ] Utility_Stopwatch.determines_elapsed_time_in_milliseconds
1: [ OK ] Utility_Stopwatch.determines_elapsed_time_in_milliseconds (3 ms)
1: [ RUN ] Utility_Stopwatch.determines_elapsed_time_in_seconds
1: [ OK ] Utility_Stopwatch.determines_elapsed_time_in_seconds (3 ms)
1: [ RUN ] Utility_Stopwatch.determines_elapsed_time_in_user_precision
1: [ OK ] Utility_Stopwatch.determines_elapsed_time_in_user_precision (3 ms)
1: [ RUN ] Utility_Stopwatch.determines_elapsed_time_since_reset
1: /<<BUILDDIR>>/pbcopper-0.4.1+dfsg/tests/src/utility/test_Stopwatch.cpp:66: Failure
1: Expected: 3
1: To be equal to: elapsed
1: Which is: 4
1: [ FAILED ] Utility_Stopwatch.determines_elapsed_time_since_reset (8 ms)
1: [----------] 4 tests from Utility_Stopwatch (17 ms total)
1:
1: [----------] 1 test from Utility_SystemInfo
1: [ RUN ] Utility_SystemInfo.proper_byte_order_detected
1: [ OK ] Utility_SystemInfo.proper_byte_order_detected (0 ms)
1: [----------] 1 test from Utility_SystemInfo (0 ms total)
1:
1: [----------] Global test environment tear-down
1: [==========] 172 tests from 25 test cases ran. (393 ms total)
1: [ PASSED ] 171 tests.
1: [ FAILED ] 1 test, listed below:
1: [ FAILED ] Utility_Stopwatch.determines_elapsed_time_since_reset
1:
1: 1 FAILED TEST
1/1 Test #1: PbcopperUnitTests ................***Failed 0.40 sec
0% tests passed, 1 tests failed out of 1
Total Test time (real) = 0.41 sec
The following tests FAILED:
1 - PbcopperUnitTests (Failed)
Errors while running CTest
make[5]: *** [tests/CMakeFiles/check.dir/build.make:60: tests/CMakeFiles/check] Error 8
make[5]: Leaving directory '/<<BUILDDIR>>/pbcopper-0.4.1+dfsg/build'
make[4]: *** [CMakeFiles/Makefile2:272: tests/CMakeFiles/check.dir/all] Error 2
make[4]: Leaving directory '/<<BUILDDIR>>/pbcopper-0.4.1+dfsg/build'
make[3]: *** [CMakeFiles/Makefile2:279: tests/CMakeFiles/check.dir/rule] Error 2
make[3]: Leaving directory '/<<BUILDDIR>>/pbcopper-0.4.1+dfsg/build'
make[2]: *** [Makefile:171: check] Error 2
make[2]: Leaving directory '/<<BUILDDIR>>/pbcopper-0.4.1+dfsg/build'
make[1]: *** [debian/rules:15: override_dh_auto_test] Error 2
make[1]: Leaving directory '/<<BUILDDIR>>/pbcopper-0.4.1+dfsg'
make: *** [debian/rules:10: build-arch] Error 2
dpkg-buildpackage: error: debian/rules build-arch subprocess returned exit status 2
--------------------------------------------------------------------------------
This happens randomly, sometimes it happens, sometimes it does not, but it has also
happened here on hppa:
https://buildd.debian.org/status/fetch.php?pkg=pbcopper&arch=hppa&ver=0.4.1%2Bdfsg-2&stamp=1545468500&raw=0
Even if hppa is not a release architecture, I think this shows at
least that the problem is not architecture-specific (since I'm using
amd64).
I've put two of my build logs here:
https://people.debian.org/~sanvila/build-logs/pbcopper/
The patch below may help, but it's untested.
Maybe it would be better to disable each and every timing-based test
instead. Just because packages are "officially" built in buildd.debian.org
does not mean it is a good idea to "target" the specific (or even
approximate) CPU speed of buildd.debian.org for package building.
Thanks.
--- a/tests/src/utility/test_Stopwatch.cpp
+++ b/tests/src/utility/test_Stopwatch.cpp
@@ -56,12 +56,12 @@ TEST(Utility_Stopwatch, determines_elapsed_time_in_user_precision)
ASSERT_LE(elapsed, 30000);
}
-TEST(Utility_Stopwatch, determines_elapsed_time_since_reset)
-{
- Stopwatch s;
- std::this_thread::sleep_for(std::chrono::milliseconds(3));
- s.Reset();
- std::this_thread::sleep_for(std::chrono::milliseconds(3));
- auto elapsed = s.ElapsedMilliseconds();
- ASSERT_FLOAT_EQ(3, elapsed);
-}
+// TEST(Utility_Stopwatch, determines_elapsed_time_since_reset)
+// {
+// Stopwatch s;
+// std::this_thread::sleep_for(std::chrono::milliseconds(3));
+// s.Reset();
+// std::this_thread::sleep_for(std::chrono::milliseconds(3));
+// auto elapsed = s.ElapsedMilliseconds();
+// ASSERT_FLOAT_EQ(3, elapsed);
+// }
More information about the Debian-med-packaging
mailing list