[CP Staging] Fix race condition in onyx to stop app crashing when opening a new thread#28440
[CP Staging] Fix race condition in onyx to stop app crashing when opening a new thread#28440mountiny merged 3 commits intoExpensify:mainfrom
Conversation
|
@cubuspl42 Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
|
Native app crashes right away after opening Screen.Recording.2023-09-29.at.8.42.40.AM.mov |
We should still fix this for native as it crashes |
|
Seems the issue is a previously merged PR Expensify/react-native-onyx#353. Please hold on for a bit as we untangle onyx and this PR gets updated. |
|
I don't think this is related to this PR but empty screen shows after navigation empty.mov |
Reviewer Checklist
Screenshots/VideosWebweb.movMobile Web - ChromeMobile Web - SafariDesktopiOSios.movios-reply.movAndroid |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
[CP Staging] Fix race condition in onyx to stop app crashing when opening a new thread (cherry picked from commit 1ac2582)
|
🚀 Cherry-picked to staging by https://github.com/mountiny in version: 1.3.75-2 🚀
@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes. |
|
🚀 Deployed to production by https://github.com/mountiny in version: 1.3.75-12 🚀
|
|
🚀 Deployed to staging by https://github.com/mountiny in version: 1.3.77-0 🚀
|
|
🚀 Deployed to production by https://github.com/mountiny in version: 1.3.77-7 🚀
|
Details
Fixes upstream error because of race condition inside of onyx.
Attached a video showing the chat loads correctly now. There is however a new error which doesn't seem related to my changes (from quick-sqlite NOT NULL constraint failed).
Fixed Issues
$ #28419
PROPOSAL:
Tests
Offline tests
QA Steps
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)myBool && <MyComponent />.src/languages/*files and using the translation methodWaiting for Copylabel for a copy review on the original GH to get the correct copy.STYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)/** comment above it */thisproperly so there are no scoping issues (i.e. foronClick={this.submit}the methodthis.submitshould be bound tothisin the constructor)thisare necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);ifthis.submitis never passed to a component event handler likeonClick)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Web
Mobile Web - Chrome
Mobile Web - Safari
Desktop
iOS
Simulator.Screen.Recording.-.iPhone.SE.3rd.generation.-.2023-09-29.at.09.01.25.mp4
Android