[tor-bugs] #30235 [Core Tor/Stem]: Stem hangs waiting for control port data
Tor Bug Tracker & Wiki
blackhole at torproject.org
Fri Jun 14 10:01:23 UTC 2019
#30235: Stem hangs waiting for control port data
-----------------------------------+-------------------------------
Reporter: teor | Owner: (none)
Type: defect | Status: new
Priority: Medium | Milestone:
Component: Core Tor/Stem | Version:
Severity: Normal | Resolution:
Keywords: tor-ci-fail-sometimes | Actual Points: 0.5
Parent ID: #29437 | Points: 1
Reviewer: | Sponsor: Sponsor31-can
-----------------------------------+-------------------------------
Changes (by teor):
* status: needs_information => new
Comment:
Hmm, it seems that something goes wrong a few lines in, where stem says:
{{{
06/14/2019 03:10:42 [TRACE] Sent to tor: GETINFO version
}}}
But it never gets a response back from tor.
Here's the latest output:
{{{
06/14/2019 03:10:42 [TRACE] Sent to tor: GETINFO version
06/14/2019 03:10:42 [TRACE] Received from tor: 250-version=0.4.2.0-alpha-
dev (git-aadad2c643a34ea5)\n250 OK
06/14/2019 03:10:42 [TRACE] Sent to tor: GETINFO blarg
06/14/2019 03:10:42 [TRACE] Received from tor: 552 Unrecognized key
"blarg"
06/14/2019 03:10:42 [TRACE] Sent to tor: blarg
06/14/2019 03:10:42 [TRACE] Received from tor: 510 Unrecognized command
"blarg"
06/14/2019 03:10:42 [TRACE] Sent to tor: GETINFO version
06/14/2019 03:10:42 [TRACE] Received from tor: 650 STATUS_SERVER NOTICE
EXTERNAL_ADDRESS ADDRESS=35.188.1.99 METHOD=DIRSERV
06/14/2019 03:10:42 [TRACE] Received from tor: 650 STATUS_SERVER NOTICE
EXTERNAL_ADDRESS ADDRESS=35.224.112.202 METHOD=DIRSERV
06/14/2019 03:10:42 [TRACE] Received from tor: 650 STATUS_SERVER NOTICE
EXTERNAL_ADDRESS ADDRESS=35.192.85.2 METHOD=DIRSERV
06/14/2019 03:10:42 [TRACE] Sent to tor: Blarg!
06/14/2019 03:10:42 [TRACE] Received from tor: 650 STATUS_SERVER NOTICE
EXTERNAL_ADDRESS ADDRESS=35.184.226.236 METHOD=DIRSERV
06/14/2019 03:10:42 [TRACE] Received from tor: 650 STATUS_SERVER NOTICE
EXTERNAL_ADDRESS ADDRESS=104.154.120.187 METHOD=DIRSERV
...
6/14/2019 03:10:46 [TRACE] Received from tor: 650 STATUS_SERVER NOTICE
EXTERNAL_ADDRESS ADDRESS=35.193.7.13 METHOD=DIRSERV
06/14/2019 03:10:46 [TRACE] Received from tor: 650 STATUS_SERVER NOTICE
EXTERNAL_ADDRESS ADDRESS=35.184.96.71 METHOD=DIRSERV
06/14/2019 03:10:46 [TRACE] Received from tor: 514 Authentication
required.
06/14/2019 03:10:46 [TRACE] Sent to tor: blarg
timelimit: sending warning signal 10
================================================================================
Signal SIGUSR1 received by thread MainThread in process 20776
--------------------------------------------------------------------------------
Tor listener thread stacktrace
File "/usr/lib/python3.4/threading.py", line 888, in _bootstrap
self._bootstrap_inner()
File "/usr/lib/python3.4/threading.py", line 920, in _bootstrap_inner
self.run()
File "/usr/lib/python3.4/threading.py", line 868, in run
self._target(*self._args, **self._kwargs)
File "/home/travis/build/torproject/tor/stem/stem/control.py", line 946,
in _reader_loop
control_message = self._socket.recv()
File "/home/travis/build/torproject/tor/stem/stem/socket.py", line 474,
in recv
return self._recv(lambda s, sf: recv_message(sf))
File "/home/travis/build/torproject/tor/stem/stem/socket.py", line 274,
in _recv
return handler(my_socket, my_socket_file)
File "/home/travis/build/torproject/tor/stem/stem/socket.py", line 474,
in <lambda>
return self._recv(lambda s, sf: recv_message(sf))
File "/home/travis/build/torproject/tor/stem/stem/socket.py", line 676,
in recv_message
line = control_file.readline()
File "/usr/lib/python3.4/socket.py", line 374, in readinto
return self._sock.recv_into(b)
--------------------------------------------------------------------------------
Event notifier thread stacktrace
File "/usr/lib/python3.4/threading.py", line 888, in _bootstrap
self._bootstrap_inner()
File "/usr/lib/python3.4/threading.py", line 920, in _bootstrap_inner
self.run()
File "/usr/lib/python3.4/threading.py", line 868, in run
self._target(*self._args, **self._kwargs)
File "/home/travis/build/torproject/tor/stem/stem/control.py", line 991,
in _event_loop
self._event_notice.wait(0.05)
File "/usr/lib/python3.4/threading.py", line 553, in wait
signaled = self._cond.wait(timeout)
File "/usr/lib/python3.4/threading.py", line 294, in wait
gotit = waiter.acquire(True, timeout)
--------------------------------------------------------------------------------
MainThread thread stacktrace
File "/home/travis/build/torproject/tor/stem/run_tests.py", line 479, in
<module>
main()
File "/home/travis/build/torproject/tor/stem/run_tests.py", line 311, in
main
run_result = _run_test(args, test_class, output_filters)
File "/home/travis/build/torproject/tor/stem/run_tests.py", line 457, in
_run_test
run_result = stem.util.test_tools.TimedTestRunner(test_results,
verbosity = 2).run(suite)
File "/home/travis/build/torproject/tor/stem/stem/util/test_tools.py",
line 308, in run
return super(TimedTestRunner, self).run(test)
File "/usr/lib/python3.4/unittest/runner.py", line 168, in run
test(result)
File "/usr/lib/python3.4/unittest/suite.py", line 84, in __call__
return self.run(*args, **kwds)
File "/usr/lib/python3.4/unittest/suite.py", line 122, in run
test(result)
File "/usr/lib/python3.4/unittest/case.py", line 625, in __call__
return self.run(*args, **kwds)
File "/home/travis/build/torproject/tor/stem/stem/util/test_tools.py",
line 258, in run
result = super(type(self), self).run(result)
File "/usr/lib/python3.4/unittest/case.py", line 577, in run
testMethod()
File "/home/travis/build/torproject/tor/stem/test/require.py", line 57,
in wrapped
return func(self, *args, **kwargs)
File
"/home/travis/build/torproject/tor/stem/test/integ/control/controller.py",
line 732, in test_set_conf
controller.set_conf('ExitPolicy', exit_policy)
File "/home/travis/build/torproject/tor/stem/stem/control.py", line
2471, in set_conf
self.set_options({param: value}, False)
File "/home/travis/build/torproject/tor/stem/stem/control.py", line
2541, in set_options
response = self.msg(query)
File "/home/travis/build/torproject/tor/stem/stem/control.py", line 661,
in msg
response = self._reply_queue.get()
File "/usr/lib/python3.4/queue.py", line 167, in get
self.not_empty.wait()
File "/usr/lib/python3.4/threading.py", line 290, in wait
waiter.acquire()
File "/home/travis/build/torproject/tor/stem/run_tests.py", line 92, in
log_traceback
for thread_name, stacktrace in
test.output.thread_stacktraces().items():
File "/home/travis/build/torproject/tor/stem/test/output.py", line 110,
in thread_stacktraces
stacktraces[thread.name] = ''.join(traceback.format_stack(frame))
================================================================================
================================================================================
Signal SIGUSR1 received by thread MainThread in process 20813
--------------------------------------------------------------------------------
MainThread thread stacktrace
File "/home/travis/build/torproject/tor/stem/run_tests.py", line 479, in
<module>
main()
File "/home/travis/build/torproject/tor/stem/run_tests.py", line 285, in
main
test_classes[0].run_tests(async_args)
File
"/home/travis/build/torproject/tor/stem/test/integ/installation.py", line
64, in run_tests
stem.util.test_tools.ASYNC_TESTS['test.integ.installation.test_sdist'].run(test_install.pid())
File "/home/travis/build/torproject/tor/stem/stem/util/test_tools.py",
line 201, in run
self._process.start()
File "/usr/lib/python3.4/multiprocessing/process.py", line 105, in start
self._popen = self._Popen(self)
File "/usr/lib/python3.4/multiprocessing/context.py", line 212, in
_Popen
return _default_context.get_context().Process._Popen(process_obj)
File "/usr/lib/python3.4/multiprocessing/context.py", line 267, in
_Popen
return Popen(process_obj)
File "/usr/lib/python3.4/multiprocessing/popen_fork.py", line 21, in
__init__
self._launch(process_obj)
File "/usr/lib/python3.4/multiprocessing/popen_fork.py", line 77, in
_launch
code = process_obj._bootstrap()
File "/usr/lib/python3.4/multiprocessing/process.py", line 254, in
_bootstrap
self.run()
File "/usr/lib/python3.4/multiprocessing/process.py", line 93, in run
self._target(*self._args, **self._kwargs)
File "/home/travis/build/torproject/tor/stem/stem/util/test_tools.py",
line 169, in _wrapper
runner(*args) if args else runner()
File
"/home/travis/build/torproject/tor/stem/test/integ/installation.py", line
108, in test_sdist
time.sleep(0.1) # we need to run these tests serially
File "/home/travis/build/torproject/tor/stem/run_tests.py", line 92, in
log_traceback
for thread_name, stacktrace in
test.output.thread_stacktraces().items():
File "/home/travis/build/torproject/tor/stem/test/output.py", line 110,
in thread_stacktraces
stacktraces[thread.name] = ''.join(traceback.format_stack(frame))
================================================================================
timelimit: sending kill signal 6
================================================================================
Signal SIGABRT received by thread MainThread in process 20776
--------------------------------------------------------------------------------
Tor listener thread stacktrace
File "/usr/lib/python3.4/threading.py", line 888, in _bootstrap
self._bootstrap_inner()
File "/usr/lib/python3.4/threading.py", line 920, in _bootstrap_inner
self.run()
File "/usr/lib/python3.4/threading.py", line 868, in run
self._target(*self._args, **self._kwargs)
File "/home/travis/build/torproject/tor/stem/stem/control.py", line 946,
in _reader_loop
control_message = self._socket.recv()
File "/home/travis/build/torproject/tor/stem/stem/socket.py", line 474,
in recv
return self._recv(lambda s, sf: recv_message(sf))
File "/home/travis/build/torproject/tor/stem/stem/socket.py", line 274,
in _recv
return handler(my_socket, my_socket_file)
File "/home/travis/build/torproject/tor/stem/stem/socket.py", line 474,
in <lambda>
return self._recv(lambda s, sf: recv_message(sf))
File "/home/travis/build/torproject/tor/stem/stem/socket.py", line 676,
in recv_message
line = control_file.readline()
File "/usr/lib/python3.4/socket.py", line 374, in readinto
return self._sock.recv_into(b)
--------------------------------------------------------------------------------
Event notifier thread stacktrace
File "/usr/lib/python3.4/threading.py", line 888, in _bootstrap
self._bootstrap_inner()
File "/usr/lib/python3.4/threading.py", line 920, in _bootstrap_inner
self.run()
File "/usr/lib/python3.4/threading.py", line 868, in run
self._target(*self._args, **self._kwargs)
File "/home/travis/build/torproject/tor/stem/stem/control.py", line 991,
in _event_loop
self._event_notice.wait(0.05)
File "/usr/lib/python3.4/threading.py", line 553, in wait
signaled = self._cond.wait(timeout)
File "/usr/lib/python3.4/threading.py", line 294, in wait
gotit = waiter.acquire(True, timeout)
--------------------------------------------------------------------------------
MainThread thread stacktrace
File "/home/travis/build/torproject/tor/stem/run_tests.py", line 479, in
<module>
main()
File "/home/travis/build/torproject/tor/stem/run_tests.py", line 311, in
main
run_result = _run_test(args, test_class, output_filters)
File "/home/travis/build/torproject/tor/stem/run_tests.py", line 457, in
_run_test
run_result = stem.util.test_tools.TimedTestRunner(test_results,
verbosity = 2).run(suite)
File "/home/travis/build/torproject/tor/stem/stem/util/test_tools.py",
line 308, in run
return super(TimedTestRunner, self).run(test)
File "/usr/lib/python3.4/unittest/runner.py", line 168, in run
test(result)
File "/usr/lib/python3.4/unittest/suite.py", line 84, in __call__
return self.run(*args, **kwds)
File "/usr/lib/python3.4/unittest/suite.py", line 122, in run
test(result)
File "/usr/lib/python3.4/unittest/case.py", line 625, in __call__
return self.run(*args, **kwds)
File "/home/travis/build/torproject/tor/stem/stem/util/test_tools.py",
line 258, in run
result = super(type(self), self).run(result)
File "/usr/lib/python3.4/unittest/case.py", line 577, in run
testMethod()
File "/home/travis/build/torproject/tor/stem/test/require.py", line 57,
in wrapped
return func(self, *args, **kwargs)
File
"/home/travis/build/torproject/tor/stem/test/integ/control/controller.py",
line 732, in test_set_conf
controller.set_conf('ExitPolicy', exit_policy)
File "/home/travis/build/torproject/tor/stem/stem/control.py", line
2471, in set_conf
self.set_options({param: value}, False)
File "/home/travis/build/torproject/tor/stem/stem/control.py", line
2541, in set_options
response = self.msg(query)
File "/home/travis/build/torproject/tor/stem/stem/control.py", line 661,
in msg
response = self._reply_queue.get()
File "/usr/lib/python3.4/queue.py", line 167, in get
self.not_empty.wait()
File "/usr/lib/python3.4/threading.py", line 290, in wait
waiter.acquire()
File "/home/travis/build/torproject/tor/stem/run_tests.py", line 92, in
log_traceback
for thread_name, stacktrace in
test.output.thread_stacktraces().items():
File "/home/travis/build/torproject/tor/stem/test/output.py", line 110,
in thread_stacktraces
stacktraces[thread.name] = ''.join(traceback.format_stack(frame))
================================================================================
control.controller...
}}}
https://travis-ci.org/torproject/tor/jobs/545543377#L4049
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/30235#comment:15>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list