Bug#1050665: clutter-1.0: FTBFS on riscv64 due to test timeout
Source: clutter-1.0 Followup-For: Bug #1050665 Dear Maintainer, It seems the package has the same issue like #1050818 and the package is a very key package also, so do you have a plan to upload it and apply the patch? Many thanks for supporting riscv64 port here. BR, Bo https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050818 -- Regards, -- Bo YU signature.asc Description: PGP signature
Bug#1050665: clutter-1.0: FTBFS on riscv64 due to test timeout
Hi Simon, On 2023-08-28 11:07, Simon McVittie wrote: > On Sun, 27 Aug 2023 at 21:18:38 +0200, Aurelien Jarno wrote: > > test(t, test_bin, > >suite: suite_name, > >env: test_env, > > + timeout: 100, > > ) > > It's probably worth mentioning before you file too many bugs similar to > this one that Meson has a feature that's really useful in this situation: I do not expect a lot similar bugs, as riscv64 was built before on debian-ports, it's mostly for the packages which evolved since they got built on debian-ports. That said, the fact that the development is reopened after the Bookworm release and the lack of experimental on the debian archive increase the chances to have such cases. > if debian/rules passes an argument like `--timeout-multiplier 5` to > `meson test`, then all test(timeout:) arguments are multiplied by 5. > > Choosing an appropriate --timeout-multiplier is often enough to make > tests pass on slower buildds without having to patch any upstream source, > which reduces the time spent on rebasing patches later. Thanks a lot for the explanation. That's indeed way better. I therefore came with the following patch instead: --- clutter-1.0-1.26.4+git2779b932+dfsg/debian/rules +++ clutter-1.0-1.26.4+git2779b932+dfsg/debian/rules @@ -56,7 +56,7 @@ ifneq (,$(filter armel s390x,$(DEB_HOST_ARCH))) # Ignore test failures on architectures where they fail else ifneq (,$(filter hppa hurd-i386 kfreebsd-i386 kfreebsd-amd64 mips mipsel mips64el powerpc ppc64 sparc64,$(DEB_HOST_ARCH))) - -dbus-run-session -- xvfb-run -a dh_auto_test + -dbus-run-session -- xvfb-run -a dh_auto_test -- --timeout-multiplier 3 else - dbus-run-session -- xvfb-run -a dh_auto_test + dbus-run-session -- xvfb-run -a dh_auto_test -- --timeout-multiplier 3 endif I didn't try to use a different multiplier depending on the architecture as it has no impact on working tests anyway. Regards Aurelien -- Aurelien Jarno GPG: 4096R/1DDD8C9B aurel...@aurel32.net http://aurel32.net
Bug#1050665: clutter-1.0: FTBFS on riscv64 due to test timeout
On Sun, 27 Aug 2023 at 21:18:38 +0200, Aurelien Jarno wrote: > test(t, test_bin, >suite: suite_name, >env: test_env, > + timeout: 100, > ) It's probably worth mentioning before you file too many bugs similar to this one that Meson has a feature that's really useful in this situation: if debian/rules passes an argument like `--timeout-multiplier 5` to `meson test`, then all test(timeout:) arguments are multiplied by 5. Choosing an appropriate --timeout-multiplier is often enough to make tests pass on slower buildds without having to patch any upstream source, which reduces the time spent on rebasing patches later. smcv
Bug#1050665: clutter-1.0: FTBFS on riscv64 due to test timeout
Source: clutter-1.0 Version: 1.26.4+git2779b932+dfsg-5 Severity: important Tags: patch ftbfs User: debian-ri...@lists.debian.org Usertags: riscv64 X-Debbugs-Cc: debian-ri...@lists.debian.org Dear maintainer, clutter-1.0 fails to build from source on riscv64 with a timeout in on test: | === 25/25 | test: clutter:actor / actor-pick | start time: 05:39:05 | duration: 30.17s | result: killed by signal 15 SIGTERM | command: G_ENABLE_DIAGNOSTIC=0 LD_LIBRARY_PATH=/<>/obj-riscv64-linux-gnu/clutter CLUTTER_ENABLE_DIAGNOSTIC=0 G_TEST_BUILDDIR=/<>/obj-riscv64-linux-gnu/tests/conform MALLOC_PERTURB_=247 G_TEST_SRCDIR=/<>/tests/conform CLUTTER_BACKEND=x11 /<>/obj-riscv64-linux-gnu/tests/conform/actor-pick | --- stdout --- | TAP version 13 | # random seed: R02Sb54186406fb0014222d460465642f460 | 1..1 | # Start of actor tests | == | | | Summary of Failures: | | 25/25 clutter:actor / actor-pick TIMEOUT30.17s killed by signal 15 SIGTERM | | Ok: 24 | Expected Fail: 0 | Fail: 0 | Unexpected Pass:0 | Skipped:0 | Timeout:1 | dh_auto_test: error: cd obj-riscv64-linux-gnu && LC_ALL=C.UTF-8 MESON_TESTTHREADS=4 meson test returned exit code 1 | make[1]: *** [debian/rules:61: override_dh_auto_test] Error 25 | make[1]: Leaving directory '/<>' | make: *** [debian/rules:26: binary-arch] Error 2 | dpkg-buildpackage: error: debian/rules binary-arch subprocess returned exit status 2 The full build log is available there: https://buildd.debian.org/status/fetch.php?pkg=clutter-1.0=riscv64=1.26.4%2Bgit2779b932%2Bdfsg-5=1691732382=0 After investigation, it appeared the test actually passes, but needs more time than the default 30 seconds timeout of meson. The following patch, increasing the timeout to 100 seconds is enough to get the test pass: --- clutter-1.0-1.26.4+git2779b932+dfsg.orig/tests/conform/meson.build +++ clutter-1.0-1.26.4+git2779b932+dfsg/tests/conform/meson.build @@ -91,6 +91,7 @@ foreach suite: conformance_suites test(t, test_bin, suite: suite_name, env: test_env, + timeout: 100, ) endforeach endforeach I guess it might also fix the same issue on a few other architectures. Regards Aurelien