Uploaded image for project: 'Hippo Repository'
  1. Hippo Repository
  2. REPO-1949

Autoexport infinite exception loop when moving and replacing a content node

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Normal
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 5.2.0
    • Labels:
      None
    • Similar issues:
    • Processed by team:
      Platform
    • Sprint:
      Platform 176

      Description

      Steps to reproduce:

       
      Checkout the following commit in the PRODDOCS-1361 branch of the website-tutorial project:
       
      https://github.com/onehippo/website-tutorial/commit/38749622c3cb9c418dd16072a00cd0587b1403d4
       
      Then follow the instructions at https://www.onehippo.org/trails/developer-trail/develop-new-features/two-columns-page-configuration.html.
       
      When you make the changes to /hst:hst/hst:configurations/gogreen/hst:workspace/hst:containers/newslist, only click 'write changes to repository' after making the changes:

      • rename main node to left
      • create main node
      • move left node under main
      • save
         
        The following exception then starts getting thrown in an infinite loop:
         
        [INFO] [talledLocalContainer] 09:00:27 INFO  autoexport is processing changes...
        [INFO] [talledLocalContainer] 09:00:27 ERROR Processing events failed: 
        [INFO] [talledLocalContainer] java.lang.RuntimeException: Exception while regenerating changed content source file for /hst:hst/hst:configurations/gogreen/hst:workspace/hst:containers/newslist/main/newslist
        [INFO] [talledLocalContainer]  at org.onehippo.cm.engine.autoexport.DefinitionMergeService.lambda$exportChangedContentSources$10(DefinitionMergeService.java:697) ~[hippo-repository-engine-5.2.0-SNAPSHOT.jar:5.2.0-SNAPSHOT]
        [INFO] [talledLocalContainer]  at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.HashMap$KeySpliterator.forEachRemaining(HashMap.java:1553) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:270) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.Iterator.forEachRemaining(Iterator.java:116) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1801) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418) ~[?:1.8.0_161]
        [INFO] [talledLocalContainer]  at org.onehippo.cm.engine.autoexport.DefinitionMergeService.exportChangedContentSources(DefinitionMergeService.java:682) ~[hippo-repository-engine-5.2.0-SNAPSHOT.jar:5.2.0-SNAPSHOT]
        [INFO] [talledLocalContainer]  at org.onehippo.cm.engine.autoexport.DefinitionMergeService.mergeChangesToModules(DefinitionMergeService.java:277) ~[hippo-repository-engine-5.2.0-SNAPSHOT.jar:5.2.0-SNAPSHOT]
        [INFO] [talledLocalContainer]  at org.onehippo.cm.engine.autoexport.EventJournalProcessor.exportChangesModule(EventJournalProcessor.java:589) ~[hippo-repository-engine-5.2.0-SNAPSHOT.jar:5.2.0-SNAPSHOT]
        [INFO] [talledLocalContainer]  at org.onehippo.cm.engine.autoexport.EventJournalProcessor.processEvents(EventJournalProcessor.java:366) ~[hippo-repository-engine-5.2.0-SNAPSHOT.jar:5.2.0-SNAPSHOT]
        [INFO] [talledLocalContainer]  at org.onehippo.cm.engine.autoexport.EventJournalProcessor.tryProcessEvents(EventJournalProcessor.java:253) ~[hippo-repository-engine-5.2.0-SNAPSHOT.jar:5.2.0-SNAPSHOT]
        [INFO] [talledLocalContainer]  at org.onehippo.cm.engine.autoexport.EventJournalProcessor.lambda$new$0(EventJournalProcessor.java:127) ~[hippo-repository-engine-5.2.0-SNAPSHOT.jar:5.2.0-SNAPSHOT]
        [INFO] [talledLocalContainer]  at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_161]
        [INFO] [talledLocalContainer]  at java.lang.Thread.run(Thread.java:748) [?:1.8.0_161]
        [INFO] [talledLocalContainer] Caused by: javax.jcr.PathNotFoundException: /hst:hst/hst:configurations/gogreen/hst:workspace/hst:containers/newslist/main/newslist
        [INFO] [talledLocalContainer]  at org.apache.jackrabbit.core.ItemManager.getNode(ItemManager.java:577) ~[jackrabbit-core-2.14.0-h2.jar:2.14.0-h2]
        [INFO] [talledLocalContainer]  at org.apache.jackrabbit.core.session.SessionItemOperation$6.perform(SessionItemOperation.java:129) ~[jackrabbit-core-2.14.0-h2.jar:2.14.0-h2]
        [INFO] [talledLocalContainer]  at org.apache.jackrabbit.core.session.SessionItemOperation$6.perform(SessionItemOperation.java:125) ~[jackrabbit-core-2.14.0-h2.jar:2.14.0-h2]
        [INFO] [talledLocalContainer]  at org.apache.jackrabbit.core.session.SessionItemOperation.perform(SessionItemOperation.java:187) ~[jackrabbit-core-2.14.0-h2.jar:2.14.0-h2]
        [INFO] [talledLocalContainer]  at org.apache.jackrabbit.core.session.SessionState.perform(SessionState.java:216) ~[jackrabbit-core-2.14.0-h2.jar:2.14.0-h2]
        [INFO] [talledLocalContainer]  at org.apache.jackrabbit.core.SessionImpl.perform(SessionImpl.java:367) ~[jackrabbit-core-2.14.0-h2.jar:2.14.0-h2]
        [INFO] [talledLocalContainer]  at org.apache.jackrabbit.core.SessionImpl.getNode(SessionImpl.java:1155) ~[jackrabbit-core-2.14.0-h2.jar:2.14.0-h2]
        [INFO] [talledLocalContainer]  at org.hippoecm.repository.decorating.SessionDecorator.getNode(SessionDecorator.java:353) ~[hippo-repository-connector-5.2.0-SNAPSHOT.jar:5.2.0-SNAPSHOT]
        [INFO] [talledLocalContainer]  at org.onehippo.cm.engine.autoexport.DefinitionMergeService.lambda$exportChangedContentSources$10(DefinitionMergeService.java:694) ~[hippo-repository-engine-5.2.0-SNAPSHOT.jar:5.2.0-SNAPSHOT]
        [INFO] [talledLocalContainer]  ... 26 more
         
        The workaround is to save after each step:
      • rename main node to left
      • save
      • create main node
      • save
      • move left node under main
      • save

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              sshepelevich Sergey Shepelevich
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: