• Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Core system, Database
    • Labels:


      some notes I sent to the dev list earlier in the year

      There are afew areas I'm still not happy with. The fetch groups don't
      seem to fit well with what is required a lot of the time. I'm wondering
      whether we are better off making everything be in the default fetch
      group, and lazy loading the lists instead. It seems since we are only
      doing this as an optimization that'd be a better way to do it.

      We'd still need to avoid long lists, ie build results. I think that
      should not be a field on the project, and instead it should just have
      references to the last successful build, last finished build, current
      build (either in progress or finished).

      I'm not particularly happy with using store methods "mid-way" through a
      block of code. I'm not sure if it does any dirty checking when you do a
      re-attach,but I see potential to read something, have it changed
      externally, then write over the top of it. The fact that we are
      re-retrieving from the db at random points could make this harder to
      track. I think we should be in the practise of getting all we need from
      the db at the start, modifying the detached objects, then updating them
      with dirty check at the end. We need to be able to resolve common cases
      where we can recover, and fail gracefully when it can't. At the end of
      the day, this isn't preventing it working now, so I'll just schedule a
      review of the use of the store later as it may be a source of ongoing
      bugs otherwise.


          Issue Links



              • Assignee:
                brettporter Brett Porter
                brettporter Brett Porter
              • Votes:
                0 Vote for this issue
                0 Start watching this issue


                • Created: