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

[#8369] Refactor timeline method in AdminGeneralController #8458

Merged
merged 1 commit into from
Nov 22, 2024

Conversation

gbp
Copy link
Member

@gbp gbp commented Nov 19, 2024

Relevant issue(s)

Fixes #8369
Supersedes #8370

What does this do?

Refactor timeline method in AdminGeneralController

  • Introduce get_timeline_events method for improved timeline event fetching
  • Improve pagination handling for better performance limiting the amount of data loaded into memory
  • Optimize SQL queries using UNION ALL for combined event types
  • Separate logic for authority changes and info request events
  • Remove redundant code and simplify overall structure

Why was this needed?

Using the "All time" filter on the admin event timeline caused performance issues on sites with a large history.

Notes to reviewer

Found this branch locally work was done back in Aug.


[skip changelog]

- Introduce get_timeline_events method for improved timeline event
  fetching
- Improve pagination handling for better performance limiting the amount
  of data loaded into memory
- Optimize SQL queries using UNION ALL for combined event types
- Separate logic for authority changes and info request events
- Remove redundant code and simplify overall structure

Fixes #8369
@gbp gbp force-pushed the 8369-admin-timeline branch from d9116aa to c71395e Compare November 19, 2024 10:28
@gbp gbp merged commit b9fe64b into develop Nov 22, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Memory leak viewing all events in admin timeline
1 participant