AEM 6.3.2.1: Dispatcher flush chainReplicationService processor error

Avatar

Avatar

Jdruwe

Avatar

Jdruwe

Jdruwe

21-03-2018

I am experiencing issues when publishing some pages that have an alias on them, I am publishing the following path .../about-us/shopping-with-us

The json looks like this:

about-us:

   "jcr:primaryType":"cq:PageContent",

   "jcr:mixinTypes":[ 

      "cq:LiveRelationship"

   ],

   "jcr:createdBy":"admin",

   "jcr:title":"about us",

   "cq:template":"/apps/platform-company/templates/general-page",

   "sling:alias":"about-us",

   "pageTitle":"About Us",

   "sling:resourceType":"platform-company/components/page/general",

   "cq:designPath":"/etc/designs/platform-company",

   "cq:lastRolledoutBy":"msm-service",

   "cq:lastModifiedBy":"msm-service",

   "navTitle":"About Us"

}

shopping-with-us:

   "jcr:primaryType":"cq:PageContent",

   "jcr:mixinTypes":[ 

      "cq:LiveRelationship"

   ],

   "jcr:createdBy":"admin",

   "jcr:title":"shopping with us",

   "cq:template":"/apps/platform-company/templates/general-page",

   "sling:alias":"shopping-with-us",

   "pageTitle":"Shopping With Us",

   "sling:resourceType":"platform-company/components/page/general",

   "cq:designPath":"/etc/designs/platform-company",

   "cq:lastRolledoutBy":"msm-service",

   "cq:lastModifiedBy":"msm-service",

   "navTitle":"Shopping With Us"

}

When I publish the page it gets replicated to all my publishers correctly but something goes wrong when it tries to invoke my dispatcher flush agent (has on alias update enabled):

[Adobe Granite ChainReplicationService Processor] com.day.cq.replication.impl.ReplicatorImpl Setting up replication with options: ReplicationOptions{synchronous=false, revision='null', suppressStatusUpdate=true, suppressVersions=false, filter=com.day.cq.replication.impl.ChainReplicationService$1@619809ff, aggregateHandler=null}

*ERROR* [Adobe Granite ChainReplicationService Processor] com.day.cq.replication.impl.ChainReplicationService Unexpected error happened

java.lang.StackOverflowError: null

at java.util.HashMap.putVal(HashMap.java:634)

at java.util.HashMap.put(HashMap.java:611)

at java.util.HashSet.add(HashSet.java:219)

at com.day.cq.replication.impl.AliasesPreprocessor.mergeExistingMappings(AliasesPreprocessor.java:189)

at com.day.cq.replication.impl.AliasesPreprocessor.mergeExistingMappings(AliasesPreprocessor.java:190)

at com.day.cq.replication.impl.AliasesPreprocessor.mergeExistingMappings(AliasesPreprocessor.java:190)

at com.day.cq.replication.impl.AliasesPreprocessor.mergeExistingMappings(AliasesPreprocessor.java:190)

at com.day.cq.replication.impl.AliasesPreprocessor.mergeExistingMappings(AliasesPreprocessor.java:190)

at com.day.cq.replication.impl.AliasesPreprocessor.mergeExistingMappings(AliasesPreprocessor.java:190)

at com.day.cq.replication.impl.AliasesPreprocessor.mergeExistingMappings(AliasesPreprocessor.java:190)

at com.day.cq.replication.impl.AliasesPreprocessor.mergeExistingMappings(AliasesPreprocessor.java:190)

at com.day.cq.replication.impl.AliasesPreprocessor.mergeExistingMappings(AliasesPreprocessor.java:190)

at com.day.cq.replication.impl.AliasesPreprocessor.mergeExistingMappings(AliasesPreprocessor.java:190)

at com.day.cq.replication.impl.AliasesPreprocessor.mergeExistingMappings(AliasesPreprocessor.java:190)

...

I have no idea what is happening. All help is greatly appreciated.

NOTE: restarting the instance did not solve the problem

View Entire Topic

Avatar

Avatar

Jdruwe

Avatar

Jdruwe

Jdruwe

28-03-2018

I found the issue, the alias on about-us (.../about-us/shopping-with-us) was the same as the node name. Apparently the AliasesPreprocessor.mergeExistingMappings cannot handle this because it will cause a stackOverflow error caused by the recursive call of mergeExistingMappings.