The test fails quite regularly - usually in one of many jobs:

Example


https://github.com/apache/airflow/pull/12850/checks?check_run_id=1506517544

```
______________ TestSchedulerJob.test_scheduler_task_start_date ________________

self = <tests.jobs.test_scheduler_job.TestSchedulerJob testMethod=test_scheduler_task_start_date>

    def test_scheduler_task_start_date(self):
        """
        Test that the scheduler respects task start dates that are different from DAG start dates
        """
    
        dagbag = DagBag(dag_folder=os.path.join(settings.DAGS_FOLDER, "no_dags.py"), include_examples=False)
        dag_id = 'test_task_start_date_scheduling'
        dag = self.dagbag.get_dag(dag_id)
        dag.is_paused_upon_creation = False
        dagbag.bag_dag(dag=dag, root_dag=dag)
    
        # Deactivate other dags in this file so the scheduler doesn't waste time processing them
        other_dag = self.dagbag.get_dag('test_start_date_scheduling')
        other_dag.is_paused_upon_creation = True
        dagbag.bag_dag(dag=other_dag, root_dag=other_dag)
    
        dagbag.sync_to_db()
    
        scheduler = SchedulerJob(executor=self.null_exec, subdir=dag.fileloc, num_runs=2)
        scheduler.run()
    
        session = settings.Session()
        tiq = session.query(TaskInstance).filter(TaskInstance.dag_id == dag_id)
        ti1s = tiq.filter(TaskInstance.task_id == 'dummy1').all()
        ti2s = tiq.filter(TaskInstance.task_id == 'dummy2').all()
        self.assertEqual(len(ti1s), 0)
>       self.assertEqual(len(ti2s), 2)
E       AssertionError: 1 != 2

tests/jobs/test_scheduler_job.py:2415: AssertionError


```

tests/jobs/test_scheduler_job.py
)
            date = dag.following_schedule(date)
            ti1 = TaskInstance(task1, dr.execution_date)
            ti2 = TaskInstance(task2, dr.execution_date)
            tis.append(ti1)
            tis.append(ti2)
            ti1.refresh_from_db()
            ti2.refresh_from_db()
            ti1.state = State.SCHEDULED
            ti2.state = State.SCHEDULED
            session.merge(ti1)
            session.merge(ti2)
            session.flush()
        scheduler.max_tis_per_query = 2
        res = scheduler._critical_section_execute_task_instances(session)
        assert 2 == res
        scheduler.max_tis_per_query = 8
        with mock.patch.object(
            type(scheduler.executor), 'slots_available', new_callable=mock.PropertyMock
        ) as mock_slots:
            mock_slots.return_value = 2
            
            assert 2 == res
            res = scheduler._critical_section_execute_task_instances(session)
        res = scheduler._critical_section_execute_task_instances(session)
        assert 4 == res
        for ti in tis:
            ti.refresh_from_db()
            assert State.QUEUED == ti.state
    def test_execute_task_instances_unlimited(self):