If it is passed a 'seconds' arg, the eventlet Timeout *constructor*
schedules the timeout to be raised after that many seconds, even
though the Timeout context manager has not need been entered.
A unit test (test.unit.proxy.controllers.test_obj.TestECFragGetter.
test_iter_bytes_from_response_part_read_timeout) was constructng a
ChunkReadTimeout and passing seconds=9. The test happens to be one of
the last to run, so the timeout fires during the pytest runner exit
rather than another test:
Error in atexit._run_exitfuncs: Traceback (most recent call last):
File
"/home/vagrant/.tox-swift/py38/lib/python3.8/site-packages/eventlet/greenthread.py",
line 36, in sleep hub.switch() File
"/home/vagrant/.tox-swift/py38/lib/python3.8/site-packages/eventlet/hubs/hub.py",
line 313, in switch return self.greenlet.switch()
swift.common.exceptions.ChunkReadTimeout: 9 seconds
The seconds value was irrelevant to the test other than to provide a
non-empty string representation of the Timeout.
Related-Change: I76ea042ef4b3f5cc1caa4774e35d6191f4ca548e
Change-Id: I5164a7e1d01a0f54983967f0db872c05928f904d