From MozillaWiki
Jump to: navigation, search

Perf-O-Matic 2.0


File a bug in product Webtools component Graphserver version 2.0


/join #perfomatic


Designed by Chris Howse

Original UI Prototype

Missing features from current design

  • dashboard ->
    • toolbar ->
      • product - not implemented
      • platforms - not implemented
      • top tests - not implemented
      • set pulldowns based on URL
    • data grid ->
      • row/column should not scroll
  • custom chart ->
    • toolbar ->
      • running time - time delta/time delta % not implemented
      • show changesets - needs design work
        • may need hgpushlog work to link directly to changesets
      • export CSV - server broken bug 489775
      • link - needs url shortener
      • embed - not implemented
    • set selection range based on URL
    • add test data ->
      • put popular branches/tests/platforms on top
  • plot ->
    • y-axis should always be 0-based
  • need mapping between branches and hg repos

Performance optimizations


  • stand up vhost with old graphserver, pointing at nightly database, for QA comparison
  • set up lint and tests on Hudson
  • selenium tests (in progress)
  • qUnit/env.js unit tests for JS code
  • stand up auto-update for code (5 minutes)
  • stand up auto-update for DB (nightly)
  • (QA) compare actual submitted data to JSON, and confirm in interface
  • make sure proper changeset range is shown for checkins


  • custom chart ->
    • bug 643892 "show changesets" with multiple data series loads multiple hg.m.o tabs
    • embed ->
      • need loading indicator for individual series
      • tooltips can be hidden by top of screen
    • series controls change plot daterange
      • str: add multiple data series and change daterange pulldown before all are loaded
    • selection range set when "sel=none"
  • charts (general)
    • bug 643897 all axes should be labeled, units should be specified
    • bug 651690 y-axis is relative to entire dataset, not just current view
    • selection range ("sel" in URL) is very confusing if it is not in current view, or older than 365 days
      • could check this in JS, error if it's too old, and select 365-day view if it's not?
  • "add more test data" dialog
    • bug 641414 branch, test, platforms should be sorted


  • reddit /r/programming thread
  • Hacker News thread
    • missing data from other browsers
      • how can we instrument Chrome, Safari, IE, Opera, etc.?
        • can we publish this data?
  • old-style URLs are not compatible, primarily because the new graphserver automatically shows the average of all machines in a platform rather than a separate line for each, and the old-style URLs refer to individual machines. Problem?