Uploaded image for project: 'Fedora Repository Project'
  1. Fedora Repository Project
  2. FCREPO-2086

Fedora object created with "indexed" path element

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: Fedora 4.5.1
    • Fix Version/s: Fedora 4.7.0
    • Component/s: f4-core
    • Labels:
    • Sprint:
      Sprint 2016 - 17

      Description

      We are using Fedora 4's default ID minter. During an operation using multiple Resque workers (10) to create objects in Fedora 4, we ended up with an object in the repository with ID "8b/80%5B2%5D/54/6c/8b80546c-2e35-4a85-b311-1c8fbae3397a" (essentially "8b/80[2]/54/6c/8b80546c-2e35-4a85-b311-1c8fbae3397a"). Two of the Resque jobs failed at essentially the same time, each with the error message:

      STATUS: 500 javax.jcr.nodetype.ConstraintViolationException: Cannot find a definition for a child named '{}80' on the node at '/prod/8b' with primary type 'nt:folder' and mixin types: [fedora:Pairtree] at org.modeshape.jcr.AbstractJcrNode.nodeDefinition(AbstractJcrNode.java:2911) at org.modeshape.jcr.AbstractJcrNode.getDefinition(AbstractJcrNode.java:2835) at org.modeshape.jcr.AbstractJcrNode.isCheckedOut(AbstractJcrNode.java:3222) at org.modeshape.jcr.AbstractJcrNode.addChildNode(AbstractJcrNode.java:1131) at org.modeshape.jcr.AbstractJcrNode.addNode(AbstractJcrNode.java:1072) at org.modeshape.jcr.AbstractJcrNode.addNode(AbstractJcrNode.java:986) at org.modeshape.jcr.AbstractJcrNode.addNode(AbstractJcrNode.java:101) at org.modeshape.jcr.api.JcrTools.findOrCreateNode(JcrTools.java:437) at org.modeshape.jcr.api.JcrTools.findOrCreateNode(JcrTools.java:377) at org.fcrepo.kernel.modeshape.services.AbstractService.findOrCreateNode(AbstractService.java:50) at org.fcrepo.kernel.modeshape.servi...

      Objects were created in the repository by the two failed jobs -- one with ID 8b/80/f1/bc/8b80f1bc-e51f-4336-bd10-293d13bbf2f0 and one with the ID noted above; namely; 8b/80%5B2%5D/54/6c/8b80546c-2e35-4a85-b311-1c8fbae3397a. My suspicion is that, by chance, UUID's 8b80f1bc-e51f-4336-bd10-293d13bbf2f0 and 8b80546c-2e35-4a85-b311-1c8fbae3397a were generated in close proximity time-wise and that the "indexed" path element resulted from the attempt to create the pathified versions of these objects at essentially the same time.

      (For what it's worth, the operation during which this occurred was a migration of Fedora 3 objects to Fedora 4 using a customized version of Hydra's Fedora-Migrate).

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                mdurbin Michael Durbin
                Reporter:
                coblej Jim Coble
                Reviewer:
                Andrew Woods
              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: