Skip to content

Commit c4d0fe9

Browse files
committedNov 16, 2015
fixes datetime issue when persisting logs
- the current SQL INSERT statement contains a mix of datetime and string when inserting logs in DB, which seems to work fine on Mysql but fails on sqlite
1 parent 49364e1 commit c4d0fe9

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed
 

‎airflow/www/utils.py

+11-5
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
from io import BytesIO as IO
77
import functools
88
import gzip
9+
import dateutil.parser as dateparser
910
import json
10-
1111
from flask import after_this_request, request, Response
1212
from flask.ext.login import current_user
1313
import wtforms
@@ -83,17 +83,23 @@ def wrapper(*args, **kwargs):
8383
else:
8484
user = 'anonymous'
8585

86-
session.add(
87-
models.Log(
86+
log = models.Log(
8887
event=f.__name__,
8988
task_instance=None,
9089
owner=user,
9190
extra=str(request.args.items()),
9291
task_id=request.args.get('task_id'),
93-
dag_id=request.args.get('dag_id'),
94-
execution_date=request.args.get('execution_date')))
92+
dag_id=request.args.get('dag_id'))
93+
94+
if 'execution_date' in request.args:
95+
log.execution_date = dateparser.parse(
96+
request.args.get('execution_date'))
97+
98+
session.add(log)
9599
session.commit()
100+
96101
return f(*args, **kwargs)
102+
97103
return wrapper
98104

99105

0 commit comments

Comments
 (0)