Uploaded image for project: 'Jackrabbit Content Repository'
  1. Jackrabbit Content Repository
  2. JCR-3018

save leading to ReferentialIntegrityException leaves the repository in inconsistent state

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • None
    • None
    • jackrabbit-core
    • None

    Description

      This is similar to JCR-2503.

      After a failed save() due to ReferentialIntegrityException and a subsequent successfull save() operation, nodes that were transient upon the first save and were persisted in the 2nd save will be corrupted, a getPath() operation failing with:

      javax.jcr.InvalidItemStateException: Item does not exist anymore: 75fe7eb7-7747-476e-bba8-c7f6b7f6e1a8
      at org.apache.jackrabbit.core.ItemImpl.itemSanityCheck(ItemImpl.java:116)
      at org.apache.jackrabbit.core.ItemImpl.perform(ItemImpl.java:90)
      at org.apache.jackrabbit.core.ItemImpl.getPath(ItemImpl.java:376)

      The test is identical to the one added for JCR-2503, except that the node does not get refetched using getNodeByIdentifier.

      (test case follows)

      Attachments

        Activity

          People

            Unassigned Unassigned
            reschke Julian Reschke
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated: