Expand my Community achievements bar.

SOLVED

MSM commit changes to live copy issue (AEM6.2)

Avatar

Level 4

Hi Team,

I am getting the below error while activating the Blueprint page . Blueprint page content not updating on live copy.

 *ERROR* [Thread-1243] com.day.cq.wcm.msm.impl.RolloutManagerImpl Exception during process of event {}
com.day.cq.wcm.api.WCMException: javax.jcr.InvalidItemStateException: OakState0001: Unresolved conflicts in /content/mysite/en-us/products/jcr:content
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.save(RolloutManagerImpl.java:966)
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.access$800(RolloutManagerImpl.java:109)
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl$ReplicationActionProcessor.run(RolloutManagerImpl.java:1125)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Caused by: javax.jcr.InvalidItemStateException: OakState0001: Unresolved conflicts in /content/mysite/en-us/products/jcr:content
    at org.apache.jackrabbit.oak.api.CommitFailedException.asRepositoryException(CommitFailedException.java:237)
    at org.apache.jackrabbit.oak.api.CommitFailedException.asRepositoryException(CommitFailedException.java:212)
    at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.newRepositoryException(SessionDelegate.java:670)
    at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.save(SessionDelegate.java:496)
    at org.apache.jackrabbit.oak.jcr.session.SessionImpl$8.performVoid(SessionImpl.java:419)
    at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.performVoid(SessionDelegate.java:274)
    at org.apache.jackrabbit.oak.jcr.session.SessionImpl.save(SessionImpl.java:416)
    at com.day.cq.wcm.msm.impl.RolloutManagerImpl.save(RolloutManagerImpl.java:960)
    ... 7 common frames omitted
Caused by: org.apache.jackrabbit.oak.api.CommitFailedException: OakState0001: Unresolved conflicts in /content/mysite/en-us/products/jcr:content
    at org.apache.jackrabbit.oak.plugins.commit.ConflictValidator.failOnMergeConflict(ConflictValidator.java:115)
    at org.apache.jackrabbit.oak.plugins.commit.ConflictValidator.propertyChanged(ConflictValidator.java:90)
    at org.apache.jackrabbit.oak.spi.commit.CompositeEditor.propertyChanged(CompositeEditor.java:91)
    at org.apache.jackrabbit.oak.spi.commit.EditorDiff.propertyChanged(EditorDiff.java:93)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareProperties(SegmentNodeState.java:596)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:456)
    at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:531)
    at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
    at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
    at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
    at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
    at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
    at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
    at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
    at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
    at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
    at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
    at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
    at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
    at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
    at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
    at org.apache.jackrabbit.oak.spi.commit.EditorDiff.childNodeChanged(EditorDiff.java:148)
    at org.apache.jackrabbit.oak.plugins.segment.MapRecord.compare(MapRecord.java:414)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeState.compareAgainstBaseState(SegmentNodeState.java:583)
    at org.apache.jackrabbit.oak.spi.commit.EditorDiff.process(EditorDiff.java:52)
    at org.apache.jackrabbit.oak.spi.commit.EditorHook.processCommit(EditorHook.java:54)
    at org.apache.jackrabbit.oak.spi.commit.CompositeHook.processCommit(CompositeHook.java:61)
    at org.apache.jackrabbit.oak.spi.commit.CompositeHook.processCommit(CompositeHook.java:61)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore$Commit.prepare(SegmentNodeStore.java:496)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore$Commit.optimisticMerge(SegmentNodeStore.java:519)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore$Commit.execute(SegmentNodeStore.java:575)
    at org.apache.jackrabbit.oak.plugins.segment.SegmentNodeStore.merge(SegmentNodeStore.java:238)
    at org.apache.jackrabbit.oak.spi.state.ProxyNodeStore.merge(ProxyNodeStore.java:43)
    at org.apache.jackrabbit.oak.core.MutableRoot.commit(MutableRoot.java:247)
    at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.commit(SessionDelegate.java:347)
    at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.save(SessionDelegate.java:494)
    ... 11 common frames omitted

 

Please help if anyone encountered same issue.

Thanks in advance

1 Accepted Solution

Avatar

Correct answer by
Level 5

Hi Sumit, I remember, sometime back, we also faced the similar issue with BluePrint and liveCopy. We had to create the listener which triggers on Blueprint page activation and synch the values in the live copies nodes. Not sure if you can do something like this or need more details? for us, synch issue was not appearing all the times but sometimes and so frequent.

View solution in original post

9 Replies

Avatar

Community Advisor

Hi,

The exception is coming while rollout. 

What is your rollout config?

 

~ Prince Shivhare

Avatar

Level 4

Hi,

I am using custom rollout config on live copy where jcr:content has  "cq:trigger" property as 'publish' .

It has child nodes with OOTB properties like 'contentupdate' , 'contentDelete' & so on.

On activation of blueprint page the rollout config should activate the live copy with updated property value on blueprint page to pass that same value to live copy. But this process is failing to update the property value in livecopy page.

Avatar

Community Advisor

Hi,

I tried it in AEM 6.2, and it worked for me.

I copied the "http://localhost:4502/crx/de/index.jsp#/etc/msm/rolloutconfigs/pushonmodifyshallow" in same path and renamed it to "http://localhost:4502/crx/de/index.jsp#/etc/msm/rolloutconfigs/custom-rollout-config".

I kept cq:trigger property to publish and after activating the pages. I can see the changes reflecting on live copy.

see attached files.

 

~ Prince Shivhare

Avatar

Level 4

Hi Prince,

Thank you for such a quick turnaround.

I am still not able to replicate the properties of a page like 'onTime' , 'offTime' & 'cq:tag'  from a blueprint page to live copy page while activation . Please help to get the property value from blueprint to live copy on activation.

Thank you as always

Avatar

Community Advisor

Hi,

Please check this link:

https://helpx.adobe.com/experience-manager/kb/MSMRolloutConfig.html

https://docs.adobe.com/content/docs/en/cq/5-6-1/administering/multi_site_manager.html#Excluding%20Pr...

When you roll out a page, not all adapted properties are updated on the live copy page.

 

Hope this will help you.

~ Prince

Avatar

Level 4

Hi Prince,

Thank you for the links shared.

But the properties which I am trying to move from blueprint to livecopy doesn't start with cq: , jcr: etc. 

They are properties like onTime , offTime etc. Do I need to do anything to get these properties onto livecopy page.?

Thanks a always

Avatar

Community Advisor

Hi Sumit,

Here we have an example of jcr:title

http://blogs.perficient.com/adobe/2016/11/30/updating-page-titles-with-aem-livecopy/

where the client wanted to updating the jcr:title in the live copy. you will have to do custom configurations to achieve this.

 

~ Prince Shivhare

Avatar

Correct answer by
Level 5

Hi Sumit, I remember, sometime back, we also faced the similar issue with BluePrint and liveCopy. We had to create the listener which triggers on Blueprint page activation and synch the values in the live copies nodes. Not sure if you can do something like this or need more details? for us, synch issue was not appearing all the times but sometimes and so frequent.

Avatar

Level 4

Hi sAndeep,

Thank you for your input.

I will try if some listener can be created to trigger content from Blueprint to livecopy.

If you have any sample would help me .

Thanks as always