These tasks tend to be very short but can queue behind grade reports

Here are the 3 tasks over the last 30 days with average duration
runtimes in seconds:

lms.djangoapps.instructor_task.tasks.calculate_students_features_csv 37.794393
lms.djangoapps.instructor_task.tasks.calculate_may_enroll_csv   0.030303
lms.djangoapps.instructor_task.tasks.export_ora2_data   67.629921

All but ora2 seem fine to pass through the default queue, which has 3
workers per physical machine.
This commit is contained in:
Kevin Falcone
2017-01-11 16:45:03 -05:00
parent ae4e384e17
commit 4e6745f3c1

View File

@@ -193,7 +193,7 @@ def calculate_problem_grade_report(entry_id, xmodule_instance_args):
return run_main_task(entry_id, task_fn, action_name)
@task(base=BaseInstructorTask, routing_key=settings.GRADES_DOWNLOAD_ROUTING_KEY) # pylint: disable=not-callable
@task(base=BaseInstructorTask) # pylint: disable=not-callable
def calculate_students_features_csv(entry_id, xmodule_instance_args):
"""
Compute student profile information for a course and upload the
@@ -252,7 +252,7 @@ def proctored_exam_results_csv(entry_id, xmodule_instance_args):
return run_main_task(entry_id, task_fn, action_name)
@task(base=BaseInstructorTask, routing_key=settings.GRADES_DOWNLOAD_ROUTING_KEY) # pylint: disable=not-callable
@task(base=BaseInstructorTask) # pylint: disable=not-callable
def calculate_may_enroll_csv(entry_id, xmodule_instance_args):
"""
Compute information about invited students who have not enrolled
@@ -293,7 +293,7 @@ def cohort_students(entry_id, xmodule_instance_args):
return run_main_task(entry_id, task_fn, action_name)
@task(base=BaseInstructorTask, routing_key=settings.GRADES_DOWNLOAD_ROUTING_KEY) # pylint: disable=not-callable
@task(base=BaseInstructorTask) # pylint: disable=not-callable
def export_ora2_data(entry_id, xmodule_instance_args):
"""
Generate a CSV of ora2 responses and push it to S3.