Doctrine MongoDB ODM
  1. Doctrine MongoDB ODM
  2. MODM-140

Issue with nested embdedded documents after adding an EmbeddedDocument to Document

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 1.0.0BETA3
    • Fix Version/s: None
    • Component/s: UnitOfWork
    • Labels:
      None
    • Environment:
      PHP 5.3.3, Mac OS X 10.6.6, MongoDB 1.8.0

      Description

      I'm using the latest version of Doctrine ODM (fresh from Git).

      I have three levels of Documents (Two embedded); Category -> EmbedsMany: Post -> EmbedsMany PostVersion.

      Step-by-step:

      1. Make a new Post (Post1), 2 PostVersions (PostVersion1 and 2) and a Category
      2. Add Post1 to Category
      3. Persist Category, Flush, Clear
      4. Retrieve Category
      5. Make a new Post (Post2) and 2 PostVersions(PostVersion3 and 4)
      6. Add Post2 to Category
      7. Flush

      If you're following properly, at this stage in the database there should be:
      1 Category,
      2 Posts
      4 PostVersions ... 2 PostVersions in each Post

      However, what actually happens is:
      1 Category,
      2 Posts
      4 PostVersions ... 4 PostVersions in Post1, 0 PostVersions in Post2

      On StackOverflow: http://bit.ly/ekFbe2
      Testcase Gist: https://gist.github.com/920914

      A work around is to make Post2 and add it to Category, flush, then make new PostVersions and flush again.

      I did some debugging but I don't know enough about the internals to fix the issue.

      1. doctrine-odm-patch-1.0.0beta3.diff
        4 kB
        Kelvin Wood
      2. MODM140Test.php
        2 kB
        Andrew Cobby

        Activity

          People

          • Assignee:
            Jonathan H. Wage
            Reporter:
            Andrew Cobby
          • Votes:
            5 Vote for this issue
            Watchers:
            6 Start watching this issue

            Dates

            • Created:
              Updated: