You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "Ruslan Dautkhanov (JIRA)" <ji...@apache.org> on 2017/03/20 02:40:41 UTC

[jira] [Created] (AIRFLOW-1014) depends_on_past code assumes previous dag_run had at least on TI: fails with NoResultFound: No row was found for one()

Ruslan Dautkhanov created AIRFLOW-1014:
------------------------------------------

             Summary: depends_on_past code assumes previous dag_run had at least on TI: fails with NoResultFound: No row was found for one()
                 Key: AIRFLOW-1014
                 URL: https://issues.apache.org/jira/browse/AIRFLOW-1014
             Project: Apache Airflow
          Issue Type: Bug
          Components: core, scheduler
    Affects Versions: Airflow 1.8
            Reporter: Ruslan Dautkhanov
         Attachments: no-TI-dagruns.png

`depends_on_past` code assumes previous dag_run had at least on TI.

This assumption is not (always) correct.
For example, some of my dag runs were failing (one of the problems was AIRFLOW-1012). So a couple of dag runs have no task instances:
!no-TI-dagruns.png!

So scheduler run fails with "NoResultFound: No row was found for one()".
Below complete error stack

{noformat}
[2017-03-19 20:24:50,795] {models.py:4024} DagFileProcessor3138 INFO - Updating state for <DagRun DISCOVER-Oracle-Load @ 2017-03-19 20:24:22.631102: manual__2017-03-19T20:24:22.631102, externally triggered: True> considering 9 task(s)
[2017-03-19 20:24:50,820] {jobs.py:354} DagFileProcessor3138 ERROR - Got an exception! Propagating...
Traceback (most recent call last):
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/jobs.py", line 346, in helper
    pickle_dags)
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/utils/db.py", line 53, in wrapper
    result = func(*args, **kwargs)
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/jobs.py", line 1581, in process_file
    self._process_dags(dagbag, dags, ti_keys_to_schedule)
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/jobs.py", line 1174, in _process_dags
    self._process_task_instances(dag, tis_out)
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/jobs.py", line 905, in _process_task_instances
    session=session):
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/utils/db.py", line 53, in wrapper
    result = func(*args, **kwargs)
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/models.py", line 1116, in are_dependencies_met
    session=session):
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/models.py", line 1140, in get_failed_dep_statuses
    dep_context):
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/ti_deps/deps/base_ti_dep.py", line 94, in get_dep_statuses
    for dep_status in self._get_dep_statuses(ti, session, dep_context):
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/ti_deps/deps/prev_dagrun_dep.py", line 57, in _get_dep_statuses
    previous_ti = ti.previous_ti
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/utils/db.py", line 53, in wrapper
    result = func(*args, **kwargs)
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/models.py", line 1089, in previous_ti
    return last_dagrun.get_task_instance(self.task_id, session=session)
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/utils/db.py", line 53, in wrapper
    result = func(*args, **kwargs)
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/airflow/models.py", line 3973, in get_task_instance
    TI.task_id == task_id
  File "/opt/cloudera/parcels/Anaconda/lib/python2.7/site-packages/sqlalchemy/orm/query.py", line 2699, in one
    raise orm_exc.NoResultFound("No row was found for one()")
NoResultFound: No row was found for one()

{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)