Skip to content
Snippets Groups Projects
  1. Jul 31, 2018
  2. Apr 26, 2018
    • Philippe Pepiot's avatar
      Skip http benchmarks for broken revision of hgweb · f83f09687576
      Philippe Pepiot authored
      hgweb is broken on some revisions of mercurial (see https://bz.mercurial-scm.org/show_bug.cgi?id=5851).
      Skip http benchmark on such revisions to avoid long timeouts and hgweb process leak.
      
      Add a 'skip' key to config.yaml with known broken revisions for given feature,
      compile all revisions in repos/skip.json and use it in the benchmark code to
      decide of current revision should be skipped or not.
      
      Use asv way to skip tests in setup() and raise NotImplementedError in such cases.
      
      $ asv run --bench time_push --show-stderr --no-pull 4.6rc0
      ================ =========== =================== ============ ============
      --                                                         revset
      ------------------------------------------------ -------------------------
            repo        repo_type         strip            None       default
      ================ =========== =================== ============ ============
       mercurial-2017     local            same          98.9±1ms     102±1ms
       mercurial-2017     local      last(all(), 10)     127±1ms      139±10ms
       mercurial-2017     local      last(all(), 100)    190±3ms      212±2ms
       mercurial-2017     local     last(all(), 1000)    823±20ms     839±7ms
       mercurial-2017      ssh             same          325±7ms      333±10ms
       mercurial-2017      ssh       last(all(), 10)     405±30ms     383±9ms
       mercurial-2017      ssh       last(all(), 100)    468±30ms     495±20ms
       mercurial-2017      ssh      last(all(), 1000)   1.27±0.05s   1.26±0.02s
       mercurial-2017      http            same            n/a          n/a
       mercurial-2017      http      last(all(), 10)       n/a          n/a
       mercurial-2017      http      last(all(), 100)      n/a          n/a
       mercurial-2017      http     last(all(), 1000)      n/a          n/a
      ================ =========== =================== ============ ============
      f83f09687576
  3. Feb 20, 2018
  4. Jan 24, 2018
  5. Jan 23, 2018
  6. Jan 19, 2018
  7. Jan 17, 2018
    • Philippe Pepiot's avatar
      Use unique name for partial clones · aba709289ed3
      Philippe Pepiot authored
      We may want use multiple partial clones in the future, set an unique name for a given partial clone to
      
      partial-$repo_name-$stripped_revset(b64 encoded)
      aba709289ed3
    • Philippe Pepiot's avatar
      Re(re-re-re) implement exchange benchmarks · 73baad28aae0
      Philippe Pepiot authored
      Use prepare_repos.py to create partial benchmarks which are cloned, then
      stripped. This use debugupdatecahce which require hg >= 4.3 (we use the system
      installed hg for that).
      
      Partial clones are then used in incoming/outgoing benchmark which can then be
      switched to "time" benchmark allowing ASV to control the number of loop etc.
      
      Since we're using subprocesses use timeit.default_timer as timer.
      73baad28aae0
    • Philippe Pepiot's avatar
      simplify clone creation script · 3a8d88483eaf
      Philippe Pepiot authored
      By merging check_repositories() in clone_repositories
      3a8d88483eaf
  8. Jul 19, 2017
Loading