• Type: Icon: Task Task
    • Resolution: Done
    • 4.0.0 final
    • Affects Version/s: None
    • Component/s: None
    • Labels:
      None

      Problem

      Eager load using IdentityMap

      Solution

      We should remove the IdentityMap, and add a set of preloaders that would know how to aggregate the queries to eager load documents in as less queries as possible.

      How

      The way this works is basically adding 4 different preloaders, one for each relation type. There is one Base preloader that have the shared code among the others, and the subclasses only are responsible for tell how to aggregate the data and how to query the data.

      durran I believe eager load is in a good shape now, would love to have as much eyes as possible on this.(I know it is kind of big, but I couldn't find a way to ship it in pieces.)

      TODO for this PR:

      • add a changelog entry
        _ add more tests - _DONE*

      TODO after this ships:

      • remove identity map for good
      • Fix inverse_of relations to make sure they all load correct.

            Assignee:
            Unassigned Unassigned
            Reporter:
            arthurnn Arthur Nogueira Neves
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved: