Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
Bedrock Mission!

Learn more

View all

Sign in to view all badges

MSM-Core fails to start in AEM 6.4.2 if cq:master is empty.

Avatar

Avatar
Springboard
Level 2
pegr69
Level 2

Likes

5 likes

Total Posts

17 posts

Correct reply

2 solutions
Top badges earned
Springboard
Establish
Ignite 5
Give Back 10
Ignite 3
View profile

Avatar
Springboard
Level 2
pegr69
Level 2

Likes

5 likes

Total Posts

17 posts

Correct reply

2 solutions
Top badges earned
Springboard
Establish
Ignite 5
Give Back 10
Ignite 3
View profile
pegr69
Level 2

22-10-2018

Hi all,

This is more of a feedback to AEM team.

Just did an upgrade to AEM 6.3 to 6.4 of a production system, all went well in the first upgradestep to 6.4.0. However when installing SP 6.4.2 the system never started properly.

After a massive debug process, it turned out that we had a couple of sites where the cq:master attribute in LiveSyncConfig was empty, this caused the msm-core to fail during startup with the following dump:

------------------

22.10.2018 12:50:19.912 *ERROR* [qtp1785523215-65] com.day.cq.wcm.cq-msm-core bundle com.day.cq.wcm.cq-msm-core:5.11.38 (432)[com.day.cq.wcm.msm.impl.LiveCopyServiceImpl(5773)] : The activate method has thrown an exception (javax.jcr.RepositoryException: Not an absolute path: )

javax.jcr.RepositoryException: Not an absolute path:

        at org.apache.jackrabbit.oak.jcr.session.SessionImpl.getOakPathOrThrow(SessionImpl.java:152) [org.apache.jackrabbit.oak-jcr:1.8.7]

        at org.apache.jackrabbit.oak.jcr.session.SessionImpl.access$100(SessionImpl.java:82) [org.apache.jackrabbit.oak-jcr:1.8.7]

        at org.apache.jackrabbit.oak.jcr.session.SessionImpl$1.performNullable(SessionImpl.java:186) [org.apache.jackrabbit.oak-jcr:1.8.7]

        at org.apache.jackrabbit.oak.jcr.session.SessionImpl$1.performNullable(SessionImpl.java:182) [org.apache.jackrabbit.oak-jcr:1.8.7]

        at org.apache.jackrabbit.oak.jcr.delegate.SessionDelegate.performNullable(SessionDelegate.java:243) [org.apache.jackrabbit.oak-jcr:1.8.7]

        at org.apache.jackrabbit.oak.jcr.session.SessionImpl.getNodeOrNull(SessionImpl.java:182) [org.apache.jackrabbit.oak-jcr:1.8.7]

        at org.apache.jackrabbit.oak.jcr.session.SessionImpl.nodeExists(SessionImpl.java:313) [org.apache.jackrabbit.oak-jcr:1.8.7]

        at com.adobe.granite.repository.impl.CRX3SessionImpl.nodeExists(CRX3SessionImpl.java:188) [com.adobe.granite.repository:1.4.88]

        at com.day.cq.wcm.msm.impl.LiveCopyFinderProvider.buildBloomFilter(LiveCopyFinderProvider.java:331) [com.day.cq.wcm.cq-msm-core:5.11.38]

        at com.day.cq.wcm.msm.impl.LiveCopyServiceImpl.activate(LiveCopyServiceImpl.java:96) [com.day.cq.wcm.cq-msm-core:5.11.38]

        at sun.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

        at java.lang.reflect.Method.invoke(Method.java:498)

        at org.apache.felix.scr.impl.inject.methods.BaseMethod.invokeMethod(BaseMethod.java:228) [org.apache.felix.scr:2.1.0.B008]

        at org.apache.felix.scr.impl.inject.methods.BaseMethod.access$500(BaseMethod.java:41) [org.apache.felix.scr:2.1.0.B008]

        at org.apache.felix.scr.impl.inject.methods.BaseMethod$Resolved.invoke(BaseMethod.java:664) [org.apache.felix.scr:2.1.0.B008]

        at org.apache.felix.scr.impl.inject.methods.BaseMethod.invoke(BaseMethod.java:510) [org.apache.felix.scr:2.1.0.B008]

        at org.apache.felix.scr.impl.inject.methods.ActivateMethod.invoke(ActivateMethod.java:317) [org.apache.felix.scr:2.1.0.B008]

        at org.apache.felix.scr.impl.inject.methods.ActivateMethod.invoke(ActivateMethod.java:307) [org.apache.felix.scr:2.1.0.B008]

        at org.apache.felix.scr.impl.manager.SingleComponentManager.createImplementationObject(SingleComponentManager.java:334) [org.apache.felix.scr:2.1.0.B008]

-----------------

In order to find the fault, you search for the following using crxde:

SELECT * FROM [cq:LiveSyncConfig] AS s WHERE ISDESCENDANTNODE([/content]) AND s.[cq:master] = ''

Change the master refernce to something useful and that does exist!

The code cannot handle the situation where a reference is missing or is pointing to something invalid, and therefor AEM never starts properly.

2 Comments

Avatar

Avatar
Give Back 1000
Level 10
jantzen_belliston-Adobe
Level 10

Likes

360 likes

Total Posts

2,372 posts

Correct reply

823 solutions
Top badges earned
Give Back 1000
Give back 900
Give Back 800
Give Back 700
Give back 600
View profile

Avatar
Give Back 1000
Level 10
jantzen_belliston-Adobe
Level 10

Likes

360 likes

Total Posts

2,372 posts

Correct reply

823 solutions
Top badges earned
Give Back 1000
Give back 900
Give Back 800
Give Back 700
Give back 600
View profile
jantzen_belliston-Adobe
Level 10

23-07-2019

kautuksahni​ - Can you ensure this is accounted for with the AEM product teams?

Avatar

Avatar
Establish
Community Manager
kautuk_sahni
Community Manager

Likes

1,360 likes

Total Posts

6,877 posts

Correct reply

1,150 solutions
Top badges earned
Establish
Coach
Originator
Contributor 2
Contributor
View profile

Avatar
Establish
Community Manager
kautuk_sahni
Community Manager

Likes

1,360 likes

Total Posts

6,877 posts

Correct reply

1,150 solutions
Top badges earned
Establish
Coach
Originator
Contributor 2
Contributor
View profile
kautuk_sahni
Community Manager

24-07-2019

jantzen.belliston​, Thanks for notifying me about this thread.

pegr69 Request you to please create this questions on Adobe Experience Manager .