[Webkit-unassigned] [Bug 61847] New: Worker may not be stopped after LT.
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Jun 1 01:48:01 PDT 2011
https://bugs.webkit.org/show_bug.cgi?id=61847
Summary: Worker may not be stopped after LT.
Product: WebKit
Version: 528+ (Nightly build)
Platform: Unspecified
OS/Version: Unspecified
Status: UNCONFIRMED
Severity: Normal
Priority: P2
Component: Tools / Tests
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: zhenghao at chromium.org
CC: tony at chromium.org, dpranke at chromium.org
In worker.py, only call to cleanup() is in __del__, which is not guaranteed to be called when the python interpreter exits. And self._driver is not killed after LT. After many runs of LT, there will be many zombie processes of driver. I think we need to run cleanup() explicitly for worker.
I'm not sure where is better to put cleanup():
def handle_stop(self, src):
self._done = True
** self.cleanup()
Or,
def run(self, port):
self.safe_init(port)
exception_msg = ""
_log.debug("%s starting" % self._name)
try:
self._worker_connection.run_message_loop()
if not self.is_done():
raise AssertionError("%s: ran out of messages in worker queue."
% self._name)
except KeyboardInterrupt:
exception_msg = ", interrupted"
except:
exception_msg = ", exception raised"
finally:
_log.debug("%s done%s" % (self._name, exception_msg))
if exception_msg:
exception_type, exception_value, exception_traceback = sys.exc_info()
stack_utils.log_traceback(_log.debug, exception_traceback)
# FIXME: Figure out how to send a message with a traceback.
self._worker_connection.post_message('exception',
(exception_type, exception_value, None))
self._worker_connection.post_message('done')
** self.cleanup()
I'd like to hear your comments.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list