jhaabhijeet864 commented on issue #63715: URL: https://github.com/apache/airflow/issues/63715#issuecomment-5926607361
Hi @bbovenzi @pierrejeambrun @potiuk (and team), I’ve opened this PR to finally close out #63715. Before writing a single line of code, I spent time auditing the previous attempts at this (#61058) and specifically took your feedback into account to ensure this doesn't become another closed PR. I wanted to hand you a complete, production-ready package that eases your review burden. Here is how this implementation guarantees we don't hit the performance pitfalls of the previous attempts: 1. **Zero Client-Side Bloat**: We are no longer trying to fetch every task instance and filter it in React. This is a pure server-side implementation, meaning Gantt charts for massive DAGs will stay snappy and won't OOM the browser. 2. **Strict Index Preservation**: I noticed a previous attempt used `COALESCE(end_date, NOW())` which destroys index utilization and forces full table scans. I explicitly avoided this. The SQL logic here uses `or_(TaskInstance.end_date >= start_date_gte, TaskInstance.end_date.is_(None))`. This ensures running/queued tasks still render perfectly while keeping the database execution plan optimized. 3. **Clean OpenAPI Pipeline**: I've wired this seamlessly through `GridFilters.tsx` and updated the `gantt.py` endpoint. I intentionally avoided committing fragile manual patches to `openapi-gen/`; the CI's `openapi-merge-cli` pipeline will automatically pick up the new types. This should be a clean, low-risk drop-in that significantly improves the UX for large DAG executions. Looking forward to your thoughts! -- 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]
