If you have a DAG with `max_active_runs=1` and it is running some tasks, and then you manually trigger another run of this DAG, both runs end up not scheduling anything and you see this message over and over in the logs:

```
[2020-10-16 14:00:34,118]  2437572 {{airflow.jobs.scheduler_job.SchedulerJob scheduler_job.py:1657}} INFO - DAG scenario1_case2_01_1 already has 1 active runs, not queuing any more tasks
```

A longer term fix for this would be to introduce a "queued" state for DagRuns, and then when manually creating dag runs set it to queued, and only have the scheduler set DagRuns to running.

That may or may not be less work than fixing the current mechanism.
airflow/jobs/scheduler_job.py
"""
        The actual scheduler loop. The main steps in the loop are:
            #. Harvest DAG parsing results through DagFileProcessorAgent
            #. Find and queue executable tasks
                #. Change task instance state in DB
                #. Queue tasks in executor
            #. Heartbeat executor
                #. Execute queued tasks in executor asynchronously
                #. Sync on the states of running tasks
        Following is a graphic representation of these steps.
        .. image:: ../docs/img/scheduler_loop.jpg
        :rtype: None
        """
        if not self.processor_agent:
            raise ValueError("Processor agent is not started.")
        is_unit_test: bool = conf.getboolean('core', 'unit_test_mode')
        for loop_count in itertools.count(start=1):
            loop_start_time = time.time()
            if self.using_sqlite:
                self.processor_agent.run_single_parsing_loop()
                
                
                self.log.debug("Waiting for processors to finish since we're using sqlite")
                self.processor_agent.wait_until_finished()
            with create_session() as session: