Airflow 1.10.10版中的Apache Airflow dagrun_操作符

Airflow 1.10.10版中的Apache Airflow dagrun_操作符,airflow,airflow-operator,apache-airflow-xcom,Airflow,Airflow Operator,Apache Airflow Xcom,将气流从V1.10.2迁移到V1.10.10时,我们的一个DAG具有dagrun_操作员类型的任务 任务的代码段如下所示。请假定存在DAGDAG\u进程位置。 由触发器DAGrunOperator触发的DAG是DAG\u进程位置。这从类型为dummy_operator的任务开始[如果这可能是麻烦制造者,请给出提示] DAG运行良好。事实上,直到最后一行,前面提到的任务的python是可调用的。然后它出错了 [2020-06-09 11:36:22,838] {taskinstance.py:11

将气流从V1.10.2迁移到V1.10.10时,我们的一个DAG具有dagrun_操作员类型的任务

任务的代码段如下所示。请假定存在DAG
DAG\u进程位置。
由
触发器DAGrunOperator
触发的DAG是
DAG\u进程位置
。这从类型为
dummy_operator
的任务开始[如果这可能是麻烦制造者,请给出提示]

DAG运行良好。事实上,直到最后一行,前面提到的任务的python是可调用的。然后它出错了

[2020-06-09 11:36:22,838] {taskinstance.py:1145} ERROR - No row was found for one()
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/airflow/models/taskinstance.py", line 983, in _run_raw_task
    result = task_copy.execute(context=context)
  File "/usr/local/lib/python3.6/site-packages/airflow/operators/dagrun_operator.py", line 95, in execute
    replace_microseconds=False)
  File "/usr/local/lib/python3.6/site-packages/airflow/api/common/experimental/trigger_dag.py", line 141, in trigger_dag
    replace_microseconds=replace_microseconds,
  File "/usr/local/lib/python3.6/site-packages/airflow/api/common/experimental/trigger_dag.py", line 98, in _trigger_dag
    external_trigger=True,
  File "/usr/local/lib/python3.6/site-packages/airflow/utils/db.py", line 74, in wrapper
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/airflow/models/dag.py", line 1471, in create_dagrun
    run.refresh_from_db()
  File "/usr/local/lib/python3.6/site-packages/airflow/utils/db.py", line 74, in wrapper
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/airflow/models/dagrun.py", line 109, in refresh_from_db
    DR.run_id == self.run_id
  File "/usr/local/lib64/python3.6/site-packages/sqlalchemy/orm/query.py", line 3446, in one
    raise orm_exc.NoResultFound("No row was found for one()")
sqlalchemy.orm.exc.NoResultFound: No row was found for one()
然后执行该任务的
on\u failure\u回调
,该可调用的所有代码按预期运行正常。这里的问题是为什么在python调用之后dagrun_操作符失败了


p.S:由
触发器DAGrunOperator
触发的DAG,在这种情况下
DAG\U进程\u pos
从类型为
虚拟\u操作符的任务开始,添加到我的上述帖子中。我们发现,当我们从
TriggerDagRunOperator
中删除
execution\u date
参数时,它会工作。这是语法上的问题还是变化。另外,Airflow1.10.10存储库中提供的气流Dag示例没有
Dagrun\u操作员的示例代码
[2020-06-09 11:36:22,838] {taskinstance.py:1145} ERROR - No row was found for one()
Traceback (most recent call last):
  File "/usr/local/lib/python3.6/site-packages/airflow/models/taskinstance.py", line 983, in _run_raw_task
    result = task_copy.execute(context=context)
  File "/usr/local/lib/python3.6/site-packages/airflow/operators/dagrun_operator.py", line 95, in execute
    replace_microseconds=False)
  File "/usr/local/lib/python3.6/site-packages/airflow/api/common/experimental/trigger_dag.py", line 141, in trigger_dag
    replace_microseconds=replace_microseconds,
  File "/usr/local/lib/python3.6/site-packages/airflow/api/common/experimental/trigger_dag.py", line 98, in _trigger_dag
    external_trigger=True,
  File "/usr/local/lib/python3.6/site-packages/airflow/utils/db.py", line 74, in wrapper
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/airflow/models/dag.py", line 1471, in create_dagrun
    run.refresh_from_db()
  File "/usr/local/lib/python3.6/site-packages/airflow/utils/db.py", line 74, in wrapper
    return func(*args, **kwargs)
  File "/usr/local/lib/python3.6/site-packages/airflow/models/dagrun.py", line 109, in refresh_from_db
    DR.run_id == self.run_id
  File "/usr/local/lib64/python3.6/site-packages/sqlalchemy/orm/query.py", line 3446, in one
    raise orm_exc.NoResultFound("No row was found for one()")
sqlalchemy.orm.exc.NoResultFound: No row was found for one()