Эх сурвалжийг харах

HUE-3185 [oozie] Avoid extra API calls for parent information in workflow dashboard

krish 9 жил өмнө
parent
commit
a10b707fe2

+ 2 - 26
apps/oozie/src/oozie/views/dashboard.py

@@ -1073,7 +1073,7 @@ def massaged_oozie_jobs_for_json(oozie_jobs, user, just_sla=False):
         'frequency': hasattr(job, 'frequency') and Coordinator.CRON_MAPPING.get(job.frequency, job.frequency) or None,
         'timeUnit': hasattr(job, 'timeUnit') and job.timeUnit or None,
         'parentUrl': hasattr(job, 'parentId') and job.parentId and get_link(job.parentId) or '',
-        'submittedManually': hasattr(job, 'parentId') and _submitted_manually(job, user)
+        'submittedManually': hasattr(job, 'parentId') and (job.parentId is None or 'C@' not in job.parentId)
       }
       jobs.append(massaged_job)
 
@@ -1134,28 +1134,4 @@ def has_job_edition_permission(oozie_job, user):
 
 
 def has_dashboard_jobs_access(user):
-  return user.is_superuser or user.has_hue_permission(action="dashboard_jobs_access", app=DJANGO_APPS[0])
-
-
-def _submitted_manually(job, user):
-  parent_id = job.parentId
-  if not parent_id:
-    return True
-  if 'C@' in parent_id:
-    return False
-
-  oozie_api = get_oozie(user)
-  if parent_id.endswith('W'):
-    get_job = oozie_api.get_job
-  elif parent_id.endswith('C'):
-    get_job = oozie_api.get_coordinator
-  else:
-    get_job = oozie_api.get_bundle
-
-  try:
-    job = get_job(parent_id)
-  except:
-    LOG.exception('failed to get job')
-    return True
-
-  return _submitted_manually(job, user)
+  return user.is_superuser or user.has_hue_permission(action="dashboard_jobs_access", app=DJANGO_APPS[0])