#5879 Use metrics from RefreshLastCommits to improve performance

v1.0.0
closed
General
2015-08-20
2013-02-22
Cory Johns
No

Once [#5788] is done, a test run needs to be done and the metrics harvested and used to get the performance to something reasonable.

Related

Tickets: #5788

Discussion

  • Dave Brondsema

    Dave Brondsema - 2013-03-08
    • milestone: forge-backlog --> forge-apr-05
     
  • Dave Brondsema

    Dave Brondsema - 2013-03-22
    • size: --> 4
     
  • Cory Johns - 2013-03-27
    • status: open --> in-progress
    • assigned_to: Cory Johns
     
  • Cory Johns - 2013-03-28

    It's calling repo.last_commit_ids 85 times. For a full refresh starting at the first commit, it shouldn't ever call it as it should be able to get all the info it needs from the DiffInfoDocs (assuming that data is correct, but this is a relatively fresh fork).

     
  • Cory Johns - 2013-03-28

    Same task run on my sandbox: https://sourceforge.net/p/allura/pastebin/515448cc9095470ae7e5614c/

    I can only assume that the diff data is bad in production, but I thought this was a relatively recent refresh.

     
  • Cory Johns - 2013-03-28

    allura:cj/5879
    forgehg:cj/5879 (just an already passing test)

    Turns out that GitRepository.all_commit_ids was not returning the commit IDs in the expected order. Specifically, the last commit returned was not the repo root (first commit), which means that refresh_last_commits was starting in the middle of the commit history and having to build a lot of historical data that would not be necessary if it were processing them in order.

    Of course, this only happens when there is a branch that gets returned after master from repo._git.heads so it wasn't showing up on sandboxes.

     
  • Cory Johns - 2013-03-28
    • status: in-progress --> code-review
     
  • Cory Johns - 2013-03-28
    • status: code-review --> in-progress
     
  • Cory Johns - 2013-03-28

    A couple of tests failing due to new commit in test repo

     
  • Cory Johns - 2013-03-28
    • status: in-progress --> code-review
     
    • qa: Tim Van Steenburgh
     
    • status: code-review --> in-progress
     
  • I pushed a bunch of test fixes back to forgehg:cj/5879. Have a look at those and make sure I didn't do anything dumb. There are still 3 failing tests that need to be addressed - I'll let you handle those. :)

     
  • Cory Johns - 2013-04-03

    Fixed the one remaining failing test and merged

     
  • Cory Johns - 2013-04-03
    • status: in-progress --> closed
     
  • Dave Brondsema

    Dave Brondsema - 2013-04-05
    • labels: --> performance
     

Log in to post a comment.