Bug#997029: pysph: FTBFS in testing and unstable

Graham Inggs ginggs at debian.org
Fri Oct 22 17:45:01 BST 2021


Source: pysph
Version: 1.0~b0~20191115.gite3d5e10-5
Severity: serious
Tags: ftbfs

Hi Maintainer

As can be seen in reproducible builds [1], pysph sometimes FTBS in
both testing and unstable.  I've copied what I hope is the relevant
part of the log below.

Regards
Graham


[1] https://tests.reproducible-builds.org/debian/rb-pkg/pysph.html


=================================== FAILURES ===================================
_________________ MPIReduceArrayTestCase.test_parallel_reduce __________________

self = <pysph.parallel.tests.test_parallel.MPIReduceArrayTestCase
testMethod=test_parallel_reduce>

    @mark.parallel
    def test_parallel_reduce(self):
        args = ['--directory=%s' % self.root]
>       run_parallel_script.run(
            filename='simple_reduction.py', args=args, nprocs=nprocs, path=path
        )

pysph/parallel/tests/test_parallel.py:101:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

filename = 'simple_reduction.py', args = ['--directory=/tmp/tmpr8h_5ft1']
nprocs = 2, timeout = 30.0
path = '/build/1st/pysph-1.0~b0~20191115.gite3d5e10/.pybuild/cpython3_3.9/build/pysph/parallel/tests'

    def run(filename, args=None, nprocs=2, timeout=30.0, path=None):
        """Run a python script with MPI or in serial (if nprocs=1).
Kill process
        if it takes longer than the specified timeout.

        Parameters:
        -----------
        filename - filename of python script to run under mpi.
        args - List of arguments to pass to script.
        nprocs - number of processes to run (1 => serial non-mpi run).
        timeout - time in seconds to wait for the script to finish running,
            else raise a RuntimeError exception.
        path - the path under which the script is located
            Defaults to the location of this file (__file__), not curdir.

        """
        if args is None:
            args = []
        file_path = abspath(join(path, filename))
        cmd = [sys.executable, file_path] + args
        if nprocs > 1:
            cmd = ['mpiexec', '-n', str(nprocs)] + cmd

        print('running test:', cmd)

        process = Popen(cmd, stdout=PIPE, stderr=PIPE)
        timer = Timer(timeout, kill_process, [process])
        timer.start()
        out, err = process.communicate()
        timer.cancel()
        retcode = process.returncode
        if retcode:
            msg = 'test ' + filename + ' failed with returncode ' + str(retcode)
            print(out.decode('utf-8'))
            print(err.decode('utf-8'))
            print('#'*80)
            print(msg)
            print('#'*80)
>           raise RuntimeError(msg)
E           RuntimeError: test simple_reduction.py failed with returncode -9

pysph/tools/run_parallel_script.py:54: RuntimeError



More information about the debian-science-maintainers mailing list