Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.
SOLVED

AEM VerionHistory node under /content

Avatar

Level 3

On 6.3.0, version history node is getting created at /content/versionhistory path. My application does not have any custom code which does version purging and does not fetch any value from the nodes under /content/versionhistory.

The structure is like this,

-content

--versionhistory [cq:page]

---author-1@example.com [cq:page]

-------child nodes [same as the site structure] [cq:page]

---author-2@example.com [cq:page]

-------child nodes [same as the site structure] [cq:page]

etc..

Versions are also present under /jcr:system/jcr:versionStorage path.

The nodes under /content/versionhistory are getting recreated, does this have something to do with audit logs?. Ex: I deleted /content/versionhistory node. Now, made changes to few pages [modified some components], and I see this /content/versionhistory node got generated again with the entire site structure under it as the child pages.

This is causing issues as are simple redirect rules and vanity urls set for some pages. When these redirects/vanity url's are removed from the actual page, some pages are not editable[blank page, nothing specific in log files] because these redirect/vanity path values are present as a duplicate under /content/versionhistory. Authors are getting blocked frequently.

This is a weird behavior, I dont have this /content/versionhistory path on my local instance, it is happening on higher environments. Can anyone suggest why this node /content/versionhistory is present and how its getting created and a way to get rid of it.

Thanks in advance for any suggestions.

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

Thanks Jorg, for pointing out in right direction.

I am able to reproduce, how this node is getting created.

Whenever author do page compare with any older version, that older version is created as page inside versionhistory node and shows as a page.

I created a breadcrumb to show page location when we do compare, I can see the page location and version and can see same in version history node.

Screen Shot 2018-06-06 at 11.30.16 PM.png

more info

Page Diff

Thanks

Arun



Arun Patidar

View solution in original post

9 Replies

Avatar

Community Advisor

Hi,

I've seen this node in my local instance and I deleted and try to reproduce how It was created but no luck.

Question is how to get rid of this? Simple just create an JCR Event Listner for versionhsitory node created and delete version history node as soon as node created.

observationManager.addEventListener(this, Event.NODE_ADDED , "/content/versionhistory", true, null,

  new String[]{"cq:Page"} , true);

You can find more detail about above method at ObservationManager (Content Repository for Java Technology API 1.0)

Thanks

Arun



Arun Patidar

Avatar

Employee Advisor

It has something to do with diff-ing versions on content ... don't know any details though.

Jörg

Avatar

Employee

Hello,

/content/versionhistory is created by AEM when you compare a version of the content using "Compare to Current" option in Timeline. 

Regards,

Vishu

Avatar

Correct answer by
Community Advisor

Thanks Jorg, for pointing out in right direction.

I am able to reproduce, how this node is getting created.

Whenever author do page compare with any older version, that older version is created as page inside versionhistory node and shows as a page.

I created a breadcrumb to show page location when we do compare, I can see the page location and version and can see same in version history node.

Screen Shot 2018-06-06 at 11.30.16 PM.png

more info

Page Diff

Thanks

Arun



Arun Patidar

Avatar

Level 2
Thanks a lot for the answer @arunpatidar. Just an update, this is true till AEM 6.4.3. After 6.4.3 this structure will be created under "/tmp/versionhistory/".

Avatar

Level 3

Thanks for helping me out on this!

Avatar

Level 1

Hi,

I want to know if anybody was able to solve this issue ? Version history node should get created inside tmp/versionhistory not content/versionhistory. If anyone was able to solve the issue please reply.

Avatar

Level 3

I created a scheduler which runs at a set interval and purges the nodes under /content/versionhistory.

Versionhistory nodes get created under /content and not /tmp. Which version of AEM are you referring to?

Avatar

Level 3

I am using 6.3 and 6.4 and in both the versions, "versionhistory" folder gets created under /tmp folder.


Also, when I am comparing a page using "Compare to Current", this feature is not working. Is this something to do with versionhistory folder location where it's getting created?