Expand my Community achievements bar.

SOLVED

cq:excludedPaths is causing issues with LiveCopy

Avatar

Level 4

While troubleshooting an issue , we noticed that having the page name in this property cq:excludedPaths is preventing the livecopy from being created .. And we have too many nodes to validate to make sure that this property cq:excludedPaths is not existing for that node  . Is there any easier to indicate that this property  cq:excludedPaths shouldnt be taken into consideration while performing the live copy?

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

In addition to what @Jörg_Hoh has mentioned I could find some relevant blogs which might help you in addressing your issue.

https://gauravsachdeva.com/2021/07/12/aem-rollout-option-missing-for-one-country-live-copy/

https://with-example.blogspot.com/2015/03/cq-rollout-option-is-not-listing-all-livecopy.html

 

Basically the cq:excludedPaths is added to any root cq:LiveSyncConfig of your Live Copies when the users delete a live copied page from the Live Copies rather than from the Blueprint. I tried to replicate this issue for you. Below are the steps I followed

 

  1. I created a page under /content/we-retail/language-masters/en/experience. My new page is test-page 

 

Veena_Vikram_0-1636978193420.png

 

2. I rolled out this new page to my language nodes 

Veena_Vikram_1-1636978346461.png

 

3. It was created under 2 live copies

Below screenshot shows the one created under us/en

Veena_Vikram_2-1636978389477.png

 

Below is the cq:LiveSyncConfig node from the us/en 

 

Veena_Vikram_3-1636978426505.png

 

4. Now I deleted the test-page from under us/en which is a LC .  /content/we-retail/us/en/experience/test-page

5. Once I delete this and if you check the cq:LiveSyncConfig of the us/en ; you will see that a new property called cq:excludePaths is added with this deleted path

Veena_Vikram_4-1636978572556.png

 

Now if you try to rollout your pages , this exclude property set will prevent it from rolling out to the us/en 

Veena_Vikram_5-1636978619933.png

 

 

The only solution is to remove the paths from these nodes or to remove the property altogether and the best approach would be go with your First Option where you can write a script and remove either the required paths from this property or the property itself according to your requirement.  

 

Hope this helps. Let me know if you need anymore information

 

Thanks

Veena

View solution in original post

7 Replies

Avatar

Employee Advisor

It's really hard to answer that question, because it does not contain enough details about the MSM setup and what you were doing, so ended up in this situation.

 

I found a reference to this property in the MSM FAQ: https://helpx.adobe.com/experience-manager/kb/index/msm_faq.html

 

Also there 3rd party blog posts on that property, but I am not sure if they relate to your problem.

 

Avatar

Level 4

So this is what we are trying to achieve

 

content/X We use create live copy to create a livecopy of this path at content/Y/X which internally also creates a live copy under content/Y/Z/X -- Now the problem is we we have this property cq:excludedPaths  at content/Y/Z which is preventing it from creating content/Y/Z/X. 

 

1.One way to tackle this would be to navigate to this path content/Y/Z and remove cq:excludedPaths. Problem with this we possibly have more nodes..for which we will have to write a script to get rid of the property for all those nodes.

 

2.Other way would be to find the msm code and see if we could exclude this cq:excludedPaths check . havent looked at this option yet . Before i explored this i wanted to see if there is a simpler way to tackle this .

Avatar

Correct answer by
Community Advisor

In addition to what @Jörg_Hoh has mentioned I could find some relevant blogs which might help you in addressing your issue.

https://gauravsachdeva.com/2021/07/12/aem-rollout-option-missing-for-one-country-live-copy/

https://with-example.blogspot.com/2015/03/cq-rollout-option-is-not-listing-all-livecopy.html

 

Basically the cq:excludedPaths is added to any root cq:LiveSyncConfig of your Live Copies when the users delete a live copied page from the Live Copies rather than from the Blueprint. I tried to replicate this issue for you. Below are the steps I followed

 

  1. I created a page under /content/we-retail/language-masters/en/experience. My new page is test-page 

 

Veena_Vikram_0-1636978193420.png

 

2. I rolled out this new page to my language nodes 

Veena_Vikram_1-1636978346461.png

 

3. It was created under 2 live copies

Below screenshot shows the one created under us/en

Veena_Vikram_2-1636978389477.png

 

Below is the cq:LiveSyncConfig node from the us/en 

 

Veena_Vikram_3-1636978426505.png

 

4. Now I deleted the test-page from under us/en which is a LC .  /content/we-retail/us/en/experience/test-page

5. Once I delete this and if you check the cq:LiveSyncConfig of the us/en ; you will see that a new property called cq:excludePaths is added with this deleted path

Veena_Vikram_4-1636978572556.png

 

Now if you try to rollout your pages , this exclude property set will prevent it from rolling out to the us/en 

Veena_Vikram_5-1636978619933.png

 

 

The only solution is to remove the paths from these nodes or to remove the property altogether and the best approach would be go with your First Option where you can write a script and remove either the required paths from this property or the property itself according to your requirement.  

 

Hope this helps. Let me know if you need anymore information

 

Thanks

Veena

Avatar

Level 2

Veena - Thank you for the information, this is very helpful.  We're running into a similar issue although how could we create a script for cloud?

 

Thanks

Avatar

Community Advisor

@eenerellehcim  I know of few ways. 

  1.      If you know groovy , you can try writing scripts using groovy .. In cloud I have never tried running groovy , but I saw few post which might help you with that incase you get stuck https://experienceleaguecommunities.adobe.com/t5/adobe-experience-manager/groovy-console-in-aem-as-a...
  2. You can also write a dummy servlet . (When I say script don't confuse it with Javascript, these can be plain Java code too, just to run some onetime chore) . In the servlet you can just get the paths and write the logic to remove these properties. 

 

Avatar

Level 2

Thanks @VeenaVikraman , we were used to running groovy on our on prem instance but since it wasn't completely supposed in cloud hadn't gone down that route.

 

I think we'll go down the servlet route next, thanks!

Avatar

Level 8

Hi @VeenaVikraman ,

How to write the script, Do you have any reference please provide.

Thanks,

Vani.