uranusjr commented on PR #48868:
URL: https://github.com/apache/airflow/pull/48868#issuecomment-2808730019

   Question about the `get_task_map_length` implementation: It seems that 
`filter()` does not change the length (since the call is simply passed onto the 
wrapped XComArg). This means for
   
   ```python
   @task
   def g():
       return [0] * 4
   
   @task
   def p(v):
       print(v)
   
   p.expand(v=g().filter(lambda x: x / 2))
   ```
   
   The scheduler would still create 4 task instances for `p`. What would happen 
in each task instance? Do `tis[1]` and `tis[3]` get skipped, or `tis[2]` and 
`tis[3]`? Or something else?
   
   ----
   
   Also I think it would be a good idea to split this into two PRs; one that 
solely do refactoring, and the other add `filter` and the related mechanism. 
This would make reviewing a lot easier.


-- 
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