Tighten up ConnectedWorker main loop

This commit is contained in:
Kovid Goyal 2017-08-05 23:21:14 +05:30
parent 8e0425134f
commit 847fe898d0
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
2 changed files with 5 additions and 7 deletions

View File

@ -283,6 +283,7 @@ class LoopTest(BaseTest):
status, result, tb, was_aborted = jm.job_status(job_id)
self.assertEqual(status, 'finished')
self.assertFalse(was_aborted)
self.assertTrue(tb), self.assertIn('a testing error', tb)
self.assertTrue(tb)
self.assertIn('a testing error', tb)
jm.start_job('simple test', 'calibre.srv.jobs', 'sleep_test', args=(1.0,))
jm.shutdown(), jm.wait_for_shutdown(monotonic() + 1)

View File

@ -38,13 +38,11 @@ class ConnectedWorker(Thread):
self.res = None
def run(self):
conn = tb = None
conn = None
try:
conn = eintr_retry_call(self.listener.accept)
except:
tb = traceback.format_exc()
if conn is None:
self.tb = tb
except BaseException:
self.tb = traceback.format_exc()
return
self.accepted = True
with closing(conn):
@ -324,4 +322,3 @@ def offload():
res['tb'] = traceback.format_exc()
eintr_retry_call(conn.send, res)