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]

Reply via email to