Opened 6 weeks ago

Closed 3 weeks ago

#27968 closed defect (fixed)

SIGNAL HALT race condition in test-rebind.py

Reported by: teor Owned by: teor
Priority: High Milestone: Tor: 0.3.5.x-final
Component: Core Tor/Tor Version: Tor: 0.3.5.1-alpha
Severity: Normal Keywords: ci
Cc: Actual Points:
Parent ID: Points:
Reviewer: mikeperry Sponsor:

Description

If tor exits due to SIGNAL HALT, before the python subprocess module terminates it, then test-rebind.py can fail with OSError 3 (no such process).

This race condition causes make check failures on my laptop running Windows Subsystem for Linux. It could potentially cause CI failures on busy machines.

I have a patch that rewrites test-rebind.py to be more reliable.

Child Tickets

Change History (7)

comment:1 Changed 6 weeks ago by teor

Status: assignedneeds_review

See https://github.com/torproject/tor/pull/386

The branch is bug27968 on https://github.com/teor-travel/tor.git
(This is my travel account.)

comment:2 Changed 6 weeks ago by catalyst

Status: needs_reviewneeds_revision

Looks good! I commented on one minor issue in the pull request.

comment:3 in reply to:  2 Changed 4 weeks ago by teor

Status: needs_revisionneeds_review

Replying to catalyst:

Looks good! I commented on one minor issue in the pull request.

Thanks for the review!

I made the errno into its symbolic constant.

But we might see failures on some platforms, if the constant is not available:

Of the following list, symbols that are not used on the current platform are not defined by the module. The specific list of defined symbols is available as errno.errorcode.keys(). Symbols available can include:

https://docs.python.org/2/library/errno.html

Also, GitHub was having storage issues when I pushed my branch:

https://status.github.com/messages

So I couldn't re-open a new pull request from my main account. I'll try again in a few hours, or tomorrow.

comment:5 Changed 4 weeks ago by dgoulet

Reviewer: mikeperry

comment:6 Changed 3 weeks ago by mikeperry

Status: needs_reviewmerge_ready

lgtm!

comment:7 Changed 3 weeks ago by nickm

Resolution: fixed
Status: merge_readyclosed

squashed and merged to 0.3.5 and forward.

Note: See TracTickets for help on using tickets.