Currently we use execution-date when generating the command to send via executor in https://github.com/apache/airflow/blob/9c94b72d440b18a9e42123d20d48b951712038f9/airflow/models/taskinstance.py#L420-L436

We should replace the execution_date in their to run_id instead and handle the corresponding changes needs on the executor and worker.
tests/models/test_taskinstance.py
"""
        test that updating the executor_config propagates to the TaskInstance DB
        """
        dag, task = create_dummy_dag(
            dag_id='test_run_pooling_task',
            task_id='test_run_pooling_task_op',
            executor_config={'foo': 'bar'},
        )
        ti = TI(task=task, execution_date=timezone.utcnow())
        ti.run(session=session)
        tis = dag.get_task_instances()
        assert {'foo': 'bar'} == tis[0].executor_config
        task2 = DummyOperator(
            task_id='test_run_pooling_task_op2',
            executor_config={'bar': 'baz'},
            start_date=timezone.datetime(2016, 2, 1, 0, 0, 0),
            dag=dag,
        )
        ti = TI(task=task2, execution_date=timezone.utcnow())
        ti.run(session=session)
        tis = dag.get_task_instances()
        assert {'bar': 'baz'} == tis[1].executor_config
        session.rollback()
    def test_run_pooling_task_with_mark_success(self, create_dummy_dag):