bloomberg-bde 3.98.0 non-determistic test failure

  • Open
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Maxim Cournoyer
Owner
unassigned
Submitted by
Maxim Cournoyer
Severity
normal
M
M
Maxim Cournoyer wrote on 21 Aug 2023 18:19
(name . bug-guix)(address . bug-guix@gnu.org)
87ttsscqrl.fsf@gmail.com
Hello,

Seen on Cuirass:

Toggle snippet (18 lines)
41%] Built target bslmf_ismemberpointer.t
[ 41%] Linking CXX executable bslmf_ismemberfunctionpointer.t
/gnu/store/ygab8v4ci9iklaykapq52bfsshpvi8pw-cmake-minimal-3.24.2/bin/cmake -E cmake_link_script CMakeFiles/bslmf_ismemberfunctionpointer.t.dir/link.txt --verbose=1
/gnu/store/5lqhcv91ijy82p92ac6g5xw48l0lwwz4-gcc-11.3.0/bin/c++ -O2 -g -DNDEBUG CMakeFiles/bslmf_ismemberfunctionpointer.t.dir/groups/bsl/bslmf/bslmf_ismemberfunctionpointer.t.cpp.o -o bslmf_ismemberfunctionpointer.t -Wl,-rpath,/tmp/guix-build-bloomberg-bde-3.98.0.0.drv-0/build libbslmf.a libbsla.a libbslscm.a libbsls.a -lrt libryu.so
make[3]: Leaving directory '/tmp/guix-build-bloomberg-bde-3.98.0.0.drv-0/build'
[ 41%] Built target bslmf_ismemberfunctionpointer.t
make[2]: Leaving directory '/tmp/guix-build-bloomberg-bde-3.98.0.0.drv-0/build'
make[1]: *** [CMakeFiles/Makefile2:40289: CMakeFiles/all.t.dir/rule] Error 2
make[1]: Leaving directory '/tmp/guix-build-bloomberg-bde-3.98.0.0.drv-0/build'
make: *** [Makefile:14690: all.t] Error 2
error: in phase 'build-tests': uncaught exception:
%exception #<&invoke-error program: "make" arguments: ("all.t" "-j" "16") exit-status: 2 term-signal: #f stop-signal: #f>
phase `build-tests' failed after 705.6 seconds
command "make" "all.t" "-j" "16" failed with status 2
builder for `/gnu/store/sy9glkyrda4na297m9v85i53png5pvbh-bloomberg-bde-3.98.0.0.drv' failed with exit code 1
@ build-failed /gnu/store/sy9glkyrda4na297m9v85i53png5pvbh-bloomberg-bde-3.98.0.0.drv - 1 builder for `/gnu/store

The build was broken on the qt-updates branch [0] but working on master, so
it appears to be non-deterministic.


--
Thanks,
Maxim
L
L
Ludovic Courtès wrote on 22 Aug 2023 23:54
(name . Maxim Cournoyer)(address . maxim.cournoyer@gmail.com)
87lee23fq3.fsf@gnu.org
Hi,

Maxim Cournoyer <maxim.cournoyer@gmail.com> skribis:

Toggle quote (13 lines)
> make: *** [Makefile:14690: all.t] Error 2
> error: in phase 'build-tests': uncaught exception:
> %exception #<&invoke-error program: "make" arguments: ("all.t" "-j" "16") exit-status: 2 term-signal: #f stop-signal: #f>
> phase `build-tests' failed after 705.6 seconds
> command "make" "all.t" "-j" "16" failed with status 2
> builder for `/gnu/store/sy9glkyrda4na297m9v85i53png5pvbh-bloomberg-bde-3.98.0.0.drv' failed with exit code 1
> @ build-failed /gnu/store/sy9glkyrda4na297m9v85i53png5pvbh-bloomberg-bde-3.98.0.0.drv - 1 builder for `/gnu/store
>
> The build was broken on the qt-updates branch [0] but working on master, so
> it appears to be non-deterministic.
>
> [0] https://ci.guix.gnu.org/build/991957/log/raw

The actual error seems to hide above in the log:

Toggle snippet (14 lines)
[ 28%] Linking CXX executable bslma_managedptr_pairproxy.t
/gnu/store/ygab8v4ci9iklaykapq52bfsshpvi8pw-cmake-minimal-3.24.2/bin/cmake -E cmake_link_script CMakeFiles/bslma_managedptr_pairproxy.t.dir/link.txt --verbose=1
/gnu/store/5lqhcv91ijy82p92ac6g5xw48l0lwwz4-gcc-11.3.0/bin/c++ -O2 -g -DNDEBUG CMakeFiles/bslma_managedptr_pairproxy.t.dir/groups/bsl/bslma/bslma_managedptr_pairproxy.t.cpp.o -o bslma_managedptr_pairproxy.t -Wl,-rpath,/tmp/guix-build-bloomberg-bde-3.98.0.0.drv-0/build libbslma.a libbslmf.a libbsla.a libbslscm.a libbsls.a -lrt libryu.so
/tmp/guix-build-bloomberg-bde-3.98.0.0.drv-0/source/groups/bsl/bslma/bslma_managedptr.t.cpp: In function ?int main(int, char**)?:
/tmp/guix-build-bloomberg-bde-3.98.0.0.drv-0/source/groups/bsl/bslma/bslma_managedptr.t.cpp:11176:22: error: ?move? is not a member of ?std?
11176 | o = std::move(o2);
| ^~~~
/tmp/guix-build-bloomberg-bde-3.98.0.0.drv-0/source/groups/bsl/bslma/bslma_managedptr.t.cpp:26:1: note: ?std::move? is defined in header ?<utility>?; did you forget to ?#include <utility>??
25 | #include <stdlib.h> // 'atoi'
+++ |+#include <utility>
26 | #include <string.h>
make[3]: Leaving directory '/tmp/guix-build-bloomberg-bde-3.98.0.0.drv-0/build'

I’m guessing that those .t.cpp files are generated and then built, and
that there’s a race condition when building in parallel.

Greg, does that ring a bell? Should we perform the ‘build-tests’ phase
sequentially?

Ludo’.
?