potiuk opened a new issue, #42990:
URL: https://github.com/apache/airflow/issues/42990

   This test is flaky:
   
   https://github.com/apache/airflow/actions/runs/11317119713/job/31470297914
   
   ```python
   =================================== FAILURES 
===================================
   _ 
test_setup_constraint_mapped_task_upstream_removed_and_success[3-True-removed] _
   
   dag_maker = <dev.tests_common.pytest_plugin.dag_maker.<locals>.DagFactory 
object at 0x7f65c1117e20>
   session = <sqlalchemy.orm.session.Session object at 0x7f65ba711d80>
   get_mapped_task_dagrun = <function 
get_mapped_task_dagrun.<locals>._get_dagrun at 0x7f6578ac3250>
   map_index = 3, flag_upstream_failed = True
   expected_ti_state = <TaskInstanceState.REMOVED: 'removed'>
   
       @pytest.mark.parametrize(
           "map_index, flag_upstream_failed, expected_ti_state",
           [(2, True, None), (3, True, REMOVED), (4, True, REMOVED), (3, False, 
None)],
       )
       def test_setup_constraint_mapped_task_upstream_removed_and_success(
           dag_maker,
           session,
           get_mapped_task_dagrun,
           map_index,
           flag_upstream_failed,
           expected_ti_state,
       ):
           """
           Dynamically mapped setup task with successful and removed upstream 
tasks. Expect rule to be
           successful. State is set to REMOVED for map index >= n success
           """
           dr, _, setup_task = get_mapped_task_dagrun(add_setup_tasks=True)
       
           ti = dr.get_task_instance(task_id="setup_3", map_index=map_index, 
session=session)
           ti.task = setup_task
       
   >       _test_trigger_rule(
               ti=ti,
               session=session,
               flag_upstream_failed=flag_upstream_failed,
               expected_ti_state=expected_ti_state,
           )
   
   tests/ti_deps/deps/test_trigger_rule_dep.py:1518: 
   _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ 
   
   ti = <TaskInstance: test_dag.setup_3 test map_index=3 [None]>
   session = <sqlalchemy.orm.session.Session object at 0x7f65ba711d80>
   flag_upstream_failed = True, wait_for_past_depends_before_skipping = False
   expected_reason = '', expected_ti_state = <TaskInstanceState.REMOVED: 
'removed'>
   
       def _test_trigger_rule(
           ti: TaskInstance,
           session: Session,
           flag_upstream_failed: bool,
           wait_for_past_depends_before_skipping: bool = False,
           expected_reason: str = "",
           expected_ti_state: TaskInstanceState | None = None,
       ) -> None:
           assert ti.state is None
           dep_statuses = tuple(
               TriggerRuleDep()._evaluate_trigger_rule(
                   ti=ti,
                   dep_context=DepContext(
                       flag_upstream_failed=flag_upstream_failed,
                       
wait_for_past_depends_before_skipping=wait_for_past_depends_before_skipping,
                   ),
                   session=session,
               )
           )
           if expected_reason:
               assert len(dep_statuses) == 1
               assert not dep_statuses[0].passed
               assert expected_reason in dep_statuses[0].reason
           else:
   >           assert not dep_statuses
   E           assert not (TIDepStatus(dep_name='Trigger Rule', passed=False, 
reason="Task's trigger rule 'all_success' requires all upstream ta...ailed=0, 
removed=4, done=10, success_setup=6, skipped_setup=0), 
upstream_task_ids={'setup_3', 'setup_1', 'setup_2'}"),)
   
   tests/ti_deps/deps/test_trigger_rule_dep.py:1645: AssertionError
   ```


-- 
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: commits-unsubscr...@airflow.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to