You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "Sajjad Hussain (JIRA)" <ji...@apache.org> on 2016/10/07 21:41:20 UTC

[jira] [Created] (AIRFLOW-557) SLA notification does not work for manually triggered DAGs

Sajjad Hussain created AIRFLOW-557:
--------------------------------------

             Summary: SLA notification does not work for manually triggered DAGs 
                 Key: AIRFLOW-557
                 URL: https://issues.apache.org/jira/browse/AIRFLOW-557
             Project: Apache Airflow
          Issue Type: Bug
            Reporter: Sajjad Hussain


No SLA notifcation emails are sent for manually triggered DAGs.

For example, if you have ...
dag = DAG(
    'my_dag',
    start_date=datetime(2015, 1, 1),
    schedule_interval=None,
    default_args=args)

t = PythonOperator(
        task_id='t2',
        python_callable=<callable>,
        sla=timedelta(seconds=60),
        dag=dag)
There is no email sent if the task takes more than the SLA time.

The code for DAG.following_schedule does not seem to handle the case of scheduler_interval=None ...
{code}
   def following_schedule(self, dttm):
        if isinstance(self._schedule_interval, six.string_types):
            cron = croniter(self._schedule_interval, dttm)
            return cron.get_next(datetime)
        elif isinstance(self._schedule_interval, timedelta):
            return dttm + self._schedule_interval
{code}

When the DAG has schedule_interval=None, the following exception is raised ...

File "<...>/lib/python2.7/site-packages/airflow/jobs.py", line 284, in manage_slas
     while dttm < datetime.now():
TypeError: can't compare datetime.datetime to NoneType






--
This message was sent by Atlassian JIRA
(v6.3.4#6332)