Rollout failing due to conflicting mixin (and using the ClassicUI)

Learn how to fix rollout fails due to conflicting mixin (using the ClassicUI) with content update action configuration.

Description description

The rollout of a page is failing due to some conflicting  jcr:mixinTypes  on the page’s thumbnail node.

The conflict occurs when the page was configured with a thumbnail  using the ClassicUI  and then initially rolled-out (first roll-out works).

At this point, doing a rollout of the master page is failing due to conflicting mixin on the page’s thumbnail structure, between:

  • dam:Thumbnails
  • cq:LiveRelationship

The given error in the log is as follow:

27.07.2022 15:48:07.091 *ERROR* [ 0:0:0:0:0:0:0:1 [ 1658929687039]  POST /bin/wcmcommand HTTP/1.1]  com.day.cq.wcm.msm.impl.commands.RolloutCommand Error during roll-out.
com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: javax.jcr.nodetype.ConstraintViolationException: No matching node definition found for dam:thumbnails
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutResource(RolloutManagerImpl.java:824) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutPage(RolloutManagerImpl.java:693) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutPageRelations(RolloutManagerImpl.java:624) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rollout(RolloutManagerImpl.java:515) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.msm.impl.commands.RolloutCommand.performCommand(RolloutCommand.java:153) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.core.impl.commands.WCMCommandService$CommandHolder.performCommand(WCMCommandService.java:178) [ com.day.cq.wcm.cq-wcm-core:5.11.312]
    at com.day.cq.wcm.core.impl.commands.WCMCommandServlet.performCommand(WCMCommandServlet.java:120) [ com.day.cq.wcm.cq-wcm-core:5.11.312]
    at com.day.cq.commons.servlets.AbstractCommandServlet.doPost(AbstractCommandServlet.java:49) [ com.day.cq.cq-commons:5.11.18]
    at org.apache.sling.api.servlets.SlingAllMethodsServlet.mayService(SlingAllMethodsServlet.java:146) [ org.apache.sling.api:2.20.0]
    at org.apache.sling.api.servlets.SlingSafeMethodsServlet.service(SlingSafeMethodsServlet.java:342) [ org.apache.sling.api:2.20.0]
    [ ..]
Caused by: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: javax.jcr.nodetype.ConstraintViolationException: No matching node definition found for dam:thumbnails
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutResource(RolloutManagerImpl.java:824) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutResource(RolloutManagerImpl.java:811) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    ... 135 common frames omitted
Caused by: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: javax.jcr.nodetype.ConstraintViolationException: No matching node definition found for dam:thumbnails
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutResource(RolloutManagerImpl.java:824) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutResource(RolloutManagerImpl.java:811) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    ... 136 common frames omitted
Caused by: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: javax.jcr.nodetype.ConstraintViolationException: No matching node definition found for dam:thumbnails
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutResource(RolloutManagerImpl.java:824) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutResource(RolloutManagerImpl.java:811) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    ... 137 common frames omitted
Caused by: com.day.cq.wcm.api.WCMException: com.day.cq.wcm.api.WCMException: javax.jcr.nodetype.ConstraintViolationException: No matching node definition found for dam:thumbnails
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutResource(RolloutManagerImpl.java:824) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutResource(RolloutManagerImpl.java:811) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    ... 138 common frames omitted
Caused by: com.day.cq.wcm.api.WCMException: javax.jcr.nodetype.ConstraintViolationException: No matching node definition found for dam:thumbnails
    at com.day.cq.wcm.msm.commons.BaseAction.execute(BaseAction.java:154) [ com.day.cq.wcm.cq-msm-commons:1.1.2]
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.rolloutResource(RolloutManagerImpl.java:790) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    ... 139 common frames omitted
Caused by: javax.jcr.nodetype.ConstraintViolationException: No matching node definition found for dam:thumbnails
    at org.apache.jackrabbit.oak.plugins.nodetype.EffectiveNodeTypeImpl.getNodeDefinition(EffectiveNodeTypeImpl.java:454) [ org.apache.jackrabbit.oak-core:1.8.22]
    at org.apache.jackrabbit.oak.plugins.nodetype.ReadOnlyNodeTypeManager.getDefinition(ReadOnlyNodeTypeManager.java:396) [ org.apache.jackrabbit.oak-core:1.8.22]
    at org.apache.jackrabbit.oak.jcr.session.NodeImpl$29.perform(NodeImpl.java:1031) [ org.apache.jackrabbit.oak-jcr:1.8.22]
    at org.apache.jackrabbit.oak.jcr.session.NodeImpl$29.perform(NodeImpl.java:1023) [ org.apache.jackrabbit.oak-jcr:1.8.22]
    at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.perform(SessionDelegate.java:207) [ org.apache.jackrabbit.oak-jcr:1.8.22]
    at org.apache.jackrabbit.oak.jcr.session.ItemImpl.perform(ItemImpl.java:112) [ org.apache.jackrabbit.oak-jcr:1.8.22]
    at org.apache.jackrabbit.oak.jcr.session.NodeImpl.getDefinition(NodeImpl.java:1023) [ org.apache.jackrabbit.oak-jcr:1.8.22]
    at com.day.cq.wcm.msm.commons.ItemFilterImpl.excludes(ItemFilterImpl.java:91) [ com.day.cq.wcm.cq-msm-commons:1.1.2]
    at com.day.cq.wcm.msm.impl.actions.ContentCopyActionFactory$ContentCopyAction.applyFilters(ContentCopyActionFactory.java:293) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.msm.impl.actions.ContentCopyActionFactory$ContentCopyAction.createCopy(ContentCopyActionFactory.java:245) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.msm.impl.actions.ContentCopyActionFactory$ContentCopyAction.doExecute(ContentCopyActionFactory.java:208) [ com.day.cq.wcm.cq-msm-core:5.11.84]
    at com.day.cq.wcm.msm.commons.BaseAction.execute(BaseAction.java:134) [ com.day.cq.wcm.cq-msm-commons:1.1.2]
    ... 140 common frames omitted

Steps to reproduce:

  1. start a vanilla AEM 6.5.13.0
  2. go to  /siteadmin  (so using  ClassicUI)
  3. open the page properties of  /content/we-retail/language-master/en/women
  4. in the image  tab  set any image as thumbnail
  5. rollout the page
  6. now go to  Sites UI
  7. open the page properties for  /content/we-retail/us/en/women  again
  8. in the  Thumbnail  tab, click on  Generate Preview  and save the change
  9. now rollout again the page in /siteadmin

Resolution resolution

This issue occurs during rollout beacuse AEM is unable to create “dam:thumbnails” node below jcr:content for live copy page (https://experienceleague.adobe.com/content/we-retail/us/en/women/jcr:content/image/file/jcr:content?lang=en) and reason for that is during rollout mixinType “dam:Thumbnails” is not appplied to live copy page node “/content/we-retail/us/en/women/jcr:content/image/file/jcr:content” and “dam:Thumbnails” folder can be created only below “dam:Thumbnails” nodeType.

MSM Default behaviour is to ignore new mixin added to the nodes at source during rollout [ 0] and hence it does not gets added to “/content/we-retail/us/en/women/jcr:content/image/file/jcr:content”.

In order to fix this issue, This behaviour can be changed via content update action config.
Default every mixin Type is being ignored as shown in the screenshot below:

It should be updated to use:

(?!.*dam:Thumbnails).*

as shown in the screenshot below:

This should fix the problem.

[ 0] https://experienceleague.adobe.com/docs/experience-manager-64/administering/introduction/msm-sync.html?lang=en#excluding-properties-and-node-types-from-synchronization

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f