title: Airflow scheduling task "t2failure" depends on task t1
body: <pre><code>t1 = BashOperator(
      task_id='task_1',
      bash_command="Rscript Failure.R",
      dag=dag)
  
  t2 = BashOperator(
      task_id='task_2',
      bash_command="Rscript Success.R",
      dag=dag)
  
  t1fail = BashOperator(
      trigger_rule=TriggerRule.ONE_FAILED,
      task_id='task_1fail',
      bash_command="echo task1 failed",
      dag=dag)
  
  t2fail = BashOperator(
      trigger_rule=TriggerRule.ONE_FAILED,
      task_id='task_2fail',
      bash_command="echo task2 failed",
      dag=dag)
  
  tSuccess = BashOperator(
      task_id='t_Success',
      bash_command="echo task1 failed",
      dag=dag)
  
  t2.set_upstream(t1)
  tSuccess.set_upstream(t1, t2)
  t2fail.set_upstream(t2)
  t1fail.set_upstream(t1)
  </code></pre>
  
  <p>When task t1 fails to execute, ideal situation is t1fail is to be called.
  But what I get is the task t2fail is also being called, as the trigger is set to one failed. Is there a way i can make the task t2fail to start only when the task t2 runs and it fails.</p>