pytest-dev / pytest-dev/execnet
testing/test_gateway.py::TestPopenGateway::test_waitclose_on_remote_killed FAILED/PASSEDSegmentation fault
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 102
- Forks
- 47
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
- Bitbucket: https://bitbucket.org/hpk42/execnet/issue/53
- Originally reported by: @danstender
- Originally created at: 2017-03-19T18:17:04.424
We've got this test failure here on the Debian package. It appears randomly (however, oftenly), so it's hard to tell what triggers this, nor how to successfully reproduce it.
=================================== FAILURES ===================================
_______________ TestPopenGateway.test_waitclose_on_remote_killed _______________
self = <test_gateway.TestPopenGateway object at 0x7fbe7777a518>
makegateway = <bound method Group.makegateway of <Group ['gw0']>>
def test_waitclose_on_remote_killed(self, makegateway):
gw = makegateway('popen')
channel = gw.remote_exec("""
import os
import time
channel.send(os.getpid())
time.sleep(100)
""")
remotepid = channel.receive()
py.process.kill(remotepid)
py.test.raises(EOFError, "channel.waitclose(TESTTIMEOUT)")
> py.test.raises(IOError, channel.send, None)
E Failed: DID NOT RAISE <class 'OSError'>
testing/test_gateway.py:251: Failed
Anyway, any hint on this or a fix would be very welcome.
The corresponding bug report is https://bugs.debian.org/854494, please see there for moreinfo and buildlogs.
DS
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit testing/test_gateway.py::TestPopenGateway::test_waitclose_on_remote_killed und reproduziere den Fehler wiederholt, wobei du den verknüpften Debian-Bericht und die Build-Protokolle als Kontext verwendest. Erledigt bedeutet, dass sich der Fall eines remote gekillten Prozesses konsistent verhält und waitclose EOFError sowie channel.send IOError auslöst, ohne einen Segmentation Fault.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- distributed-systems, testing
- Issue-Typ
- Bug
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Ruhig
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 25/100