Infinite loop when installing user group package | Community
Skip to main content
Level 2
October 16, 2015

Infinite loop when installing user group package

  • October 16, 2015
  • 2 replies
  • 2583 views

I have an environment which was upgraded to AEM 6 (SP2 + oak 1.11) from CQ5.5 (SP3).

 

When I now package the groups on that instance and try to install them on my local machine, I get an infinite install loop. This is made clear by the log messages which keep attempting to process non existing authorizables. I only want the group structure and not the userdata. So I expected behaviour as it always was (BESTEFFORT). Unfortunately, it states it's doing best effort, but AEM tries to fully import each group sequentially, when it's reached the last group, it start's over with the first group, and so on, hence the infinite loop.

An example output is shown below:

16.02.2015 10:55:50.358 *WARN* [qtp481007721-40] org.apache.jackrabbit.oak.security.user.UserImporter New member of Group 'clients': No such authorizable (NodeID = ffef53f9-bcde-3387-ace3-13522e79934b)<

16.02.2015 10:55:50.358 *INFO* [qtp481007721-40] org.apache.jackrabbit.oak.security.user.UserImporter ImportBehavior.BESTEFFORT: Remember non-existing member for processing.

16.02.2015 10:55:50.358 *WARN* [qtp481007721-40] org.apache.jackrabbit.oak.security.user.UserImporter New member of Group 'clients': No such authorizable (NodeID = fff33889-171a-3502-a7fd-3a460dc7a8fd)

16.02.2015 10:55:50.358 *INFO* [qtp481007721-40] org.apache.jackrabbit.oak.security.user.UserImporter ImportBehavior.BESTEFFORT: Remember non-existing member for processing.

16.02.2015 10:55:50.359 *WARN* [qtp481007721-40] org.apache.jackrabbit.oak.security.user.UserImporter New member of Group 'clients': No such authorizable (NodeID = fff9cca2-5e06-384b-bbc4-1200d44841a2)

16.02.2015 10:55:50.359 *INFO* [qtp481007721-40] org.apache.jackrabbit.oak.security.user.UserImporter ImportBehavior.BESTEFFORT: Remember non-existing member for processing.

16.02.2015 10:55:50.360 *WARN* [qtp481007721-40] org.apache.jackrabbit.oak.security.user.UserImporter New member of Group 'clients': No such authorizable (NodeID = fff9f699-7436-36bd-8798-d77d23b2f56a)

16.02.2015 10:55:50.360 *INFO* [qtp481007721-40] org.apache.jackrabbit.oak.security.user.UserImporter ImportBehavior.BESTEFFORT: Remember non-existing member for processing.

16.02.2015 10:55:50.360 *WARN* [qtp481007721-40] org.apache.jackrabbit.oak.security.user.UserImporter New member of Group 'clients': No such authorizable (NodeID = fffc5405-fa26-3762-8071-74494cd336ce)

16.02.2015 10:55:50.360 *INFO* [qtp481007721-40] org.apache.jackrabbit.oak.security.user.UserImporter ImportBehavior.BESTEFFORT: Remember non-existing member for processing.

16.02.2015 10:55:50.360 *INFO* [qtp481007721-40] org.apache.jackrabbit.oak.security.user.UserImporter ImportBehavior.BESTEFFORT: Found 21190 entries of rep:members pointing to non-existing authorizables. Adding to rep:members.

 

If I wait long enough I do get an error, but it's unclear in the context of my 130 groups

 

16.02.2015 10:57:40.539 *INFO* [qtp481007721-40] org.apache.jackrabbit.vault.fs.io.AutoSave Threshold of 1024 reached. saving approx 190 transient changes. 0 unresolved

16.02.2015 10:57:42.518 *ERROR* [qtp481007721-40] org.apache.jackrabbit.vault.fs.io.AutoSave error during auto save - retrying after refresh...

16.02.2015 10:57:44.833 *ERROR* [qtp481007721-40] org.apache.jackrabbit.vault.fs.io.Importer Error while committing changes. Aborting.

16.02.2015 10:57:44.834 *ERROR* [qtp481007721-40] org.apache.jackrabbit.vault.packaging.impl.ZipVaultPackage Error during install.

javax.jcr.nodetype.ConstraintViolationException: OakConstraint0025: Authorizable property rep:authorizableId may not be removed.

 

Can someone please advise me? I don't want to have to add 130 groups manually and interlink them manually while a regular package should do the job.

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

2 replies

Sham_HC
Level 10
October 16, 2015

There are couple of changes between 5.5 & 6.  You need to follow some tricks & mentioning below I could remember so far.

1)  Make sure you exclude admin user in the package.

2)    Make sure to exclude all the login token of the user.

3)    Make sure to include only the user that does not exist in aem6.

3xil3Author
Level 2
October 16, 2015

Hi Sham

Although I'm aware of some (not all) differences between 5.5 & 6. I'm trying to install a package containing only groups not users. So the question becomes, are there any similar rules for groups to keep in mind?

Adobe Employee
October 16, 2015

Can you supply some details about the definition of your package? Eg the filters and inclusions/exclusions.

3xil3Author
Level 2
October 16, 2015

I only have one single filter which is set to /home/groups, no specific inclusions or exclusions. The most simple form of a content package basically, just one path and that's it.

Dinu_Arya
Level 6
October 16, 2015

Hi,

It's better to include entire path in filter.xml instead of parent of the groups. If you give like this, it will try to install all the nodes which are there under "/home/groups". If you are giving the filter with parents folder, make sure you have used mode="merge" option for the filter. If you set to the filter in filter.xml to exact group path e.g. "/home/groups/c" or "/home/groups/c/contributor". If we do like this, only the related nodes will be installed. May I know the installed nodes count? It will be visible in the activity log after installation. If your package contains more than 1024 nodes, I think the remaining nodes might not be installed. You can check the threshold limit at -

  • Click on "Install" option beside the package
  • Expand "Advanced Settings".
  • "Save Threshold". You can set the limit here. But I'm not sure how it will impact. Need to check with Adobe people.

Thanks,

AryA.