Package: src:process-cpp
Version: 3.0.2-1
Severity: serious
Tags: ftbfs trixie forky sid patch

Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.
Full build log is available here:

https://people.debian.org/~sanvila/build-logs/202610/

Note 1: The sample build log I'm providing happened on a system with 2 CPUs,
but, according to my tests, the probability of failure is a lot higher
on systems with 1 CPU, therefore I recommend GRUB_CMDLINE_LINUX="nr_cpus=1"
to reproduce. If this does not work I can offer a VM, as always.

Note 2: The failure seems to happen because of a race condition.
No claim of correctness, but the attached patch makes the package to build
ok again for me on the systems where it failed before.

Note 3: Trixie is also affected.


About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:process-cpp, so that this is still
visible in the BTS web page for this package.

Thanks.

--------------------------------------------------------------------------------
[...]
80% tests passed, 1 tests failed out of 5

Total Test time (real) =   0.54 sec

The following tests FAILED:
          1 - posix_process_test (Failed)
Errors while running CTest
make[1]: *** [Makefile:74: test] Error 8
make[1]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
dh_auto_test: error: cd obj-x86_64-linux-gnu && make -j2 test ARGS\+=--verbose 
ARGS\+=-j2 returned exit code 2
make: *** [debian/rules:8: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit 
status 2
--------------------------------------------------------------------------------
From: Santiago Vila <[email protected]>
Subject: Fix race condition
Bug-Debian: https://bugs.debian.org/NNNNNNN

--- a/tests/posix_process_test.cpp
+++ b/tests/posix_process_test.cpp
@@ -333,8 +333,8 @@
 
 TEST(ChildProcess, signalling_an_execd_child_makes_wait_for_return_correct_result)
 {
-    const std::string program{"/usr/bin/env"};
-    const std::vector<std::string> argv = {};
+    const std::string program{"/usr/bin/sleep"};
+    const std::vector<std::string> argv = {"10"};
     std::map<std::string, std::string> env;
     core::posix::this_process::env::for_each([&env](const std::string& key, const std::string& value)
     {

Reply via email to