Tuesday, 12 April 2016

Migrating cloned item to Sitecore 8.1 and above


After migrating content from 7.2 (rev. 140526) to 8.1 (rev. 151003). We noticed Sitecore shows the standard value like $name token instead of original value for unchanged fields on cloned items. Also, “Created from” field on cloned items shows “unknown” instead of linkage to the source item.




As you can see in the following link, Sitecore has introduced a new field named “__Source Item” in version 8.1 to increase the performance of getting item operation for regular and cloned items.


https://community.sitecore.net/developers/f/5/t/2062

To solve this problem we have to run a query on items and updated the cloned items. After setting the value for “__Source Item” field on cloned items, Sitecore shows the expected values for all of the unchanged fields and showing linkage to source item on “Created from” field.
For having better performance making sure we are not killing the web server I followed the following strategies:

1- Created a new sitecore admin page to update the fields, It's password protected and only accessible to administrators

2- Disabling indexing while updating the cloned items fields

3- Running the updates asynchronously by splitting the update process into 11 tasks (11 threads)