python - Airflow 1.10:任务持续时间失败
问题描述
从 Airflow 1.9 升级到 1.10 后,我无法再在 Web GUI 中看到任务持续时间。当我单击任务持续时间时,我得到以下回溯:
Traceback (most recent call last):
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/flask/app.py", line 1982, in wsgi_app
response = self.full_dispatch_request()
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/flask/app.py", line 1614, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/flask/app.py", line 1517, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/flask/_compat.py", line 33, in reraise
raise value
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/flask/app.py", line 1612, in full_dispatch_request
rv = self.dispatch_request()
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/flask/app.py", line 1598, in dispatch_request
return self.view_functions[rule.endpoint](**req.view_args)
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/flask_admin/base.py", line 69, in inner
return self._run_view(f, *args, **kwargs)
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/flask_admin/base.py", line 368, in _run_view
return fn(self, *args, **kwargs)
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/flask_login.py", line 758, in decorated_view
return func(*args, **kwargs)
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/airflow/www/utils.py", line 270, in wrapper
return f(*args, **kwargs)
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/airflow/utils/db.py", line 74, in wrapper
return func(*args, **kwargs)
File "/home/ubuntu/.local/share/virtualenvs/airflow-YvxPQJVU/lib/python3.6/site-packages/airflow/www/views.py", line 1551, in duration
fails_totals[dict_key] += tf.duration
TypeError: unsupported operand type(s) for +=: 'int' and 'NoneType'
知道是什么原因造成的吗?
这只发生在我的旧 DAGS 上。升级后创建的新 DAGS 没有这个问题。
解决方案
看起来旧记录的行在列上有NULL
一个task_fail.duration
。对数据库运行手动查询可能会立即解决您的问题:UPDATE task_fail SET duration=0 WHERE duration IS NULL
-假设您可以更改记录。
一定要先备份,以防万一。
推荐阅读
- python - 使用 RDKit 计算 sdf 文件和结构 SMILE 之间的 Tanimoto 相似性?
- javascript - 如何在按钮单击时更改 div 的文本内容?香草 JS/Jquery
- shell - 当由 cron 作业启动时,我停止重新启动 apache 和 mysql 服务的脚本不起作用
- css - CSS/HTML - 在内容之前滚动标题
- php - 从控制器到视图的 JSON API 响应
- ios - 将数据从 django 中的外部 python 脚本传递给 swift
- python - 未达到 Python 最大递归
- c# - 如何调试。打印多个变量?
- github - 从 github 触发云构建时替换变量为空
- html - 如何使图像在表格单元(td)内响应