You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "Bolke de Bruin (JIRA)" <ji...@apache.org> on 2018/03/24 08:04:00 UTC

[jira] [Resolved] (AIRFLOW-2060) Clear task raise a TypeError - timezone related

     [ https://issues.apache.org/jira/browse/AIRFLOW-2060?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bolke de Bruin resolved AIRFLOW-2060.
-------------------------------------
       Resolution: Fixed
    Fix Version/s: 1.9.1
                   1.10.0

Issue resolved by pull request #3154
[https://github.com/apache/incubator-airflow/pull/3154]

> Clear task raise a TypeError - timezone related
> -----------------------------------------------
>
>                 Key: AIRFLOW-2060
>                 URL: https://issues.apache.org/jira/browse/AIRFLOW-2060
>             Project: Apache Airflow
>          Issue Type: Bug
>    Affects Versions: 1.10.0
>            Reporter: Fabrice Dossin
>            Assignee: Fabrice Dossin
>            Priority: Major
>             Fix For: 1.10.0, 1.9.1
>
>         Attachments: simple_dag_timezone.py
>
>
> Hello,
> Please find attached a simple dag.
> Run it:
>  airflow backfill simple_dag_timezone -s "2018-01-25T00:00:00+01:00" -e "2018-01-25T00:00:00+01:00"
> Then from webserver, when clearing the task it throw an exception:
> {code:java}
> Traceback (most recent call last):
>   File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 1988, in wsgi_app
>     response = self.full_dispatch_request()
>   File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 1641, in full_dispatch_request
>     rv = self.handle_user_exception(e)
>   File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 1544, in handle_user_exception
>     reraise(exc_type, exc_value, tb)
>   File "/usr/local/lib/python3.5/dist-packages/flask/_compat.py", line 33, in reraise
>     raise value
>   File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 1639, in full_dispatch_request
>     rv = self.dispatch_request()
>   File "/usr/local/lib/python3.5/dist-packages/flask/app.py", line 1625, in dispatch_request
>     return self.view_functions[rule.endpoint](**req.view_args)
>   File "/usr/local/lib/python3.5/dist-packages/flask_admin/base.py", line 69, in inner
>     return self._run_view(f, *args, **kwargs)
>   File "/usr/local/lib/python3.5/dist-packages/flask_admin/base.py", line 368, in _run_view
>     return fn(self, *args, **kwargs)
>   File "/usr/local/lib/python3.5/dist-packages/flask_login.py", line 755, in decorated_view
>     return func(*args, **kwargs)
>   File "/usr/local/lib/python3.5/dist-packages/airflow/www/utils.py", line 264, in wrapper
>     return f(*args, **kwargs)
>   File "/usr/local/lib/python3.5/dist-packages/airflow/www/utils.py", line 311, in wrapper
>     return f(*args, **kwargs)
>   File "/usr/local/lib/python3.5/dist-packages/airflow/www/views.py", line 1018, in clear
>     include_upstream=upstream)
>   File "/usr/local/lib/python3.5/dist-packages/airflow/models.py", line 3697, in sub_dag
>     dag = copy.deepcopy(self)
>   File "/usr/lib/python3.5/copy.py", line 166, in deepcopy
>     y = copier(memo)
>   File "/usr/local/lib/python3.5/dist-packages/airflow/models.py", line 3682, in __deepcopy__
>     setattr(result, k, copy.deepcopy(v, memo))
>   File "/usr/lib/python3.5/copy.py", line 155, in deepcopy
>     y = copier(x, memo)
>   File "/usr/lib/python3.5/copy.py", line 243, in _deepcopy_dict
>     y[deepcopy(key, memo)] = deepcopy(value, memo)
>   File "/usr/lib/python3.5/copy.py", line 166, in deepcopy
>     y = copier(memo)
>   File "/usr/local/lib/python3.5/dist-packages/airflow/models.py", line 2498, in __deepcopy__
>     setattr(result, k, copy.deepcopy(v, memo))
>   File "/usr/lib/python3.5/copy.py", line 182, in deepcopy
>     y = _reconstruct(x, rv, 1, memo)
>   File "/usr/lib/python3.5/copy.py", line 291, in _reconstruct
>     args = deepcopy(args, memo)
>   File "/usr/lib/python3.5/copy.py", line 155, in deepcopy
>     y = copier(x, memo)
>   File "/usr/lib/python3.5/copy.py", line 223, in _deepcopy_tuple
>     y = [deepcopy(a, memo) for a in x]
>   File "/usr/lib/python3.5/copy.py", line 223, in <listcomp>
>     y = [deepcopy(a, memo) for a in x]
>   File "/usr/lib/python3.5/copy.py", line 182, in deepcopy
>     y = _reconstruct(x, rv, 1, memo)
>   File "/usr/lib/python3.5/copy.py", line 292, in _reconstruct
>     y = callable(*args)
> TypeError: __init__() takes 1 positional argument but 6 were given
> {code}
>  
>  
> I did dig a lot but was just able to tell the deepcopy was failing on a datetime... It has not been possible to me to find a solution.
>  
> on airflow/models.py", line 2498, in __deepcopy__:
> {code:java}
> setattr(result, k, copy.deepcopy(v, memo))
> {code}
> the k is the default_args dict.
> It fails on the start_date.
> I did not manage to reproduce it outside of airflow
>  
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)