Uploaded image for project: '[Read Only] - Hippo Repository'
  1. [Read Only] - Hippo Repository
  2. REPO-1839

NPE loop during AutoExport after changing primary type

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • Top
    • Resolution: Fixed
    • 5.0.1
    • 5.0.2
    • None
    • None
    • Platform166: GA (truly,really)

    Description

      ValueProcessor.valueFrom(javax.jcr.Property, DefinitionNodeImpl) wrongly converts properties of (jcr) type NAME, URI and PATH to ValueType.STRING.

      This causes (eventually) a NPE in the ConfigurationTreeBuilder.requireOverrideOperationForPrimaryType() method during AutoExport when changing a node its primary type (and resulting AutoExport to start looping on this NPE...):

      [INFO] [talledLocalContainer] java.lang.NullPointerException: null
      [INFO] [talledLocalContainer] 	at org.onehippo.cm.model.impl.tree.ConfigurationTreeBuilder.requireOverrideOperationForPrimaryType(ConfigurationTreeBuilder.java:640) ~[hippo-configuration-management-model-1.0.2-SNAPSHOT.jar:1.0.2-SNAPSHOT]
      [INFO] [talledLocalContainer] 	at org.onehippo.cm.model.impl.tree.ConfigurationTreeBuilder.mergeProperty(ConfigurationTreeBuilder.java:541) ~[hippo-configuration-management-model-1.0.2-SNAPSHOT.jar:1.0.2-SNAPSHOT]
      [INFO] [talledLocalContainer] 	at org.onehippo.cm.model.impl.tree.ConfigurationTreeBuilder.mergeNode(ConfigurationTreeBuilder.java:253) ~[hippo-configuration-management-model-1.0.2-SNAPSHOT.jar:1.0.2-SNAPSHOT]
      [INFO] [talledLocalContainer] 	at org.onehippo.cm.model.impl.tree.ConfigurationTreeBuilder.push(ConfigurationTreeBuilder.java:136) ~[hippo-configuration-management-model-1.0.2-SNAPSHOT.jar:1.0.2-SNAPSHOT]
      [INFO] [talledLocalContainer] 	at org.onehippo.cm.engine.autoexport.DefinitionMergeService.addLocalProperty(DefinitionMergeService.java:1653) ~[hippo-repository-engine-5.0.2-SNAPSHOT.jar:5.0.2-SNAPSHOT]
      [INFO] [talledLocalContainer] 	at org.onehippo.cm.engine.autoexport.DefinitionMergeService.mergePropertyThatShouldExist(DefinitionMergeService.java:1559) ~[hippo-repository-engine-5.0.2-SNAPSHOT.jar:5.0.2-SNAPSHOT]
      [INFO] [talledLocalContainer] 	at org.onehippo.cm.engine.autoexport.DefinitionMergeService.mergeProperty(DefinitionMergeService.java:1476) ~[hippo-repository-engine-5.0.2-SNAPSHOT.jar:5.0.2-SNAPSHOT]
      [INFO] [talledLocalContainer] 	at org.onehippo.cm.engine.autoexport.DefinitionMergeService.mergeConfigDefinitionNode(DefinitionMergeService.java:712) ~[hippo-repository-engine-5.0.2-SNAPSHOT.jar:5.0.2-SNAPSHOT]
      [INFO] [talledLocalContainer] 	at org.onehippo.cm.engine.autoexport.DefinitionMergeService.mergeChangesToModules(DefinitionMergeService.java:258) ~[hippo-repository-engine-5.0.2-SNAPSHOT.jar:5.0.2-SNAPSHOT]
      [INFO] [talledLocalContainer] 	at org.onehippo.cm.engine.autoexport.EventJournalProcessor.exportChangesModule(EventJournalProcessor.java:589) ~[hippo-repository-engine-5.0.2-SNAPSHOT.jar:5.0.2-SNAPSHOT]
      [INFO] [talledLocalContainer] 	at org.onehippo.cm.engine.autoexport.EventJournalProcessor.processEvents(EventJournalProcessor.java:366) ~[hippo-repository-engine-5.0.2-SNAPSHOT.jar:5.0.2-SNAPSHOT]

      Further investigation showed we also incorrectly export the mixins property with type STRING (in JcrContentExporter and AutoExportConfigExporter).

       

      Attachments

        Activity

          People

            Unassigned Unassigned
            adouma Ate Douma
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: