**Apache Airflow version**:
2.0.1

**Kubernetes version**:
Server Version: version.Info{Major:"1", Minor:"18+", GitVersion:"v1.18.9-eks-d1db3c", GitCommit:"d1db3c46e55f95d6a7d3e5578689371318f95ff9", GitTreeState:"clean", BuildDate:"2020-10-20T22:18:07Z", GoVersion:"go1.13.15", Compiler:"gc", Platform:"linux/amd64"}

**What happened**:
Clearing a failed subdag task with Downstream+Recursive does not automatically set the state of the parent dag to 'running' so that the downstream parent tasks can execute.

The work around is to manually set the state of the parent dag to running after clearing the subdag task

**What you expected to happen**:
With airflow version 1.10.4 the parent dag was automatically set to 'running' for this same scenario

**How to reproduce it**:
- Clear a failed subdag task selecting option for Downstream+Recursive
- See that all down stream tasks in the subdag as well as the parent dag have been cleared
- See that the parent dag is left in 'failed' state. 

tests/models/test_dag.py
TEST_DATE == dag_run.execution_date
        ), f'dag_run.execution_date did not match expectation: {dag_run.execution_date}'
        assert State.RUNNING == dag_run.state
        assert not dag_run.external_trigger
        dag.clear()
        self._clean_up(dag_id)
    @patch('airflow.models.dag.Stats')
    def test_dag_handle_callback_crash(self, mock_stats):
        """
        Tests avoid crashes from calling dag callbacks exceptions
        """
        dag_id = "test_dag_callback_crash"
        mock_callback_with_exception = mock.MagicMock()
        mock_callback_with_exception.side_effect = Exception
        dag = DAG(
            dag_id=dag_id,
            
            on_success_callback=lambda: 1,
            on_failure_callback=mock_callback_with_exception,
        )
        when = TEST_DATE
        dag.add_task(BaseOperator(task_id="faketastic", owner='Also fake', start_date=when))
        dag_run = dag.create_dagrun(State.RUNNING, when, run_type=DagRunType.MANUAL)
        
        dag.handle_callback(dag_run, success=False)
        dag.handle_callback(dag_run, success=True)
        mock_stats.incr.assert_called_with("dag.callback_exceptions")
        dag.clear()
        self._clean_up(dag_id)
    def test_next_dagrun_after_fake_scheduled_previous(self):