-
Notifications
You must be signed in to change notification settings - Fork 3.1k
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
[$4000] Android - Infinite loading spinner appears when sign in to the app leaving idle for 10 min after sign out #7424
Comments
👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open
|
Triggered auto assignment to @thienlnam ( |
Looking into logs and recent issues that might have caused this, seeing a couple things in logs
Also considering it's loading spinner it seems like it is related to Onyx stuff |
Looks like this is most likely related - cc @luacmartins |
It could be, but seems kind of odd. Have you been able to reproduce this on dev? |
Agreed, I'm not able to get my android simulator working right now so unfortunately not. There have also been a couple Onyx updates that could be the problem but this one seemed most related to the sign in / sign out flow |
@kavimuru Could you please try to reproduce this? I'm having issues with my dev and wanted to make sure it is happening consistently and is not a one-off |
EDIT: Looks like it was also reproducible on A11 so it is not OS specific |
Looking into logs on the account applausetester+0901abb@applause.expensifail.com - From the video it looks like we aren't even getting to the splash screen so I've narrowed it down to a couple of areas Lines 163 to 176 in 45f5e38
or some kind of error in the app init that causes us to hide the splash screen App/src/components/ErrorBoundary/BaseErrorBoundary.js Lines 38 to 43 in 45f5e38
|
@thienlnam I'll take a look when I can |
Issue is not consistently repro for everyone. but we were able to repro with 2 different tester/devices |
This is currently a blocker for the deployment, any updates? |
I couldn't recreate on emulator with my dev test accounts (Android 10) |
It's not a consistently produceable issue, so I'm not sure if it is a blocker. Can't tell if this is also re-produceable in production |
I just tried on my device, and was unable to replicate, my version was 1.1.33-3 though. Not sure if that is important. |
@sketchydroide we are checking new build |
@sketchydroide @thienlnam out of 6 testers 3 were able to repro on the latest build. Additional accounts used to validate Screen_Recording_20220131-154042_New.Expensify.mp4screen-20220131-160138.1.mp4 |
@kidroca any discoveries? @AndrewGable @thienlnam, @sketchydroide it has been 7 days since last deploy. Anything can be done to expedite or downgrade this issue? |
Talked with @thienlnam about this and we're going to demote it from deploy blocker to regular bug. Since we can't reproduce it, we won't be able to quickly fix it, and we don't want to continue holding up the deploy. @mvtglobally Please add this to weekly KI retests. Also, let's make this external and get more eyes on it? It seems likely that it's related to Onyx or network code, so seems like something in @kidroca's wheelhouse. |
Just saw this getting deployed to production: #7370 (comment) it was related to infinite loading when null was set on Onyx affecting iOS and Android It could be related, though I see that the issue is reported to be seen in staging and not prod |
Not much other context, but based on where it's located - the reports either never loaded for these users or there was an issue processing the response. Will try to see if there are any stalled network requests. |
@parasharrajat hired you for C+ compensation for reviewing @kidroca 's PR that he got compensated for. Can you please accept the offer I sent? https://www.upwork.com/jobs/~01bea655d1a3ea7f17 |
@thienlnam do you think we have enough context from the logs to put this back into the Help Wanted pool as Rajat suggested? |
@kadiealexander Yeah let's put this back in the Help Wanted pool. We have some logs as Marc posted that may help provide some information that can be used as a starting point for an investigation. I'll continue posting new logs weekly. |
Added the label! |
@thienlnam - should we double the $? |
@thienlnam I think I managed to reproduce this today on iOS dev while testing an unrelated PR. Sorry if this is already known, I just quickly skimmed through this conversation. Steps:
video.movLogs:
|
Nice catch. |
@jliexpensify Let's double this bounty @luacmartins Awesome, that's super helpful - added it to the OP to help others reproduce |
Just want to add that if we think this is related to the retry logic (looks like @luacmartins comments suggests it could be) then we should not accept any proposals to change it as we're in the midst of overhauling the entire system. |
Following the shared steps #7424 (comment) For some reason
This prevent further network calls and we never fully fetch report data This seems to be a simulator only thing as it's not recreatable on physical device |
From logs it looks like the most likely cause of the infinite spinner is not having reports loaded: App/src/libs/Navigation/AppNavigator/MainDrawerNavigator.js Lines 51 to 53 in db7c93f
Is there a way to cross reference the logs for some App/src/libs/actions/Report.js Lines 1000 to 1007 in 3fc95c6
And/or some errors along the way that prevented to merge (or have) reports here: App/src/libs/actions/Report.js Line 422 in 3fc95c6
If that line of code is never reached we'll be stuck on the spinner. |
Since after login we're starting with a clean Onyx state, this network call is essential to init and we need to do something to handle it better, because without it there are no reports and no sidebar
Maybe we could use the MainDrawer loading indicator here App/src/libs/Navigation/AppNavigator/MainDrawerNavigator.js Lines 51 to 53 in db7c93f
and enhance it with a
Pros:
Cons:
Maybe we can come up with something better, if the logs review more leads |
Doubled the job listed here, get those proposals in! |
NetInfo has a known bug on iOS simulator so I'm not sure if I trust that what @luacmartins found is related at all.
Yes we can do this. When I looked last time nothing jumped out at me and the requests were returning 200 |
Job doubled here, please get your proposals in! https://www.upwork.com/ab/applicants/1515835444097523712/job-details |
Issue not reproducible during KI retests. (First week) |
Interesting ⬆️ |
Maybe we should close this issue and reopen it if it's still a problem? Don't really see why we would keep doubling the price of an issue that has no reproduction and isn't happening consistently... but that's just me... 🙃 |
@mallenexpensify This is still pending. Thank you. I applied to the job. |
I'm a lil confused, want to confirm
|
yes |
Paid @parasharrajat $250, thanks for the help! |
@mallenexpensify |
Thanks @kidroca . Issue is already closed so... 👋 |
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Action Performed:
Launch the app
Log in with applausetester+0901abb@applause.expensifail.com
In LHN find the user applausetester+1226abb@applause.expensifail.com
Send Message to applausetester+1226abb@applause.expensifail.com
Go to Setting and log out
Leave the New Expensify app for about 10-15 minutes
Back again to New Expensify app and log in with applausetester+0901abb@applause.expensifail.com
Expected Result:
Log in with account
Actual Result:
Infinite loading when left app idle for 10 min after logout
Workaround:
Unknown
Platform:
Where is this issue occurring?
Version Number: 1.1.33.2
Reproducible in staging?: Yes
Reproducible in production?: No
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:
Expensify/Expensify Issue URL:
Bug5424233_Screen_Recording_20220126-124622_New_Expensify.mp4
Issue reported by: Applause
Slack conversation:
View all open jobs on GitHub
The text was updated successfully, but these errors were encountered: