-
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
[HOLD for payment 2024-06-28] [$250] [CRITICAL] [UX Reliability] The chat finder page shows duplicated result for a moment #43094
Comments
Job added to Upwork: https://www.upwork.com/jobs/~0157768929ce5b2314 |
Triggered auto assignment to @dylanexpensify ( |
Triggered auto assignment to Contributor-plus team member for initial proposal review - @ahmedGaber93 ( |
I think it's a dupe of #43049 |
Hey, I'm Edu from Callstack, I can take this issue |
@gedu I already had the proposal in #43049 (comment). cc @ahmedGaber93 |
Nice @gedu can you check out the proposal if it matches your findings? |
@tienifr your solution is works, but I think your RCA is not correct, log |
This proposal from 2 min ago #43049 (comment) in the other issue add RTC about what I am thinking. But I think we no longer accept new proposals now after the agency member requests to work on this. Also, I'm still not sure if this is the desired fix |
ProposalPlease re-state the problem that we are trying to solve in this issue.After creating a room and searching for it, the room is displayed twice in the search results (no cache). What is the root cause of that problem?There are two What changes do you think we should make in order to solve the problem?Since the first What alternative solutions did you explore? (Optional)Before pushing the missing report ID found by the filter, in the second useEffect, check if the reportID is already in the option list. I tested some older issues, like the #39705 and the main fix doesn't cause a regression on that side, I'm not sure if there is another bug to address |
@ahmedGaber93 pls check mine #43049 (comment) |
@dragnoir Sorry, We no longer accept new proposals after the agency member requests to work on this. I just will review proposals before that. |
@ahmedGaber93 thank you 🥰 |
I think this issue is a regression from #41636 which delete the return early on the first - const lastUpdatedReport = ReportUtils.getLastUpdatedReport();
- if (!lastUpdatedReport) {
- return;
- }
@gedu I agree, we need to make sure the new report is handled once, but not necessarily we need to unify the two useEffect, we can also keep them separator and prevent interference between them. @gedu Can you share how you do that?
I think this will always cancel the second |
Since we have 2 useEffects and the first useEffect already update the newest reports. But we are not sure about the reports of second useEffect is up-to-date that why we have the logic to find the missingReportIDs before. |
Yeah, but |
The RCA here is we have two
@dylanexpensify As no proposal is accepted yet, let's assign @gedu from callstack. 🎀 👀 🎀 C+ reviewed |
Triggered auto assignment to @Beamanator, see https://stackoverflow.com/c/expensify/questions/7972 for more details. |
📣 @ahmedGaber93 🎉 An offer has been automatically sent to your Upwork account for the Reviewer role 🎉 Thanks for contributing to the Expensify app! |
@gedu Yes, but this is part of the regression by #41636 that we need to fix it here This regression remove the return early in the first useEffect and this caused the current issue and also the performance issue, so I think after fix it, the both issues should be fixed. Can you please take a look into #41636 changes to understand what I mean. |
Yes, I will take a look, sorry for the ping pong question, trying to wrap my head on this because with just one |
@ahmedGaber93 I'm trying to find a way to prevent the first I will try tomorrow other possibilities, probably check if we can improve the performance of |
@gedu Great investigation 👍, I think it would be great if we can find a solution that updates the affected reports only and not the whole list. |
@ahmedGaber93 I created a new function to listen when a report changes, I listen to them individually so I can save them into a Set and when I use the updated IDs I clear the Set. That way when a report changes I can know which one change, I delete it from the prevReports, and the second I would start by considering my proposal to unify and update the list continuously. Additionally, I will work on a follow-up PR to improve the performance of the |
@ahmedGaber93 I make my PR ready for review #43164 |
waiting for regression period |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.0.0-9 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2024-06-28. 🎊 For reference, here are some details about the assignees on this issue:
|
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
Regression Test Proposal
Do we agree 👍 or 👎 |
Payment summary:
Please apply, request! |
Done! |
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Version Number:
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @quinthar
Slack conversation: https://expensify.slack.com/archives/C05LX9D6E07/p1717508731782149
Action Performed:
Break down in numbered steps
Expected Result:
Describe what you think should've happened
There should only be one row for that chat
Actual Result:
Describe what actually happened
The specific chat is duplicated in the search results
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @dylanexpensifyThe text was updated successfully, but these errors were encountered: