Closed
Bug 583022
Opened 15 years ago
Closed 15 years ago
All calls to adb should be guarded against hanging
Categories
(Tamarin Graveyard :: Tools, defect)
Tracking
(Not tracked)
VERIFIED
FIXED
Q3 11 - Serrano
People
(Reporter: brbaker, Assigned: brbaker)
Details
(Whiteboard: buildbot)
Attachments
(2 files)
14.37 KB,
patch
|
dschaffe
:
review+
|
Details | Diff | Splinter Review |
1.47 KB,
patch
|
cpeyer
:
review+
|
Details | Diff | Splinter Review |
We have seen a lot of 'adb' calls hang during the build testing process. All calls to execute the vm shell and abc files during acceptance running was addressed in bug# 576599, however we are occasionally seeing other 'adb shell' calls hang (mainly I have seen the 'adb shell chmod +x /data/app/avmshell' hang).
All calls to adb should be called via a killableprocess (python) so that it can be stopped and recalled if necessary.
Flags: flashplayer-triage+
Flags: flashplayer-qrb?
Assignee | ||
Comment 1•15 years ago
|
||
Replace all naked calls to adb with adb_proxy which calls adb via a killableprocess. This will timeout after ADB_TIMEOUT (env var) and will retry ABD_MAX_ATTEMPTS (env var) number of times.
Attachment #461544 -
Flags: review?(dschaffe)
Comment 2•15 years ago
|
||
Is there an android bug we can log regarding this intermittent behavior?
Updated•15 years ago
|
Attachment #461544 -
Flags: review?(dschaffe) → review+
Assignee | ||
Comment 3•15 years ago
|
||
Comment on attachment 461544 [details] [diff] [review]
replace all adb calls with adb_proxy.py calls
patch pushed as 4960:b9cbe2950dee
Assignee | ||
Updated•15 years ago
|
Assignee: nobody → brbaker
Status: NEW → ASSIGNED
Flags: flashplayer-qrb? → in-testsuite-
Target Milestone: --- → flash10.2
Assignee | ||
Updated•15 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Assignee | ||
Updated•15 years ago
|
Status: RESOLVED → VERIFIED
Assignee | ||
Comment 4•15 years ago
|
||
We have seen the following error happen in the build system, so guard against this error and just treat like a timeout and retry the call:
Traceback (most recent call last):
File "platform/android/android_shell.py", line 85, in <module>
stdout=adb_proxy.main(["%s push %s /data/app/%s" % (adbargs,arg,flatfile)])
File "platform/android/adb_proxy.py", line 76, in main
p.wait(ADB_TIMEOUT)
File "platform/android/killableprocess.py", line 220, in wait
self.kill(group)
File "platform/android/killableprocess.py", line 177, in kill
os.killpg(self.pid, signal.SIGKILL)
OSError: [Errno 3] No such process
Attachment #480892 -
Flags: review?(cpeyer)
Updated•15 years ago
|
Attachment #480892 -
Flags: review?(cpeyer) → review+
Assignee | ||
Comment 5•15 years ago
|
||
Comment on attachment 480892 [details] [diff] [review]
guard against trying to kill a process that has already completed
patch pushed as 5323:a837d40687b9
You need to log in
before you can comment on or make changes to this bug.
Description
•