Repository: incubator-airflow
Updated Branches:
  refs/heads/master c61d836b4 -> a27bd620d


[AIRFLOW-2160] Fix bad rowid deserialization

Use Flask-Admin's iterdecode to correctly decode
task instance rowids
when they contain a dot

Closes #3081 from cmlad/fix-bad-rowid-
deserialization


Project: http://git-wip-us.apache.org/repos/asf/incubator-airflow/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-airflow/commit/a27bd620
Tree: http://git-wip-us.apache.org/repos/asf/incubator-airflow/tree/a27bd620
Diff: http://git-wip-us.apache.org/repos/asf/incubator-airflow/diff/a27bd620

Branch: refs/heads/master
Commit: a27bd620d97950773c7732908eb3c597315fdd0e
Parents: c61d836
Author: Christian Mladenov <c...@coinbase.com>
Authored: Thu Mar 1 08:46:43 2018 +0100
Committer: Fokko Driesprong <fokkodriespr...@godatadriven.com>
Committed: Thu Mar 1 08:46:43 2018 +0100

----------------------------------------------------------------------
 airflow/www/views.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-airflow/blob/a27bd620/airflow/www/views.py
----------------------------------------------------------------------
diff --git a/airflow/www/views.py b/airflow/www/views.py
index 8694cbf..44ef8e0 100644
--- a/airflow/www/views.py
+++ b/airflow/www/views.py
@@ -2570,7 +2570,7 @@ class TaskInstanceModelView(ModelViewOnly):
 
             # Collect dags upfront as dagbag.get_dag() will reset the session
             for id_str in ids:
-                task_id, dag_id, execution_date = id_str.split(',')
+                task_id, dag_id, execution_date = iterdecode(id_str)
                 dag = dagbag.get_dag(dag_id)
                 task_details = dag_to_task_details.setdefault(dag, [])
                 task_details.append((task_id, execution_date))
@@ -2604,7 +2604,7 @@ class TaskInstanceModelView(ModelViewOnly):
             TI = models.TaskInstance
             count = len(ids)
             for id in ids:
-                task_id, dag_id, execution_date = id.split(',')
+                task_id, dag_id, execution_date = iterdecode(id)
                 execution_date = parse_execution_date(execution_date)
 
                 ti = session.query(TI).filter(TI.task_id == task_id,

Reply via email to