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

Accepted Solutions (1)

Accepted Solutions (1)

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.

Answers (3)

Answers (3)

Avatar

Avatar

Kunwar

Employee

Avatar

Kunwar

Employee

Kunwar
Employee

22-03-2018

I'd suggest to open up a Daycare ticket for us(Adobe) to look into it. Make sure you upload all the logs in the ticket and impact of this issue.

Avatar

Avatar

Jdruwe

Avatar

Jdruwe

Jdruwe

21-03-2018

Unchecking 'Optimize alias resolution' did not have any effect, I still get the same error as before. The weird thing is that the error does not happen on all pages, for some pages of the same site (that also include aliases) and pages of other sites in our setup it seems to work.

Avatar

Avatar

Kunwar

Employee

Avatar

Kunwar

Employee

Kunwar
Employee

21-03-2018

For a test, Can you navigate to http://HOST:PORT/system/console/configMgr/org.apache.sling.jcr.resource.internal.JcrResourceResolver...  and uncheck 'Enable Optimize alias resolution' and see if you can replicate this issue ?