         if @mgpEnabled
           gradingPeriods = @indexedGradingPeriods()
           overrides = @indexedOverrides()
+        #empty the array so this is idempotent, you can end up with too many rows
+        @rows.length = 0
         for student_id, student of students
           student.computed_current_score ||= 0
           student.computed_final_score ||= 0

      else
        'students_url'

      gotAllStudents = $.Deferred().done => @gotAllStudents()

      assignmentGroupsParams = {exclude_descriptions: true}
      if @mgpEnabled && @gradingPeriodToShow && @gradingPeriodToShow != '0' && @gradingPeriodToShow != ''
        $.extend(assignmentGroupsParams, {grading_period_id: @gradingPeriodToShow})

      ajax_calls = [
        $.ajaxJSON(@options[enrollmentsUrl], "GET")
      , $.ajaxJSON(@options.assignment_groups_url, "GET", assignmentGroupsParams, @gotAssignmentGroups)
      , $.ajaxJSON( @options.sections_url, "GET", {}, @gotSections)
      ]


      @getSubmissionsChunks()
      @initHeader()

    gotAllAssignmentGroups: () =>
      assignmentGroups = @allAssignmentGroups;
      @assignmentGroups = {}
      @assignments      = {}

