### Apache Airflow version

2.6.3

### What happened

When running multiple standalone DAG processors with separate DAG directories using the `--subdir` argument the processors keep deactivating each other's DAGs (and reactivating their own).

After stepping through the code with a debugger I think the issue is that the calls [here](https://github.com/apache/airflow/blob/2.6.3/airflow/dag_processing/manager.py#L794) and [here](https://github.com/apache/airflow/blob/2.6.3/airflow/dag_processing/manager.py#L798) have no awareness of the DAG directories.

### What you think should happen instead

The DAG processors should not touch each other's DAGs in the metadata DB.

### How to reproduce

Start two or more standalone DAG processors with separate DAG directories and observe (e.g. via the UI) how the list of active DAGs keeps changing constantly.

### Operating System

Linux 94b223524983 6.1.32-0-virt #1-Alpine SMP PREEMPT_DYNAMIC Mon, 05 Jun 2023 09:39:09 +0000 x86_64 x86_64 x86_64 GNU/Linux

### Versions of Apache Airflow Providers

_No response_

### Deployment

Other Docker-based deployment

### Deployment details

_No response_

### Anything else

_No response_

### Are you willing to submit PR?

- [ ] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

"g2.w1",
            "g2.w2",
        }
    def test_clear_upstream_not_your_setup(self):
        """
        When you have a work task that comes after a setup, then if you clear upstream
        the setup (and its teardown) will be cleared even though strictly speaking you don't
        "require" it since, depending on speed of execution, it might be torn down by t1
        before / while w2 runs.  It just gets cleared by virtue of it being upstream, and
        that's what you requested.  And it's teardown gets cleared too.  But w1 doesn't.
        """
        with DAG(dag_id="test_dag", start_date=pendulum.now()) as dag:
            s1, w1, w2, t1 = self.make_tasks(dag, "s1, w1, w2, t1")
            s1 >> w1 >> t1.as_teardown(setups=s1)
            s1 >> w2
            
            
            assert self.cleared_upstream(w2) == {s1, w2, t1}
    def test_clearing_teardown_no_clear_setup(self):
        with DAG(dag_id="test_dag", start_date=pendulum.now()) as dag:
            s1, w1, t1 = self.make_tasks(dag, "s1, w1, t1")
            s1 >> t1
            
            assert self.cleared_downstream(t1) == {t1}
            s1 >> w1 >> t1
            
            assert self.cleared_downstream(t1) == {t1}
            
            assert self.cleared_downstream(w1) == {s1, w1, t1}
    def test_clearing_setup_clears_teardown(self):