[Debian-med-packaging] Bug#1108056: toil: FTBFS: Some tests fail on single-cpu systems

Santiago Vila sanvila at debian.org
Thu Jun 19 19:51:46 BST 2025


Package: src:toil
Version: 8.0.0-5
Severity: important
Tags: ftbfs trixie sid help

Dear maintainer:

During a rebuild of all packages in unstable, your package failed to build:

[ please read the notes at the end ]

--------------------------------------------------------------------------------
[...]
=========================== short test summary info ============================
FAILED toil/test/docs/scriptsTest.py::ToilDocumentationTest::testStats - RuntimeError: [2025-06-19T10:10:37+0000] [MainThread] [I] [toil] Running Toil version 8.0.0-d2ae0ea9ab49f238670dbf6aafd20de7afdd8514 on host m7a-medium-1750307710.
[2025-06-19T10:10:37+0000] [MainThread] [I] [toil.realtimeLogger] Starting real-time logging.
[2025-06-19T10:10:37+0000] [MainThread] [I] [toil.leader] Issued job 'TimeWaster' kind-TimeWaster/instance-eiuujau1 v1 with job batch system ID: 1 and disk: 2.0 Gi, memory: 2.0 Gi, cores: 1, accelerators: [], preemptible: False
[2025-06-19T10:10:37+0000] [MainThread] [I] [toil.leader] 0 jobs are running, 0 jobs are issued and waiting to run
[2025-06-19T10:10:37+0000] [MainThread] [I] [toil.leader] Issued job 'TimeWaster' kind-TimeWaster/instance-btgoi1mj v1 with job batch system ID: 2 and disk: 2.0 Gi, memory: 2.0 Gi, cores: 1, accelerators: [], preemptible: False
[2025-06-19T10:10:39+0000] [MainThread] [I] [toil.realtimeLogger] Stopping real-time logging server.
[2025-06-19T10:10:39+0000] [MainThread] [I] [toil.realtimeLogger] Joining real-time logging server thread.
[2025-06-19T10:10:40+0000] [MainThread] [W] [toil.fileStores.nonCachingFileStore] Detected that job ('TimeWaster' kind-TimeWaster/instance-btgoi1mj v1) prematurely terminated.  Fixing the state of the job on disk.
[2025-06-19T10:10:40+0000] [MainThread] [I] [toil.common] Successfully deleted the job store: FileJobStore(/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/my-jobstore)
Traceback (most recent call last):
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/test/docs/scripts/tutorial_stats.py", line 64, in <module>
    main()
    ~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/test/docs/scripts/tutorial_stats.py", line 58, in main
    toil.start(job1)
    ~~~~~~~~~~^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/common.py", line 1055, in start
    return self._runMainLoop(rootJobDescription)
           ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/common.py", line 1632, in _runMainLoop
    ).run()
      ~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/leader.py", line 283, in run
    self.innerLoop()
    ~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/leader.py", line 921, in innerLoop
    self._processReadyJobs()
    ~~~~~~~~~~~~~~~~~~~~~~^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/leader.py", line 779, in _processReadyJobs
    self._processReadyJob(message.job_id, message.result_status)
    ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/leader.py", line 674, in _processReadyJob
    self._runJobSuccessors(job_id)
    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/leader.py", line 535, in _runJobSuccessors
    self.issueJobs(successors)
    ~~~~~~~~~~~~~~^^^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/leader.py", line 1147, in issueJobs
    self.issueJob(job)
    ~~~~~~~~~~~~~^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/leader.py", line 1115, in issueJob
    jobBatchSystemID = self.batchSystem.issueBatchJob(
        " ".join(workerCommand), jobNode, job_environment=job_environment
    )
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/batchSystems/singleMachine.py", line 909, in issueBatchJob
    self.check_resource_request(scaled_desc)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/batchSystems/singleMachine.py", line 602, in check_resource_request
    raise e
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/batchSystems/singleMachine.py", line 598, in check_resource_request
    super().check_resource_request(requirer)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/batchSystems/abstractBatchSystem.py", line 376, in check_resource_request
    raise e
  File "/<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build/toil/batchSystems/abstractBatchSystem.py", line 369, in check_resource_request
    raise InsufficientSystemResources(requirer, resource, available)
toil.batchSystems.abstractBatchSystem.InsufficientSystemResources: The job 'TimeWaster' kind-TimeWaster/instance-p0zt5epj v1 is requesting 2.0 cores, more than the maximum of 1 cores that SingleMachineBatchSystem was configured with, or enforced by --maxCores. Scale is set to 0.5.
FAILED toil/test/src/promisedRequirementTest.py::SingleMachinePromisedRequirementsTest::testPromisesWithJobStoreFileObjects - toil.batchSystems.abstractBatchSystem.InsufficientSystemResources: The job '_writer' kind-_writer/instance-m4m6tlrd v1 is requesting 2.0 cores, more than the maximum of 1 cores that SingleMachineBatchSystem was configured with, or enforced by --maxCores. Scale is set to 1.
FAILED toil/test/src/promisedRequirementTest.py::SingleMachinePromisedRequirementsTest::testPromisesWithNonCachingFileStore - toil.batchSystems.abstractBatchSystem.InsufficientSystemResources: The job '_writer' kind-_writer/instance-vlddtdwu v1 is requesting 2.0 cores, more than the maximum of 1 cores that SingleMachineBatchSystem was configured with, or enforced by --maxCores. Scale is set to 1. Scale is set to 1.
FAILED toil/test/src/promisedRequirementTest.py::SingleMachinePromisedRequirementsTest::test_omp_threads - toil.batchSystems.abstractBatchSystem.InsufficientSystemResources: The job 'get_omp_threads' kind-get_omp_threads/instance-n5qwt8yv v1 is requesting 2.0 cores, more than the maximum of 1 cores that SingleMachineBatchSystem was configured with, or enforced by --maxCores. Scale is set to 1. Scale is set to 1. Scale is set to 1.
=========== 4 failed, 201 passed, 155 skipped in 1045.23s (0:17:25) ============
E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /<<PKGBUILDDIR>>/.pybuild/cpython3_3.13_toil/build; python3.13 -m pytest -n 1 --dist loadscope -vv -W ignore  -k "not (testVirtualEnv or DockstoreLookupTest or testMultiplejobs or testServices)" -m "not slow" --ignore toil/test/lib/aws/test_s3.py --ignore toil/test/provisioners/aws/awsProvisionerTest.py --ignore toil/test/wdl/wdltoil_test.py --ignore toil/test/cwl/cwlTest.py --ignore toil/test/lib/test_ec2.py --ignore toil/test/batchSystems/batchSystemTest.py --ignore toil/test/lib/aws/test_iam.py --ignore  toil/test/provisioners/clusterTest.py --ignore toil/test/wdl/wdltoil_test_kubernetes.py --ignore toil/test/cactus/test_cactus_integration.py toil/test
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p 3.13 returned exit code 13
make[1]: *** [debian/rules:38: override_dh_auto_test] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:21: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2
--------------------------------------------------------------------------------

The above is just how the build ends and not necessarily the most relevant part.
If required, the full build log is available here:

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

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

In this particular case, the build was made on AWS machines of type
m7a.medium and r7a.medium. Incidentally, those machines have a single CPU,
but at this point it's not clear yet if that's the condition which triggers
the build failure or, for example, the fact that they are overall slower
than other instance types, or maybe some other reason.

If you could not reproduce the bug using GRUB_CMDLINE_LINUX="nr_cpus=1"
please contact me privately, as I am willing to provide ssh access to a
virtual machine where the bug is fully reproducible.

Disclaimer: Please note that this is probably a violation of
Debian Policy 4.2, and the only reason I'm initially reporting
it as "important" is to avoid discussing about the severity.

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

Note: In some similar cases the only reasonable fix is
to "import os" and skipif(os.cpu_count() == 1) the affected test.

Thanks.



More information about the Debian-med-packaging mailing list