Closed Bug 855681 Opened 12 years ago Closed 11 years ago

Try to get stacks from child processes that were alive after shutdown

Categories

(Testing :: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
mozilla23

People

(Reporter: emorley, Assigned: emorley)

References

Details

Attachments

(2 files)

To help debug bug 603147.
* Uses killAndGetStack() rather than killPid() * Passes in some now-required parameters to checkForZombies() * Tweaks parameters for killAndGetStack(), since we only have the process ID in checkForZombies(), not the process object.
Attachment #730645 - Flags: review?(ted)
Attached patch Part 2: PyflakesSplinter Review
Attachment #730646 - Flags: review?(ted)
https://tbpl.mozilla.org/?tree=Try&rev=c9d5ccae9936 However even after lots of retriggers, I still hadn't hit bug 603147, so no idea if the patches here actually work, or if they're actually a pile of nonsense. Same ol', same ol' :-)
Whiteboard: [needs review]
Comment on attachment 730645 [details] [diff] [review] Part 1: Get stacks Review of attachment 730645 [details] [diff] [review]: ----------------------------------------------------------------- ::: build/automation.py.in @@ +1024,5 @@ > return > elif self.IS_WIN32: > # We should have a "crashinject" program in our utility path > crashinject = os.path.normpath(os.path.join(utilityPath, "crashinject.exe")) > if os.path.exists(crashinject) and subprocess.Popen([crashinject, str(proc.pid)]).wait() == 0: This needs to be changed to processPID as well.
Attachment #730645 - Flags: review?(ted) → review+
Comment on attachment 730646 [details] [diff] [review] Part 2: Pyflakes Review of attachment 730646 [details] [diff] [review]: ----------------------------------------------------------------- Feel free to just fold these patches together. ::: build/automation.py.in @@ +1024,5 @@ > return > elif self.IS_WIN32: > # We should have a "crashinject" program in our utility path > crashinject = os.path.normpath(os.path.join(utilityPath, "crashinject.exe")) > + if os.path.exists(crashinject) and subprocess.Popen([crashinject, str(processPID)]).wait() == 0: This change should really be in the previous patch.
Attachment #730646 - Flags: review?(ted) → review+
Thank you for the review (yeah sorry that change was meant to be in the first patch); landed folded: https://hg.mozilla.org/integration/mozilla-inbound/rev/1c3872e0e292
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Flags: in-testsuite-
Resolution: --- → FIXED
Whiteboard: [needs review]
Target Milestone: --- → mozilla23
Hmm: 00:58:54 INFO - INFO | zombiecheck | Checking for orphan process with PID: 1732 00:58:54 INFO - INFO | zombiecheck | Checking for orphan process with PID: 1068 00:58:54 WARNING - TEST-UNEXPECTED-FAIL | zombiecheck | child process 1068 still alive after shutdown 00:58:54 INFO - Error 5 opening target process 00:58:54 INFO - Can't trigger Breakpad, just killing process
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
What OS was that?
Maybe crashinject just doesn't work on Win8?
(In reply to Ted Mielczarek [:ted.mielczarek] from comment #11) > Maybe crashinject just doesn't work on Win8? We're also seeing this on Win7 :-( https://tbpl.mozilla.org/php/getParsedLog.php?id=21631665&tree=Mozilla-Inbound#error0
I have another approach to getting minidumps I'm testing for bug 874647, simply calling MiniDumpWriteDump directly using ctypes: https://tbpl.mozilla.org/?tree=Try&rev=2dce007c810a We might be able to try that instead.
Depends on: 874647
The patches here landed, and other bugs are covering anything left -> closing out.
Status: REOPENED → RESOLVED
Closed: 12 years ago11 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: