Expensify / App

Welcome to New Expensify: a complete re-imagination of financial collaboration, centered around chat. Help us build the next generation of Expensify by sharing feedback and contributing to the code.
https://new.expensify.com
MIT License
3.53k stars 2.88k forks source link

[HOLD for payment 2024-05-06] [$500] [Wave Collect] [Ideal Nav] Chat List and Workspace List sometimes loads slowly & App sometimes hangs #35704

Closed hayata-suenaga closed 5 months ago

hayata-suenaga commented 9 months ago

Action Performed:

Reported by David here, here, and here

This issue has two aspects:

The Chat List and Workspace List loads sometimes loads too slow

  1. Make sure you have an account with a lot of chats and workspaces
  2. Click the Chats button on the bottom tab
  3. Confirm that the list of chats load very slow
  4. Click the 🔧 Settings button in Expensify/All workspace > Workspaces
  5. Confirm that the list of workspaces load very slow

Another performance issue was reported by David -> internal Slack thread where David posted the issue

  1. Make sure your account has several workspaces with a lot of chats/reports
  2. Open the Chat Switcher (Search Page) by pressing CMD + K
  3. Switch to a different chat/person (possibly one in a different workspace
  4. Observe that the LHN that displays the list of chats loads very slowly

The App sometimes hangs

This issue doesn't have any defined reproduction step. David reported that he sometimes get the browser popup error saying that the page is unresponsive. Please see the screenshot below. This issue was initially reported in this GH issue.

Screenshot 2024-02-05 at 3 00 37 PM

Workaround:

N/A

Platforms:

Which of our officially supported platforms is this issue occurring on?

Screenshots/Videos

Screenshot -> https://expensify.slack.com/archives/C036QM0SLJK/p1706901348693069?thread_ts=1706887969.154719&cid=C036QM0SLJK

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01e122c7e0ae0d76b5
  • Upwork Job ID: 1753562635025690624
  • Last Price Increase: 2024-04-23
  • Automatic offers:
    • cubuspl42 | Reviewer | 28142256
hayata-suenaga commented 8 months ago

@hurali97 is going to take over where @jbroma left off

lschurr commented 8 months ago

Any update @hurali97?

hayata-suenaga commented 8 months ago

we're waiting for C+ review for the RP. bumped the assigned C+ in the contributor Slack channel.

cubuspl42 commented 8 months ago

Thanks everyone for fruitful discussions and all the actions. To be honest, I'm far from being up-to-date on this issue, but it seems that we're now holding on:

lschurr commented 8 months ago

I think this is still on hold, correct @hayata-suenaga @cubuspl42?

hayata-suenaga commented 8 months ago

this issue is actually not on hold

the PR @cubuspl42 linked is actually our PR. @situchan is reviewing the PR now

cubuspl42 commented 8 months ago

Ouch, sorry 🙈

hayata-suenaga commented 8 months ago

no problem at all 😄 I'm also always confused on where each issue is going with so many issues on hand 😅

lschurr commented 7 months ago

Looks like the PR is still in review.

lschurr commented 7 months ago

PR is still in review.

hayata-suenaga commented 7 months ago

we're still reviewing the PR 👍

lschurr commented 7 months ago

Looks like the PR is still in review.

hayata-suenaga commented 7 months ago

holding this issue on the migration for New Architecture

lschurr commented 7 months ago

This is on hold.

lschurr commented 6 months ago

On hold.

hayata-suenaga commented 6 months ago

The migration to Fabric has finished. Removing the hold

melvin-bot[bot] commented 6 months ago

Triggered auto assignment to Contributor Plus for review of internal employee PR - @ntdiary (Internal)

mallenexpensify commented 6 months ago

@ntdiary reassigning, please take over as C+. If you don't have bandwidth, unassign yourself. Thanks

melvin-bot[bot] commented 6 months ago

Upwork job price has been updated to $500

ntdiary commented 6 months ago

@ntdiary reassigning, please take over as C+. If you don't have bandwidth, unassign yourself. Thanks

Unassign myself due to lack of bandwidth. :)

melvin-bot[bot] commented 6 months ago

The solution for this issue has been :rocket: deployed to production :rocket: in version 1.4.67-7 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:

If no regressions arise, payment will be issued on 2024-05-06. :confetti_ball:

For reference, here are some details about the assignees on this issue:

melvin-bot[bot] commented 6 months ago

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:

hayata-suenaga commented 6 months ago

[@hayata-suenaga] The PR that introduced the bug has been identified. Link to the PR:

The performance regression happens with different changes and due to past architectural decisions. One change that affected this was the introduction of a cache for the sorted report IDs that required the string cache key to be compared on each render. However, because the cache key changes almost all the time, this cache wasn't used at all.

[@hayata-suenaga] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:

No specific PR.

[@hayata-suenaga] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:

https://expensify.slack.com/archives/C049HHMV9SM/p1714496660088649

lschurr commented 6 months ago

Payment summary:

lschurr commented 6 months ago

Bump on that offer @situchan :)

lschurr commented 6 months ago

Waiting on @situchan to accept.

lschurr commented 5 months ago

All paid!