#4536 Maintain correct LastCommit pointers for identical blobs in a single repo - NEEDS SCRIPT(S)

v1.0.0
closed
sf-4 (350)
SCM
2015-08-20
2012-07-12
No

Related

Tickets: #4549

Discussion

  • Dave Brondsema

    Dave Brondsema - 2012-07-12

    It seems like it'd be useful to have the commit pointer right on the tree, rather than pointing to a blob which is not unique, and then trying to find the right commit that goes with that non-unique blob. Would be less queries too. I haven't thought through all the implications yet.

     
  • Dave Brondsema

    Dave Brondsema - 2012-07-12
    • milestone: forge-backlog --> forge-jul-27
     
  • Dave Brondsema

    Dave Brondsema - 2012-07-13
    • size: --> 4
     
  • Cory Johns - 2012-07-19
    • status: open --> in-progress
    • assigned_to: Cory Johns
     
  • Cory Johns - 2012-07-23
    • status: in-progress --> code-review
    • qa: Tim Van Steenburgh
     
  • Cory Johns - 2012-07-23

    allura:cj/4536

    To test, create a repo with multiple identical blobs in various directories, a la https://sf-cjohns-7015.sb.sf.net/p/allura/git/ci/fb62c0f63ff482a8aec2b9a11015f1d97b7851c5/tree/

    Index on dev code to verify that they're all getting the same commit message in the browser.

    Then, remove all repo_last_commit entries for that repo and reindex on this branch. Confirm that it has the correct commits for all identical blobs / trees.

     
    • Add tests for refresh_last_commit
    • Change controller logic so that it'll still work during the refresh. Then move the real 'new' controller logic to a new ticket/commit that we can push out after the initial refresh is done.
     
    • status: code-review --> in-progress
     
  • Cory Johns - 2012-07-30
    • status: in-progress --> code-review
     
  • Cory Johns - 2012-07-30

    Forced pushed the changes (rebased to dev) with tests

     
  • Looks good. Last step is to coordinate clean repo refreshes with siteops. The refresh commands in this ticket are a good starting point: https://trac.geek.net/trac/siteops/ticket/51520 as they exclude repos that are known to segfault. The --repo-types param should be removed, and --clean added.

     
    • status: code-review --> validation
     
  • Latest changes (persisting svn trees properly, and the script to delete the old trees) look good. Merged to dev. Adding this as a reminder to run the script in prod:

    paster script production.ini ../scripts/migrations/028-remove-svn-trees.py
    
     
  • Dave Brondsema

    Dave Brondsema - 2012-08-09

    Work for this was completed, but then we realized the scope of this issue is much broader. Cory will create a new ticket to track further work.

     
  • Dave Brondsema

    Dave Brondsema - 2012-08-09
    • status: validation --> closed
     

Log in to post a comment.