RVM
  1. RVM
  2. RVM-475

Move to a workqueue for performance regressions

    Details

    • Type: Improvement Improvement
    • Status: Open Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: 1000
    • Labels:
      None
    • Number of attachments :
      0

      Description

      Rather than blindly firing off a test every 6 hours, the performance regressions could use a work queue.

      The advantage of this would include:
      1. better coverage over revisions
      2. ability to slowly work through huge backlog (for example when starting a new machine, gradually filling in historical data would be trivial)
      3. better use of machines (when there have been few commits, test untested ones rather than repeatedly test the current revision)

      I can imagine the following design:

      . two pieces of state:

      • the most recent revision tested on this machine
      • a queue of untested revisions

      . use something like the following algorithm

      while()
      c = get current latest revision in svn
      if (c > latest tested)
      for each rev in (latest, c]
      add to workqueue
      t = c
      else
      t = pop workqueue
      fi
      run regression against revision t
      if (t > latest tested)
      latest tested = t
      fi
      done

        Activity

        No work has yet been logged on this issue.

          People

          • Assignee:
            Unassigned
            Reporter:
            Steve Blackburn
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated: