Source: flatpak Version: 1.18.0-1 Severity: important X-Debbugs-Cc: [email protected], [email protected] User: [email protected] Usertags: amd64 Tags: ftbfs unreproducible help
flatpak_1.18.0-1 compiled successfully on the first attempt on all of the official buildds (all architectures) and on reproduce.debian.net (all architectures except amd64), but its build-time tests failed on reproduce.debian.net on amd64: https://reproduce.debian.net/amd64/api/v1/builds/261317/log >flatpak:test-auth.sh time out (After 90.0 seconds) >47/63 flatpak:test-auth.sh TIMEOUT >90.55s killed by signal 15 SIGTERM > >flatpak:test-preinstall.sh time out (After 90.0 seconds) >58/63 flatpak:test-preinstall.sh TIMEOUT >90.28s killed by signal 15 SIGTERM The log sections for those two tests don't show anything obviously wrong, until SIGTERM is received and cleanup starts. On the official amd64 buildd, the whole of test-auth.sh took 8.31 seconds. On reproduce.debian.net, test-auth.sh started at 7:13:09 and successfully completed 1 out of 3 sub-tests ("installed build-exported token-type app") shortly after 07:13:51, meaning about 42 seconds to complete 1 out of 3 sub-tests - that seems quite dramatically slower for a test that ought to be mostly I/O-bound. Based on this, I suspect the test might have passed if it had been given an arbitrarily large timeout. Similarly test-preinstall.sh seems to have still been making forward progress on the first of 12 sub-tests about a minute after it started (that's the last timestamp I can immediately see in its log), compared with having only taken 12.13 seconds in total for all 12 sub-tests on the official amd64 buildd. Obviously I can increase arbitrary timeouts if I have to (and non-x86 architectures already have a much longer timeout), but it seems unexpected that test-auth.sh took more than 10x as long as it did on the official amd64 buildd. For comparison, test-auth.sh and test-preinstall.sh both took about a minute on an official *riscv64* buildd, and the riscv64 buildds have been noted to be slow enough to be causing practical problems. The upstream default (from Meson) is that "most" tests are allowed 30 seconds to run and then killed, with a few exceptions where the timeout is extended for particularly slow tests. On x86 the Debian packaging multiplies timeouts by 3 (90s for most tests, scaling up appropriately for particularly slow ones), and on non-x86 it multiplies timeouts by 20 (10 minutes for most tests). I'm reluctant to increase the timeout excessively on x86, because Flatpak's test suite (like many test-suites) is rather complicated, and if one of the tests genuinely gets stuck (no longer making forward progress), having it block for multiple minutes before giving up is an unwelcome debugging experience. Can reproduce.debian.net jobs be retried, to see whether this might be a one-off glitch? Are reproduce.debian.net amd64 machines known to be significantly (orders of magnitude!) slower than official amd64 buildds, or my laptop, or even riscv64 buildds? Or does reproduce.debian.net perhaps parallelize builds of unrelated packages on the same machine, which might have caused the tests to be extra-slow? I also wonder whether running the build-time test-suite is necessary for reproduce.debian.net's goals: if we're trying to prove that the binaries in the archive are genuine, it seems to me that a build with the nocheck option would be sufficient for demonstrating that. Obviously test-suites that don't always work are a bug, but perhaps that's orthogonal to whether an existing package can be reproduced? Thanks, smcv

