jhtimmins commented on issue #23512: URL: https://github.com/apache/airflow/issues/23512#issuecomment-1154822554
@arroadie I semi-agree. Off hand, here are the basic reasons why it works this way. 1. In part it's that way bc it's a holdover from using Flask and Flask AppBuilder within Airflow. Modifying that would take a decent amount of work. 2. Airflow generally tries to decouple pieces as much as possible. Your proposal would create a situation where the webserver permissions being up to date would depend on the scheduler running. 3. If permissions load properly, the current design should guarantee that they're always up to date as soon as the webserver loads, and DB reads/writes should only occur once. Obviously this broke down here. So while I'm not aware of your proposed approach being explicitly considered, these are some of the design considerations that support the current design. While it's imperfect, when it works, this approach gives good enough performance and enough flexibility. That said, there's no reason that it _has_ to work this way, and there are downsides to this approach, such as the slower startup time for the webserver. If you encounter significant problems with the design, especially with multiple webservers, or have suggestions about better architectures, I encourage you to reach out to the community via the mailing list. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
