Skip to content
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

reduce overhead of performing repository indicator updates #5312

Closed
shiftkey opened this issue Aug 1, 2018 · 2 comments
Closed

reduce overhead of performing repository indicator updates #5312

shiftkey opened this issue Aug 1, 2018 · 2 comments
Assignees
Milestone

Comments

@shiftkey
Copy link
Member

shiftkey commented Aug 1, 2018

#5310 highlighted that the work to compute the new repository indicators doesn't scale to 100+ repositories. I'd like to review this feature and see if we can address these two goals:

  • avoid running the work concurrently (this background work shouldn't steal CPU time from the app or other tools)
  • run this less frequently (defer the first run until after the app has settled, and run it less frequently in the background)
@shiftkey
Copy link
Member Author

shiftkey commented Aug 1, 2018

@iAmWillShepherd and I talked about this a bit today, and it'd be nice to identify scenarios that we know we don't need to fetch here. #1252 came up because an API request is much cheaper than invoking Git to learn that it's up to date.

@shiftkey
Copy link
Member Author

shiftkey commented Aug 3, 2018

Just realised there was a reason why we ordered the background work to be done fetch first, then loadStatus and #5297 might mean that things are out of sync.

loadStatus also gets the ahead/behind information for the current branch for free, and fetch doesn't surface any information, so doing this in the wrong order now means you won't immediately see the ahead/behind details for your current branch.

I'd like to get a fix for this into 1.3.3 while we're in here refining things. I still like prioritizing status first, maybe there's a way to refresh the ahead/behind details inside GitStore?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants
@shiftkey @iAmWillShepherd and others