Keycload bulk authorization sequential calls causing delay
- Dominant language
- Python
- Stars
- 46.9k
- Forks
- 17.8k
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 472
Description
### Description
When a user goes to the `/dags` screen, they are first greeted by the UI skeleton, with some loading indicators and no dags. This is because the FastAPI server is requesting authorisation for each dag object individually. For deployments where there are lots of dags this takes a long time, so users can be stuck waiting for the dags screen to be populated for long periods of time (1 minute+ in some cases).
### Use case/motivation
In order to make the `/dags` and other aggregate list view screens more usable, asynchronously load each dag onto the screen in a list while the authorisation is confirming access for the remaining dags. This allows users to get some information about the system state before the entire UI has loaded.
### Related issues
_No response_
### Are you willing to submit a PR?
- [ ] Yes I am willing to submit a PR!
### Code of Conduct
- [x] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)
Contributor guide
Research direction
Start by tracing the `/dags` screen and the FastAPI server path that requests authorization for each DAG object. Check how aggregate list views receive and render DAGs, then verify that authorized DAGs appear incrementally while remaining authorization checks continue; done means the screen no longer waits for every DAG before showing results.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- fastapi, python
- Domain
- backend, frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100