Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PACKAGE_INSTALLATION_FAILURE happening on some Android work items #597

Closed
steveisok opened this issue May 13, 2021 · 7 comments · Fixed by #609
Closed

PACKAGE_INSTALLATION_FAILURE happening on some Android work items #597

steveisok opened this issue May 13, 2021 · 7 comments · Fixed by #609
Assignees
Labels
android Android area device Related to a real HW device infrastructure Connected to Helix infrastructure

Comments

@steveisok
Copy link
Member Author

It looks like this might be machine/device specific. Namely DNCENGWIN-020 & DNCENGWIN-022

@greenEkatherine
Copy link
Contributor

I logged in 4 machines to check. DNCENGWIN-50 and DNCENGWIN-120 were affected but they are ok now. DNCENGWIN-20 and DNCENGWIN-71 were not resolved. I see that there are adb server running on them and I think this is the root cause. It may not be killed since previous run so when we get this error we should try to kill it, then start and try to install apk.

@greenEkatherine greenEkatherine self-assigned this May 24, 2021
@premun
Copy link
Member

premun commented May 24, 2021

This is a nice find.

Side note: In iOS we kill the Simulator.app in Helix SDK before the work item starts - if you confirm that already running/hanging adb process is the cause, it's totally fine killing before every work item just to be sure.

So you should decide where you draw the line between what XHarness does and what is the desired machine state and put that in the layer that is Helix SDK. Maybe developers using XHarness don't want their ADB servers to be killed because they have some other things running or maybe they would actually appreciate.

@greenEkatherine
Copy link
Contributor

What if to kill adb only in case when adb install command returns time out? We do it now but in case when install returns broken pipe

@premun
Copy link
Member

premun commented May 24, 2021

Yeah, sure, makes sense then. I don't know the Android world much so just adding my two cents. If we already handle adb like this then it's good to do the same for this case as well

@greenEkatherine
Copy link
Contributor

I cannot reproduce it to test my fix, so will compare statistics after merge. I considered three types of solutions for this issue:

  1. Increase adb timeout - but it is set up to 5 mions and it should be enough
  2. Restart adb (my fix)
  3. Change usb port - I think it is not the case because there are no machines where all installations are timed out

@greenEkatherine
Copy link
Contributor

Version with fix 21275.2

@premun premun added the device Related to a real HW device label Jun 30, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
android Android area device Related to a real HW device infrastructure Connected to Helix infrastructure
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants