New submission from STINNER Victor:

The "x86 Gentoo Refleaks 3.x" buildbot runs tests using -u-cpu to disable the 
cpu resource. The problem is that DirectoryTestCase.test_files() of 
Lib/test/test_tools/ uses random:

        # Test limited subset of files unless the 'cpu' resource is specified.
        if not"cpu"):
            names = random.sample(names, 10)

So when we run the same test 7 times, each run uses different data.

I see different options:

* Reseed random using the same seed in dash_R() of regrtest
* Always test all data in all files, or select a specific set 
of interesting files

The random issue is more generic than just, and so it would be 
interesting to explore this path. Maybe the random issue explains why some 
other tests fail randomly.

libregrtest always seeds the random RNG using a seed displayed on the standard 
output. We should either reuse this seed, or create a new unique seed for each 
test file, and display it (to be able to reproduce tests).

Reseed random before running each test file can also helps to make tests more 


test_tools leaked [1, 4, 2] memory blocks, sum=7
Re-running test 'test_tools' in verbose mode
test_tools leaked [1, 2, 2] memory blocks, sum=5
1 test failed again:

components: Tests
messages: 300075
nosy: haypo, serhiy.storchaka
priority: normal
severity: normal
status: open
title: test_tools leaks randomly references on x86 Gentoo Refleaks 3.x
versions: Python 3.7

Python tracker <>
Python-bugs-list mailing list

Reply via email to