AEM 6.3.2.1: Dispatcher flush chainReplicationService processor error | Community
Skip to main content
Level 4
March 21, 2018
Solved

AEM 6.3.2.1: Dispatcher flush chainReplicationService processor error

  • March 21, 2018
  • 4 replies
  • 3711 views

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

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by JeroenDruwe

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.

4 replies

Adobe Employee
March 21, 2018

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

Level 4
March 22, 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.

Adobe Employee
March 22, 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.

JeroenDruweAuthorAccepted solution
Level 4
March 28, 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.