Skip to content

1.17 appears buggy #157

Closed
Closed
@jreback

Description

@jreback

we have been using pytest-xdist quite sucessfully for a while on Travis CI (other CI's). Appears the 1.17 release broke things. Not sure entirely sure why.

here is a snipped (the bottom linked will take you there). I was also able to repro this (locally on macosx).

The command "ci/script_single.sh" exited with 0.
41.85s$ ci/script_multi.sh
[script multi]
PYTHONHASHSEED=4076114954
pytest -n 2 -r xX -m not single --junitxml=/tmp/multiple.xml --skip-slow --skip-network pandas
============================= test session starts ==============================
platform linux -- Python 3.6.1, pytest-3.1.1, py-1.4.33, pluggy-0.4.0
rootdir: /home/travis/build/pandas-dev/pandas, inifile: setup.cfg
plugins: xdist-1.17.0
gw0 [11171] / gw1 [11171]
scheduling tests via LoadScheduling
................................................................................................................................................................................................................................................................................sss...........sINTERNALERROR> Traceback (most recent call last):
INTERNALERROR>   File "/home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages/_pytest/main.py", line 105, in wrap_session
INTERNALERROR>     session.exitstatus = doit(config, session) or 0
INTERNALERROR>   File "/home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages/_pytest/main.py", line 141, in _main
INTERNALERROR>     config.hook.pytest_runtestloop(session=session)
INTERNALERROR>   File "/home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 745, in __call__
INTERNALERROR>     return self._hookexec(self, self._nonwrappers + self._wrappers, kwargs)
INTERNALERROR>   File "/home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 339, in _hookexec
INTERNALERROR>     return self._inner_hookexec(hook, methods, kwargs)
INTERNALERROR>   File "/home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 334, in <lambda>
INTERNALERROR>     _MultiCall(methods, kwargs, hook.spec_opts).execute()
INTERNALERROR>   File "/home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages/_pytest/vendored_packages/pluggy.py", line 614, in execute
INTERNALERROR>     res = hook_impl.function(*args)
INTERNALERROR>   File "/home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages/xdist/dsession.py", line 539, in pytest_runtestloop
INTERNALERROR>     self.loop_once()
INTERNALERROR>     call(**kwargs)
INTERNALERROR>   File "/home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages/xdist/dsession.py", line 664, in slave_testreport
INTERNALERROR>     self.sched.mark_test_complete(node, rep.item_index, rep.duration)
INTERNALERROR>   File "/home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages/xdist/dsession.py", line 280, in mark_test_complete
INTERNALERROR>     self.node2pending[node].remove(item_index)
INTERNALERROR> ValueError: list.remove(x): x not in list
sys:1: ResourceWarning: unclosed file <_io.TextIOWrapper name=0 mode='r' encoding='UTF-8'>
sys:1: ResourceWarning: unclosed file <_io.TextIOWrapper name=1 mode='w' encoding='UTF-8'>
==================== 283 passed, 4 skipped in 36.29 seconds ====================

successful with 1.16.0

The following NEW packages will be INSTALLED:
    py:     1.4.33-py36_0 conda-forge
    pytest: 3.1.1-py36_0  conda-forge
py-1.4.33-py36 100% || Time: 0:00:00  18.05 MB/s
pytest-3.1.1-p 100% || Time: 0:00:00  20.72 MB/s
real	0m8.518s
user	0m7.392s
sys	0m0.544s
Collecting pytest-xdist
Requirement already satisfied: py>=1.4.22 in /home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages (from pytest-xdist)
Requirement already satisfied: pytest>=2.7.0 in /home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages (from pytest-xdist)
Collecting execnet>=1.1 (from pytest-xdist)
  Using cached execnet-1.4.1-py2.py3-none-any.whl
Requirement already satisfied: setuptools in /home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages (from pytest>=2.7.0->pytest-xdist)
Collecting apipkg>=1.4 (from execnet>=1.1->pytest-xdist)
  Using cached apipkg-1.4-py2.py3-none-any.whl
Installing collected packages: apipkg, execnet, pytest-xdist
Successfully installed apipkg-1.4 execnet-1.4.1 pytest-xdist-1.16.0

with 1.17
https://travis-ci.org/pandas-dev/pandas/jobs/241382582

Package plan for installation in environment /home/travis/miniconda3/envs/pandas:
The following NEW packages will be INSTALLED:
    py:     1.4.33-py36_0 conda-forge
    pytest: 3.1.1-py36_0  conda-forge
py-1.4.33-py36 100% || Time: 0:00:00  19.42 MB/s
pytest-3.1.1-p 100% || Time: 0:00:00  22.30 MB/s
real	0m9.853s
user	0m7.700s
sys	0m0.596s
Collecting pytest-xdist
Requirement already satisfied: pytest>=2.7.0 in /home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages (from pytest-xdist)
Collecting execnet>=1.1 (from pytest-xdist)
  Using cached execnet-1.4.1-py2.py3-none-any.whl
Requirement already satisfied: py>=1.4.22 in /home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages (from pytest-xdist)
Requirement already satisfied: setuptools in /home/travis/miniconda3/envs/pandas/lib/python3.6/site-packages (from pytest>=2.7.0->pytest-xdist)
Collecting apipkg>=1.4 (from execnet>=1.1->pytest-xdist)
  Using cached apipkg-1.4-py2.py3-none-any.whl
Installing collected packages: apipkg, execnet, pytest-xdist
Successfully installed apipkg-1.4 execnet-1.4.1 pytest-xdist-1.17.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions