pytest-dev / pytest-dev/execnet

2.1.1: `test_popen_io[gevent-sys.executable]` fails

Ouverte
#279 0 commentaires 1 réaction 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
Python
Étoiles
102
Forks
47
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

I see this failure while testing execnet 2.1.1 on OpenIndiana:

_____________________ test_popen_io[gevent-sys.executable] _____________________

checker = Checker(python='$(BUILD_DIR)/.tox/py39/bin/python', path=PosixPath('/tmp/pytest-of-marcel/pytest-181/test_popen_io_gevent_sys_execu0'), idx=1)
execmodel = <ExecModel 'gevent'>

    def test_popen_io(checker: Checker, execmodel: ExecModel) -> None:
>       out = checker.run_check(
            inspect.getsource(gateway_base)
            + f"""
    io = init_popen_io(get_execmodel({execmodel.backend!r}))
    io.write(b"hello")
    s = io.read(1)
    assert s == b"x"
    """,
            input="x",
        )

testing/test_basics.py:188:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
testing/test_basics.py:165: in run_check
    return subprocess.run(
/usr/lib/python3.9/subprocess.py:507: in run
    stdout, stderr = process.communicate(input, timeout=timeout)
/usr/lib/python3.9/subprocess.py:1134: in communicate
    stdout, stderr = self._communicate(input, endtime, timeout)
/usr/lib/python3.9/subprocess.py:1995: in _communicate
    ready = selector.select(timeout)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <selectors.PollSelector object at 0x7fffa7e1c9a0>, timeout = None

    def select(self, timeout=None):
        # This is shared between poll() and epoll().
        # epoll() has a different signature and handling of timeout parameter.
        if timeout is None:
            timeout = None
        elif timeout <= 0:
            timeout = 0
        else:
            # poll() has a resolution of 1 millisecond, round away from
            # zero to wait *at least* timeout seconds.
            timeout = math.ceil(timeout * 1e3)
        ready = []
        try:
>           fd_event_list = self._selector.poll(timeout)
E           Failed: Timeout >20.0s

/usr/lib/python3.9/selectors.py:416: Failed

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par exécuter test_popen_io[gevent-sys.executable] sur OpenIndiana et inspecter testing/test_basics.py autour de test_popen_io et run_check. Suivez le chemin init_popen_io indiqué dans l’échec afin de déterminer pourquoi le sous-processus ne se termine pas. C’est terminé lorsque le test se termine dans le délai imparti et que ses assertions d’E/S d’octets réussissent.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
python
Domaine
testing
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.