-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
[$500] Android - Chat - Trying to paste onyx data of #applause.expensifail.com chat app freezes #46766
Comments
Triggered auto assignment to @kevinksullivan ( |
We think that this bug might be related to #vip-vsp |
@kevinksullivan FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors |
We think that this bug might be related to |
@kevinksullivan Whoops! This issue is 2 days overdue. Let's get this updated quick! |
@kevinksullivan Huh... This is 4 days overdue. Who can take care of this? |
I don't know where this fits roadmap wise, since it's just general chat troubleshooting. |
Job added to Upwork: https://www.upwork.com/jobs/~01d242239866ebb6cc |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @c3024 ( |
will just put external on it for now to see if it is a quick fix. |
This works well with chats on my account. I guess this bug happens because a lot of data is pasted at once. Could you paste the data in a notepad and share the text file? Does pasting this data work well on other platforms? |
@c3024 |
Waiting for proposals |
@kevinksullivan, @c3024 Uh oh! This issue is overdue by 2 days. Don't forget to update your issues! |
Waiting for proposals! |
Expensify/react-native-live-markdown#504 @tomekzaw live MD PR is ready for review. |
@Julesssss, @sonialiap, @kevinksullivan, @c3024, @dominictb Uh oh! This issue is overdue by 2 days. Don't forget to update your issues! |
PR raised |
@Julesssss, @sonialiap, @c3024, @dominictb Uh oh! This issue is overdue by 2 days. Don't forget to update your issues! |
@Julesssss, @sonialiap, @c3024, @dominictb Still overdue 6 days?! Let's take care of this! |
Expensify/react-native-live-markdown#505 is merged. Will open PR on E/App by today. |
#49228 solution updated here. Will update the evidence and open the PR later. |
Update: The solution works on Web and Desktop, on iOS (mWeb/native) somehow it's really slow (my simulator) - it seems like coming from the |
@Julesssss, @sonialiap, @c3024, @dominictb 8 days overdue is a lot. Should this be a Weekly issue? If so, feel free to change it! |
App PR is about to be finalized, Melvin! |
@tomekzaw sorry for disturbing you, but after applying the
Thanks a lot! cc @c3024 |
@tomekzaw actually, what I observe further: We are re-parsing the entire input on every keystroke, and that's expensive operation given that the current input text is long (around 5000 characters). I tested on MacOS Chrome and couldn't even fast typing around that length. |
@dominictb That's true, there are some performance issues when typing long messages. Not sure if it's caused by ExpensiMark.js algorithm or platform-specific formatting implmementation. One way would be to re-apply spans only if any change is detected. This something we'd like to address sometime in the future. |
@tomekzaw @Julesssss @c3024 I'm a bit in a dilemma of the final solution here. The current solution is to limit The situation is like this: on Desktop Chrome/Safari, it's a bit laggy when we fast typing, and on Android/iOS (web/native), the app lags but not freezes (by definition the issue is solved), but the experience is not smooth. Simulator.Screen.Recording.-.iPhone.15.Pro.Max.-.2024-11-01.at.16.40.32.mp4Ideally, we should address #46766 (comment). One workaround is to set another limit on live markdown's parser to less than 5000 (or even less). This basically means: if you paste the text length > 5000, the parser doesn't parse, i.e the app will be smooth. But if the text length is 4900-ish, the app will lag a bit as now the parser will parse the whole text. Please advise! |
Hey @dominictb, yeah it's tough because it seems there's no magic number at which performance is stable on all platforms. I liked the original proposal and I would be happy to do something like this:
@dominictb it looks like release version is back up to |
This issue has not been updated in over 15 days. @Julesssss, @sonialiap, @c3024, @dominictb eroding to Monthly issue. P.S. Is everyone reading this sure this is really a near-term priority? Be brave: if you disagree, go ahead and close it out. If someone disagrees, they'll reopen it, and if they don't: one less thing to do! |
Thanks @Julesssss I have noted that and updated my branch
@tomekzaw given that the Expensify/react-native-live-markdown#439 is nowhere near to merged soon, could I update the parser in the |
Here's the most recent update on #439: #50949 (comment)
Okay, let's do it. |
Sounds good. @c3024 are you happy with the plan? |
Yes, that sounds good! |
PR Expensify/react-native-live-markdown#542 has been merged. |
on my way to update the the E/App PR now. |
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Version Number: 9.9.16
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Issue reported by: Applause - Internal Team
Action Performed:
Expected Result:
Trying to paste onyx data of #applause.expensifail.com chat app must not freeze
Actual Result:
Trying to paste onyx data of #applause.expensifail.com chat app freezes and shows not responding pop up box
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
Bug6560837_1722668432456.Screenrecorder-2024-08-03-12-23-52-882_compress_1.mp4
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @c3024The text was updated successfully, but these errors were encountered: