getsentry / sentry

Developer-first error tracking and performance monitoring
https://sentry.io
Other
38.61k stars 4.13k forks source link

Lazy load on "Projects" page #29433

Open imitator2020 opened 2 years ago

imitator2020 commented 2 years ago

Problem Statement

Hi, as the project getting more and more, it takes long time to load the "Projects" page successfully. So I wonder if there can be a pagination button in the "Projects" page's bottom area. image Just like the "Issues" page did. image

Solution Brainstorm

Just add a Pagination Button would be nice, thanks sincerely。

getsentry-release commented 2 years ago

Routing to @getsentry/app-frontend for triage. ⏲️

chadwhitacre commented 2 years ago

Any ideas here @getsentry/app-frontend? Do we want to add pagination to projects?

imitator2020 commented 2 years ago

Any ideas here @getsentry/app-frontend? Do we want to add pagination to projects?

Or if there any other way to speed up the page loading will be fine too. Pagination is just a simple thought. Thanks a lot.

github-actions[bot] commented 2 years ago

This issue has gone three weeks without activity. In another week, I will close it.

But! If you comment or otherwise update it, I will reset the clock, and if you label it Status: Backlog or Status: In Progress, I will leave it alone ... forever!


"A weed is but an unloved flower." ― Ella Wheeler Wilcox 🥀

chadwhitacre commented 2 years ago

Sorry @imitator2020, we're a bit underwater on triage. We're actively trying to dig out, hopefully the right person can get to this soon!

chadwhitacre commented 2 years ago

@fanley-sentry I'm hearing from @souredoutlook that we might have a Jira about this already ... tl;dr poor performance on the projects page. Can you confirm that this is on our radar?

fanley-sentry commented 2 years ago

Hi @imitator2020! I did a little research for context on this issue and from what I found it doesn't look like we will be implementing pagination on the projects page in the near future. In the meantime, I suggest you take a look at our SaaS offering. The SaaS version uses lazy loading which removes the need for pagination.

chadwhitacre commented 2 years ago

The SaaS version uses lazy loading which removes the need for pagination.

I'm surprised we're lazy loading in SaaS but not in self-hosted. @imitator2020 Can you confirm this from the self-hosted side? If so, is this governed by a configuration knob or something?

getsentry-release commented 2 years ago

Routing to @getsentry/workflow for triage. ⏲️

imitator2020 commented 2 years ago

The SaaS version uses lazy loading which removes the need for pagination.

I'm surprised we're lazy loading in SaaS but not in self-hosted. @imitator2020 Can you confirm this from the self-hosted side? If so, is this governed by a configuration knob or something?

I checked it again and can confirm that there is no lazy loading on the self-hosted.
I am also surprised that there is lazy loading on Sass, and I hope to have lazy loading soon on self-hosting.

imitator2020 commented 2 years ago

Hi @imitator2020! I did a little research for context on this issue and from what I found it doesn't look like we will be implementing pagination on the projects page in the near future. In the meantime, I suggest you take a look at our SaaS offering. The SaaS version uses lazy loading which removes the need for pagination.

Thanks a lot, I will learn about the Sass version

chadwhitacre commented 2 years ago

I hope to have lazy loading soon on self-hosting.

Our intention is that every feature that's available on SaaS is also available on self-hosted, though sometimes it can be hidden behind a config that you need to enable.

@fanley-sentry Are you sure we lazy load in SaaS but not self-hosted? Can you share your research here? :)

scttcper commented 2 years ago

They should both have lazy loading and the code is very similar, however I would recommend updating to the latest version of sentry. The only advantage the SaaS offering would have is that we have a team that makes sure the database has enough resources to handle the large number of queries on that page. I do see that having a large number of projects 200+ under one team can cause a huge number of heavy requests as it loads project stats, for some extra large orgs it might take 12 seconds to be fully loaded.

I don't think we're going to add pagination, but it does seem like we could improve the lazy loading for teams with more projects.

chadwhitacre commented 2 years ago

Thanks @scttcper. We probably should have asked up front whether we were talking about self-hosted or SaaS. @fanley-sentry I'm not sure why you assumed in https://github.com/getsentry/sentry/issues/29433#issuecomment-973300053 that @imitator2020 was on self-hosted, but it looks like it was a correct assumption. 😅 Given that, I am going to go ahead and close this out as the system is working as designed given adequate operational resources.

chadwhitacre commented 2 years ago

it does seem like we could improve the lazy loading for teams with more projects.

Maybe I closed prematurely. Feel free to reopen @scttcper. 🐭

evanpurkhiser commented 2 years ago

It's likely what we'll be doing here in the future is more lazy-loading, instead of trying to load all of the projects right now. it's in the Core UI teams backlog, but not scheduled right now.

evanpurkhiser commented 2 years ago

Oh also, we don't have lazy-loading on this page right now at all no. It just waits for all projects to load, which is not ideal.

chadwhitacre commented 2 years ago

we don't have lazy-loading on this page right now at all

Lol oops! Okay. :)

Reopening and rescoping to lazy-loading for projects page (for all envs, natch—SaaS, ST, SH).

chadwhitacre commented 2 years ago

/me braces for bot ...