Uploaded image for project: 'Magnolia'
  1. Magnolia
  2. MAGNOLIA-5494

Cannot delete (by mark node as deleted) already published node with versionable child with different type from its parents type.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • 5.2.1
    • 5.1.1
    • activation, core

      Steps to reproduce in 'contacts' app:

      1. Allow to add mgnl:content as a child node to contact (child type is important, it cannot be 'mgnl:contact' !)
      2. Create new contact
      3. Create new mgnl:content under newly created contact
      4. Publish/Activate contact
      5. Delete (mark node as deleted) contact.
      6. An error message appears with sth like 'failed to build path of: [uuid]'

      What is weird, if we delete contact first, then everything is ok:

      1. Create new contant
      2. Create new mgnl:content under newly created contact
      3. Delete (mark node as deleted) contact.
      4. Revert last contact version
      5. Publish contact
      6. Delete (mark node as deleted) contact.
      7. Everything is OK.

      I discovered that version created by delete action in mgnlVersion repository is differen from that created by publish action (both are recursive in this case). If you check jcr mgnlVersion repo you will notice that 'activate' action creates contact children under root path ('/'), but delete action creates them under contact node.

      In many cases (like mgnl:page under mgnl:page) publish/activate works well because structure created in mgnlVersion repo in this specific case is proper - the problem appears when child node has different type from its parent type.

        Acceptance criteria

              had Jan Haderka
              rjanas Radosław Janas
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Bug DoR
                  Task DoD