Sitecore Version Upgrade Whitepaper V1.0

Embed Size (px)

Citation preview

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    1/34

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    2/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 1 | P a g e

    ContentsDisclaimer: ....................... ......................................... ............................................... ..........................3

    Introduction: .................... ............................................ ............................................ ..........................4

    The Basic Sitecore Solution: ......................................... ............................................... .................4

    The Expert Sitecore Solution: ............................................................................. ..........................4

    What is Sitecore Version Upgrade? ................................................................ ......................................5

    Why upgrade our current Sitecore Solution to a later version? ..............................................................6

    How to approach a Sitecore Version Upgrade? .....................................................................................6

    Basic Sitecore Solution: .................................. ................................................. ................................6

    Identify a version of Sitecore that we want as a target version: ..............................................7

    Verify that the version we selected as Target Version is not mentioned only as a feature

    release or to be used as only an intermediate version: ................................................................ 10

    Check if there are any Known Issues for our selected version: ........................................... ... 10

    Check for Deprecated Functionalities: ........... ................................................. ..................... 12

    Identify the pre-requisites for that particular Version of Sitecore:......................................... 13

    Identify the number of iterations that might be required: ...................... .............................. 16

    Check if we need to upgrade the .NET Framework for our solution: ...................................... 18

    Check if for our target version, we need to upgrade the OS on our Development boxes as well

    as our Live Servers:................................................ ............................................... ..................... 19

    Check if the target version requires us to upgrade our SQL Server: ............... ................. ....... 19

    Identify if there are any Hotfixes or Workarounds Sitecore:.................................................. 19

    Check for compatibility of the Sitecore Marketplace modules installed in our solution with the

    required Target version: .............................................. ................................................. ............. 20

    Check our custom code which uses some DLLs from Sitecore instanceNewtonSoft,

    HTMLAgilityPack, etc ........................ ........................................ ............................................... .. 21

    Expert Sitecore Solution: ............................................................ ........................................ ........... 21

    How to Upgrade our Current Sitecore Solution? ................................................................................. 21

    Sitecore Version Upgrade for a Basic Solution:....................................... ......................................... 21

    Content Authoring Server: ........................................... ............................................... ............... 21Content Delivery Server: ................................................................ ......................................... ... 23

    Sitecore Version Upgrade for an Expert Solution: ........................................................................ 24

    Content Authoring Server: ........................................... ............................................... ............... 24

    Content Delivery Server: ................................................................ ......................................... ... 26

    Frequently Asked Questions ..................................................................... ......................................... 26

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    3/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 2 | P a g e

    How do I install the Update Packageusing the Installation wizard?............................................ 26

    What should I do i f I have multiple CM/Content Authoring Servers? Do I need to execute the

    Sitecore Update Wizard on all those Content Authoring instances? ........................................... ... 26

    What if I have a Dedicated Publishing Instance along with my Content Authoring Server? ............. 27

    How to upgrade Content Delivery Server? .................................................................................. 27

    How do I find which items/files are newly added or updated/changed? ............... ................. ....... 27

    I am confused seeing so many links for the changes required to be done in my config file. How

    should we perform the config changes?............................................................................. ......... 27

    Doing the Configuration changes for version upgrades is a tough task, is there an easier way to do

    that?.............................................. ............................................... ......................................... ... 28

    We have an Expert Solution but not all items are synced. The Templates, System and Layouts are

    fully synced but Content and Media Library on Live Content Authoring Server has many items then

    in my Repository. What can we do?............................................. ............................................... 29

    While install ing the Update package, my Sitecore instance suddenly crashed and I could notdownload my Installation Log and Report. Can I get it from somewhere? ...................... ............... 29

    Learnings of our Team while performing Sitecore Version Upgrade: ............. ....................................... 30

    Always install Upgrade package in FF Browser rather than IE................................................ 30

    Change the values of DefaultSQLTimeout and DataProviderTimeout................................. .... 30

    If you are upgrading your Sitecore solution, do keep at least one of your older versions up and

    running. .................................................................... ................................................. ............... 30

    Sometimes, if you get an error related to the Database Schema, dont worry, just proceed to

    your Target Version. To confirm, ask Sitecore Support. ............................ .................................... 31

    Do you have some Jumbled JSON seen on your Browser page in Page Editor Mode? ............. 31

    Shrink Databases and Rebuild the Indexes from the Management Studio to have a faster

    operation. ................................................................. ................................................ ................ 31

    Preserve Analysis and Installation Logs & Reports ............................ .................................... 32

    We run into some issue after upgradeGoogle it out or raise with Sitecore Support ............ 32

    Create an Upgrade team (IT Infrastructure Team, Developers & QA) to discuss various

    scenarios from their perspectives. ................................ .............................................. ................ 32

    Perform Bug Bash for every environment and make sure every Bug is resolved and then we

    move to the environment ahead. ......................................... ............................................... ....... 32

    Document the Approach and Full Steps of Upgrade and discuss with the Upgrade Team ....... 32

    References: ............................................... ............................................... .................................... 32

    Tools that can be useful: ............. ............................................... ........................................ ........... 33

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    4/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 3 | P a g e

    Disclaimer:My dear Sitecore Family,

    This document is an effort of sharing the experience and learning that I gained while working on a Version

    Upgrades for a number of Sitecore Solutions.

    There are always a number of questions that any/every developer has in his/her mind before going ahead

    with an upgrade for their Sitecore Solution. This document tries to get you through a number of questions

    which our managers would ask us and we probably wont have it at the first go. It includes a number of

    frequently asked questions regarding the Sitecore Version Upgrade.

    A number of diagrams/figures included in the document are made by me to explain things in a simple

    way. The document may even include a few screenshots from some links on Sitecore Developer Network

    Release notes, Upgrade Steps and a number of blogs, to explain things in detail and make things easy to

    understand.

    This document is for the Sitecore community to understand the various things included in upgrading a

    Sitecore solution as well as getting thorough with the small and big details of the same.

    The information included in this document is solely to understand things more about the Sitecore Upgrade

    process and I sincerely regret if any information here is wrong. At the same time, it would be great if you

    could let me know if you find an error in it. A kind request to all those who are more experienced or have

    had some different experience, to please share their knowledge about the topic. I would include it in this

    document to make it a concise and a precise document for every one of us the ones upgrading their

    solution for the first time as well as for the ones who have been doing i t.

    Sincerely,

    Varun Shringarpure

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    5/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 4 | P a g e

    Introduction:Sitecore Version upgrade, is a process which involves a set of steps performed on our Sitecore Solution,

    to upgrade it to the version of Sitecore later than what we currently have.

    We need to categorize the Sitecore Version Upgrade, into two main sections based on some tools that we

    use for our Sitecore Solutions:

    A. The Expert Sitecore Solutiona Solution using an Item Synchronization toollike TDS, Unicorn

    or Sitecore Development Toolkit.

    B. The Basic Sitecore Solutiona solution without any Item Synchronization tool.

    Before continuing further, lets getsome basic details of the above two.

    The Basic Sitecore Solution:

    This is a normal Sitecore solution. In a basic Sitecore solution, the way in which we synchronize the

    Sitecore items between various Sitecore instances and environments, is by packaging the m using the

    Sitecore Package Designer. Without any doubt, its a very useful tool provided to us by Sitecore, and we

    all should thank Sitecore for that. But thinking from the perspective of a team, working on their individualdevelopment environments, it becomes a little difficult to manage. So in our discussion moving further in

    this document, whenever we refer to a Basic Sitecore Solution, we refer to the one that uses Sitecore

    Package Designer to sync items and does not have any external tool available for synchronizing them.

    The Expert Sitecore Solution:

    Recently, in the Sitecore world, there has been a dawn of some great modules made by different Sitecore

    enthusiasts as well as of various tools made by Sitecore Partners that make the work of a developer very

    easy. A few of them took the problem discussed above as a challenge, and developed tools to overcome

    them. They are TDS i.e. Team Development on Sitecore byHedgehog Development, Unicorn byKamsar,

    Sitecore Development Toolkit byAlen Pelin(There might be some more in this list, but I am aware of

    these).

    These tools, completely changed the way in which a Sitecore developer worked to sync his/her items with

    other developers in the team or between various environments. This is because, the Sitecore Items are

    directly available as files just as our code files. So we can apply all the Repository functions on themwe

    can commit them, compare them, merge themand then sync them with our own Sitecore solution. So

    ideally, we can say the Sitecore items of our Business case, or concern are distinctly available with us.

    Now, as we are clear with the two distinct type of Sitecore solutions, lets ask ourselves some basic

    questions that might help us understand as well as approach a Sitecore Version Upgrade in a way that is

    suitable for our case.

    One point to remember, for every question that we ask ourselves, we will first consider the Basic Sitecore

    Solution and then the Expert Sitecore Solution.

    https://twitter.com/hhogdevhttps://twitter.com/hhogdevhttps://twitter.com/kamsarhttps://twitter.com/kamsarhttps://twitter.com/kamsarhttps://twitter.com/AlenPelinhttps://twitter.com/AlenPelinhttps://twitter.com/AlenPelinhttps://twitter.com/kamsarhttps://twitter.com/hhogdev
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    6/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 5 | P a g e

    What is Sitecore Version Upgrade?From the top view the steps for Sitecore Version Upgrade are:

    Installing the Sitecore Update Package

    Executing some pre and post install SQL Scripts (if available)

    Updating/Replacing various the configuration files.

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    7/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 6 | P a g e

    The above is true as far as boththe Basic as well as the Expert Solution is concerned. But in case of an

    Expert Sitecore Solution, we have one more and quite easier way to approach a Sitecore Version Upgrade.

    So, from the Top View the steps for Upgrading an Expert Sitecore Solution are:

    Installing a new Sitecore solution of the required Target Version.

    Sync the items of concern from the Repository with the newly added Sitecore solution.

    Both the approaches look quite simple in the first look but as we go deeper into the core of its

    understanding, it gets equally critical for us as well as our clients who owns that Sitecore solution.

    Why upgrade our current Sitecore Solution to a later version?There could be one or more of a number of reasons as to why should we go ahead and upgrade our

    Sitecore solution to the latest version or a particular later Sitecore version:

    1. To have the latest Security fixes in our solution that Sitecore has applied in a particular version.

    2. To make use of the latest functionality that Sitecore has introduced in a particular version of

    Sitecore in our current Sitecore Solution.

    3. To remove a Hotfix assembly from our solution, when we find that it has been solved and available

    in a particular main stream version of Sitecore.

    4. To get rid of a Sitecore.Support assemblyi.e. a Workaround solution of an issue from our

    Sitecore solution, when get to know that it has been solved and available in a particular main

    stream version of Sitecore.

    Also, the reasons why should be upgrade, remain the same for both the type of Sitecore SolutionsBasic

    as well as Expert!

    How to approach a Sitecore Version Upgrade?As for any other project, it is utmost necessary for a good planning and then its execution is in case of

    upgrading our Sitecore solution. For simplicity, we will first consider Basic Sitecore Solution and then the

    Expert Sitecore solution.

    Basic Sitecore Solution:

    There are a set of tasks included while approaching Sitecore Version Upgrade for a Basic Solution. Lets

    look at each one of them one after the other.

    1.

    Identify a version of Sitecore that we want as a target version.2. Verify that the version we selected as Target Version is not mentioned only as a feature re lease

    or to be used as only an intermediate version.

    3. Check if there are any Known Issues for our selected version.

    4. Check for Deprecated Functionalities .

    5. Identify the pre-requisites for that particular Version of Sitecore.

    6. Identify the number of iterations that might be required.

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    8/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 7 | P a g e

    7. Check if we need to upgrade the .NET Framework for our solution.

    8. Check if for our target version, we need to upgrade the OS on our Development boxes as well as

    our Live Servers.

    9. Check if the target version requires us to upgrade our SQL Server.

    10. Identify i f there are any Hotfixes or Workarounds Sitecore.

    11.

    Check for compatibility of the Sitecore Marketplace modules installed in our solution with therequired Target version.

    12. Check our custom code which uses some DLLs from Sitecore instance NewtonSoft,

    HTMLAgilityPack, etc.

    Identify a version of Sitecore that we want as a target version:

    The below flowchart shows a small algorithm to identify and select a Target version for Sitecore.

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    9/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 8 | P a g e

    Steps to select a Target Sitecore Version are as fol lows:

    1) Go to Sitecore Developer Network

    2) Go to Products> Sitecore CMS

    3) Here, we find main version links for Sitecore.

    a. Sitecore CMS 7 and DMS>

    http://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%207.aspx

    b. Sitecore CMS 6 and DMS>

    http://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206.aspx

    4) Now we can see Release Notes for those particular Main versions and go to the Release History

    Sectionwhich is the Change Log that Sitecore provides for each version, specifying the main

    highlights of the version, new features and functionalities, the main improvements, bug and

    security fixes. Below are a few screenshots which might help us to reach there.

    http://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%207.aspxhttp://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206.aspxhttp://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206.aspxhttp://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%207.aspx
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    10/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 9 | P a g e

    This section, generally proves to be the main decider whether we want to go ahead with that

    version as our target version or not and I think the credit goes to Sitecore for writing it so well!

    5) At the top, will be the last released versionsay 7.5 for Sitecore CMS 7. In a normal scenario, we

    would directly select the latest Sitecore Version available, select it as a Target Version and decide

    to upgrade to it.

    6) But, say for some reason (which is kind of very rare) we need to upgrade to a Sitecore Version

    only til l the point where our new Feature or Bug Fix requirement gets solved. In that case, move

    bottom-up in the Sitecore Change Log. Select any particular version from the left menu, and start

    reading its main features, newly added functionalities, code improvements, bug fixes, security

    updates, etc.

    7) While coming from top to bottom in these steps, we will definitely identify whether the version

    we selected is the one we wanted. But still, i ts good to question ourselves once again does thisversion suffice the main purpose of upgrade?

    8) If no, then repeat the steps with a version later than thatabove in the list on left menu.

    9) If yes, then that becomes our Target Version.

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    11/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 10 |

    P a g e

    Verify that the version we selected as Target Version is not mentioned only as a feature

    release or to be used as only an intermediate version:

    There are a number of times, when Sitecore mentions a particular version not to be selected as a target

    version and a higher version of Sitecore to be selected as a Target version. Consider this case of Sitecore

    6.4.0 Initial Release:

    Lets make sure, we havent se lected any version which Sitecore has already mentioned not to use as a

    Target version.

    Check if there are any Known Issues for our selected version:

    This is very rare, as Sitecore thoroughly tests every version of Sitecore before releasing it. But quite

    possible, that a version of Sitecore may have some issue. In the Release Notes section, below the Release

    History, is a link to all the Known issues for that version of Sitecore. Ill take a case of Sitecore CMS 6 for

    this case.

    Clicking it, takes us to the page where all the known issues are mentioned, as below.

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    12/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 11 |

    P a g e

    Drilling down further, the description of each issue and its solution is available in a page on Sitecore

    Knowledge Base.

    Say details of 2.1 Content changes of media items may not be reflected in browser immediately are

    available at https://kb.sitecore.net/articles/218124

    https://kb.sitecore.net/https://kb.sitecore.net/https://kb.sitecore.net/https://kb.sitecore.net/articles/218124https://kb.sitecore.net/articles/218124https://kb.sitecore.net/articles/218124https://kb.sitecore.net/https://kb.sitecore.net/
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    13/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 12 |

    P a g e

    Also, Sitecore Community is very active. Once a new version of Sitecore is launched, there are many

    enthusiasts, which get on to try and share their views and quite vital info rmation with the Community,

    thus helping everyone. This information might include how a particular functionality is helpful or if they

    find an issue and get a solution, then even that. So search for that particular version of Sitecore, we would

    definitely find a couple of blogs about positives of that version, some challenges that they might have

    faced while upgrading (if any) and their solutions. In case we dont find anything, we can even check onSDN Forum if there is anything of our help or use. Quite possible, that the solution of such a known issue

    is already availableeither given by Sitecore support or found & fixed by a Sitecore developer.

    Its always good to know first that there is a known issue to take care of it when time comes . Also, i f any

    one of us faces an issue while upgrade or after that while testing, I believe it becomes our duty not just to

    report it to Sitecore but also blog (share with community) about its solution.

    Check for Deprecated Functionalities:

    Specifically check, the Deprecated Functionalities section of various versions of Sitecore which fall

    between our current version and the desired Target Version. This is because, if any of our custom code,

    uses those functionalities, its a must to update our code to use the newly recommended class-function.

    This surely can be kept for later, when the upgrade is done and we rebuild our Visual Studio solution, we

    might get warnings and then we can change. But, if Sitecore is already giving us the list why not plan and

    verify it right now.

    The deprecated functionality section is in the Release notes, mostly towards the end of it , as an example

    a screenshot of Sitecore 7.2 Initial release is as follows:

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    14/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 13 |

    P a g e

    Identify the pre-requisites for that particular Version of Sitecore:

    Once we decide on our Target Version based on the Change Log, we would go to its Downloads section

    on the Sitecore Developer Network.

    In every release history, before starting the Change Log, Sitecore provides us with a link to the Downloads

    section of the main version.

    It leads us to a page where download links for particular main versions as well as the minor versions of

    Sitecore may be available.

    Alternatively, we can also go to the download link of a particular version from the main links of Sitecore

    CMS & DMS too as seen below:

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    15/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 14 |

    P a g e

    Just below the release notes, a section says Download CMS+DMS, click there and it will take you to the

    same downloads page as seen above.

    Moving down further, lets say, I ll click on Sitecore 7.2 Link, then it wil l take me to the main downloads

    page for that particular version of Sitecore.

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    16/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 15 |

    P a g e

    On the left, wel l be able to see the download links for various other Sitecore 7 versions released by

    Sitecore.

    Each download detail page has 2 sections

    1)

    Download the Plain Version

    2) Upgrade to this version

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    17/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 16 |

    P a g e

    As we want to upgrade our solution, we will select the second linkthe upgrade link

    As we can see, the first sub-section specifies the pre-requisites of this version.

    Identify the number of iterations that might be required:

    Now how do we find this? Well, this available from the pre-requisite Sitecore version of our Target Version

    and the pre-requisite version of it and so on. For this, we would move in a reverse order, from our required

    Sitecore target version.

    I have tried to pen down a small algorithm for identifying the number of iterations along with the details

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    18/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 17 |

    P a g e

    Considering an example for this, to better understand as well as verify the above algorithm, say we are on

    Sitecore 6.3 Update 3 (rev. 101029) and we want to upgrade to Sitecore 7.2 Update-2 (rev. 140526) So

    lets follow the algorithm and check how many iterations would we need.

    DryRunofAlgorithm:

    Lets start:

    Iteration1:

    Selected Target VersionSitecore 7.2 Update2

    Add the current Version Name to Iteration List

    Check the prerequisiteSitecore 7.2Initial Release

    Is our Current Version equal to or higher than our Current VersionNO

    Iteration2:

    Open the Download link ofSitecore 7.2 Initial Release

    Add the current Version Name to Iteration List

    Check the prerequisiteSitecore 7.1

    Initial Release Is our Current Version equal to or higher than our Current VersionNO

    Iteration3:

    Open the Download link ofSitecore 7.1 Initial Release

    Add the current Version Name to Iteration List

    Check the prerequisiteSitecore 7.0 Initial Release

    Is our Current Version equal to or higher than our Current VersionNO

    Iteration4:

    Open the Download link ofSitecore 7.0 Initial Release

    Add the current Version Name to Iteration List

    Check the prerequisiteSitecore 6.6.0Initial Release

    Is our Current Version equal to or higher than our Current VersionNO

    Iteration5:

    Open the Download link ofSitecore 6.6.0 Initial Release

    Add the current Version Name to Iteration List

    Check the prerequisiteSitecore 6.5.0Initial Release

    Is our Current Version equal to or higher than our Current VersionNO

    Iteration6:

    Open the Download link ofSitecore 6.5.0 Initial Release

    Add the current Version Name to Iteration List

    Check the prerequisiteSitecore 6.4.0Initial Release

    Is our Current Version equal to or higher than our Current VersionNO

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    19/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 18 |

    P a g e

    Iteration7:

    Open the Download link ofSitecore 6.4.0 Initial Release

    Add the current Version Name to Iteration List

    Check the prerequisiteSitecore 6.3.0Initial Release

    Is our Current Version equal to or higher than our Current VersionYES

    Algorithm EndsThe number of iterations to achieve the Target Sitecore Version from ourcurrent Version is as follows:

    Also, I found a nice websiteSitecore Update helperdeveloped byAlexander Doroshenkothough not

    updated, can be very helpful to us identifying the number of iterations that we might require -

    http://sitecoreupdate.somee.com/Default.asp x

    Check if we need to upgrade the .NET Framework for our solution:

    Sitecore manages this at Sitecore Knowledge basein a document with name: Sitecore CMS Compatibility

    Table. A screenshot of the related section of it is as follows:

    https://twitter.com/adoproghttps://twitter.com/adoproghttp://sitecoreupdate.somee.com/Default.aspxhttps://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164http://sitecoreupdate.somee.com/Default.aspxhttps://twitter.com/adoprog
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    20/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 19 |

    P a g e

    Check if for our target version, we need to upgrade the OS on our Development boxes as

    well as our Live Servers:

    Sitecore manages this at the same location it manages the aboveSitecore CMS Compatibility Table.A

    screenshot of the related section of it is as follows:

    Check if the target version requires us to upgrade our SQL Server:

    For this too, Sitecore manages the information at the Sitecore Knowledge Basein a document Sitecore

    CMS Compatibility Table. A screenshot of the related section of it is as follows:

    Identify if there are any Hotfixes or Workarounds Sitecore:

    Lets go to the bin directory of our Sitecore solution and check if there are any Sitecore.Support DLL(s)

    and also check the properties of our Sitecore.Kernel if HotFix is mentioned in its description. If in case our

    current solution say has a number Sitecore.Support DLL(s) and/or Hotfix DLL(s), its worth checking if thatis solved in any particular version of Sitecore before or at least in the one that we have selected. A location

    to easily identify that is our Sitecore Support portal. Whenever we raise an issue with Sitecore, the support

    guys check it thoroughly and report it as a Bug if its genuine. They generally provide us with a workaround

    of the solution in form of Sitecore.Support DLL. In case the issue that we report is very critical say

    something in Sitecore Cachingwhich lies quite internally in Sitecore.Kernel DLL, they provide us with a

    Hotfix of the Sitecore.Kernel. At the same time, Sitecore Support is generous enough, to always update

    https://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164https://kb.sitecore.net/articles/087164
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    21/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 20 |

    P a g e

    all such tickets that are reported as Bugs to Bug Fixed with along with the information of the particular

    version of Sitecore where it has been f ixed. So lets refer to all those tickets which have status Bug

    Reported and/or Bug Fixed. In case its not updated, we can do one of the two thingssearch the Sitecore

    Change Log with the Ticket ID or the Issue ID which might be assigned to us in the ticket itself. If we are

    able to find its good, else we might make a list of all such DLLs and ask Sitecore if the fixes for those issues

    are available in the version that we have selected.

    Again, considering the worst case, if say for some Support DLL the solution is still not merged with our

    target version (which is quite rare to happen) then we can ask Support team if the same DLL would

    function without any issue or would be need a new one if our target version requires Dotnet Framework

    upgrade as discussed above.

    Check for compatibility of the Sitecore Marketplace modules installed in our solution with

    the required Target version:

    Sitecore manages a list of modules and its compatibil ity table is managed by them in Sitecore Knowledge

    Base here:Sitecore Modules Compatibility Table. If the modules of our concern is here, we can easily

    identify and note that down. In case the module you have installed, is not in this list, not to worry!Generally, with every Sitecore marketplace module, its requirements section specifies the various versions

    of Sitecore on which it might run.

    As in the above example, what this means is, this particular module is tried and tested well by the

    developer till Sitecore 6.5doesnt specifically mean it wont run on Sitecore 6.6 or above, but it ideallymeans it might not. But for us to be on a safer side, we need to make a list of all the modules and identify

    from its Requirements which might not work with our Target Sitecore solution. Best would be to try that

    particular module on a plain Sitecore solution of our target version.

    Considering the worst case, we are able to identify that a particular Sitecore module is no more working

    or throwing errors in our log file for being incompatibleits nothing to worry about, as many of the

    Sitecore Enthusiasts put up the code for the module on GitHub. So either we might ask the developer of

    the module to update the code for the version of Sitecore we want or we ourselves update it and push

    the changed code to GitHub for others to use. In case the module we use is just as a package on the

    marketplace and its code isnt available, we can ask its developer to help us out as well as raise the same

    with SDN Forum or Sitecore Support I guess. In parallel to that, we can decompile the code of that modulein a reflector or any such decompiler, create a class library with the required changes in the code of the

    module, change the code references at required places and make it working.

    https://kb.sitecore.net/articles/541788https://kb.sitecore.net/articles/541788https://kb.sitecore.net/articles/541788
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    22/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 21 |

    P a g e

    Check our custom code which uses some DLLs from Sitecore instance NewtonSoft,

    HTMLAgilityPack, etc

    Sometimes, due to some specific requirement, we might have made some tool or functionality using some

    DLL which is present in the Sitecore solution like say NewtonSoft or HTMLAgili tyPack. This is because with

    some of the new versions, Sitecore has upgraded these DLLs, and quite possible, that might affect our tool

    or functionality. So to be better prepared, lets make a list of various functionalities in our custom codethat uses them as we might need to update them as per the new DLL added.

    Expert Sitecore Solution:

    While approaching the Sitecore Version Upgrade, whether its the Expert Solution or the Basic solution,

    all the steps except Point 6 remains the same (Point 6: Identify the number of iterations that might be

    required).

    As we have discussed previously, an expert solution is the one with an item sync tool, so we do not need

    to worry about the number of iterations. This is because, we only need the Plain Sitecore Solution of the

    selected target Sitecore Version. Hence, well skip the step 6 of Basic Solution, after selecting the Target

    Sitecore Version we would directly proceed to point 7.

    How to Upgrade our Current Sitecore Solution?Whether we have a basic Sitecore solution or an expert Sitecore solution, once we follow all the above

    steps, we are aware of the environment and the instance and that we are ready to upgrade our current

    solution. We should upgrade our Sitecore instances the same way we follow our sprint deployment phases

    from local Dev box to integration Dev environment to UAT environment to CA/CD Live E nvironment.

    Sitecore Version Upgrade for a Basic Solution:

    Sitecore provides us with the steps of how to upgrade our current Sitecore Solution stepwise to eachintermediate version, and reach our required Target Version, Ive tried to mention a few steps to upgrade

    to summarize the steps which remain common irrespective of the current version and required target

    version of Sitecore.

    Content Authoring Server:

    1. Mention the Current Sitecore Version

    2. Download all the required Sitecore Update packages and SQL Scripts and put them at a location

    on Disk.

    3. Backup the Sitecore Website (and even the Sitecore Project/s if we manage it decoupled -

    http://varunvns.wordpress.com/2014/06/03/setup-sitecore-in-developer-box-in-less-than-5-

    minutes/http://varunvns.wordpress.com/2014/06/21/benefits-of-setting-up-sitecore-developer-box-

    loosely-coupled/)

    4. Backup the Sitecore Databases.

    5. Execute the Pre-Install (Before Install) SQL Script to update the DB Schema (if any).

    6. Check your Sitecore Update Installation wizard whether latest or not and open it. ( Sometimes,

    Sitecore recommends, to install the latest Sitecore Update Installation wizard. It is a must to do

    http://varunvns.wordpress.com/2014/06/03/setup-sitecore-in-developer-box-in-less-than-5-minutes/http://varunvns.wordpress.com/2014/06/03/setup-sitecore-in-developer-box-in-less-than-5-minutes/http://varunvns.wordpress.com/2014/06/21/benefits-of-setting-up-sitecore-developer-box-loosely-coupled/http://varunvns.wordpress.com/2014/06/21/benefits-of-setting-up-sitecore-developer-box-loosely-coupled/http://varunvns.wordpress.com/2014/06/21/benefits-of-setting-up-sitecore-developer-box-loosely-coupled/http://varunvns.wordpress.com/2014/06/21/benefits-of-setting-up-sitecore-developer-box-loosely-coupled/http://varunvns.wordpress.com/2014/06/03/setup-sitecore-in-developer-box-in-less-than-5-minutes/http://varunvns.wordpress.com/2014/06/03/setup-sitecore-in-developer-box-in-less-than-5-minutes/
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    23/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 22 |

    P a g e

    so if Sitecore recommends it, as it might have some bug fixes/updates which are of our help

    moving forward.)

    7. Upload the Sitecore Update package.

    8. Analyze the Package.

    9. Download Analysis Log and Analysis Report and store it somewhere.

    10.

    Install the Package.11. Download Installation Log and Installation Report and store it somewhere.

    12. Execute the Post-Install (After Install) SQL Script to update the DB Schema (if any).

    13. Make the necessary Config changes (refer to these two questions in Frequently Asked

    Questions, for more detailsConfiguration Question 1&Configuration Question 2

    14. Clear Browser Cache

    15. Once the Sitecore instance is up, go to Sitecore Desktop and Rebuild Search Indexes

    16. Follow steps 3 through 15 till we reach the required Target Version of Sitecore.

    17. Deploy our Custom code changesDLLs, files, etc.

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    24/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 23 |

    P a g e

    Next is identify the list of item/s that we need to publish from the Installation Logs/Report.

    Content Delivery Server:

    1. Backup the Sitecore Website.

    2. Backup the Sitecore Databases.

    3. Execute the Pre-Install (Before Install) SQL Script to update the DB Schema (if any).

    4. Execute the Post-Install (After Install) SQL Script to update the DB Schema (if any).

    5. Publish the items identified to be published.

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    25/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 24 |

    P a g e

    6. Make the necessary Config changes

    7. Deploy our Custom code changesDLLs, files, etc.

    Sitecore Version Upgrade for an Expert Solution:

    When we have an expert Sitecore Solution, the choice remains with us, whether we want to upgrade it

    the basic way, or we want to do it a smarter way. Smarter waymeans instead of following the

    complete upgrade procedure, we will directly install the required Target version and deploy our customs

    items & files as a deployment package. And with that, we can say our Sitecore Version is upgraded.

    Content Authoring Server:

    1. Download the required Target Sitecore Version from Sitecore Developer Network.

    2. Install it and make it completely running.

    3. If we have a decoupled Sitecore solution, like the one discussed here -

    http://varunvns.wordpress.com/2014/06/03/setup-sitecore-in-developer-box-in-less-than-5-

    minutes/, create a new Visual Studio Publish Setting to the point to the new Instance, change

    the Sitecore DLL references to that of the new one, make the required code changes and Publish

    the changes.

    4. If we dont have a decoupled solution and our Sitecore folders reside inside our Visual Studio

    solution, then replace all the Sitecore folders in our visual studio solution with that of the new

    instance, build the solution and fix the Compilation errors

    5. Sync the Sitecore Items with the new solutionfrom our Project into the Sitecore Databases.

    http://varunvns.wordpress.com/2014/06/03/setup-sitecore-in-developer-box-in-less-than-5-minutes/http://varunvns.wordpress.com/2014/06/03/setup-sitecore-in-developer-box-in-less-than-5-minutes/http://varunvns.wordpress.com/2014/06/03/setup-sitecore-in-developer-box-in-less-than-5-minutes/http://varunvns.wordpress.com/2014/06/03/setup-sitecore-in-developer-box-in-less-than-5-minutes/
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    26/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 25 |

    P a g e

    6. Make the changes in IIS Manager, add the bindings to the new Sitecore Solution and stop the

    old Sitecore instance.

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    27/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 26 |

    P a g e

    Content Delivery Server:

    For the Content delivery server, the steps remain same as compared to that of theBasic Solution.

    Frequently Asked Questions

    How do I install the Update Package using the Installation wizard?

    This is mentioned in the Update Steps that Sitecore provides us, we need to use Sitecore Update

    Installation Wizard and not the one that we access from Sitecore Desktop to install various Sitecore

    packages. It is present here: http://oursite/sitecore/admin/updateinstallationwizard.aspx

    What should I do if I have multiple CM/Content Authoring Servers? Do I need to execute the

    Sitecore Update Wizard on all those Content Authoring instances?

    We have almost got to a conclusion as to what does a Sitecore Version Upgrade include:

    Pre & Post SQL Scripts Sitecore Update Package

    o Adds and/or updates Sitecore items (Sitecore Databases)

    o Adds and/or updates Sitecore Files (Data and Website Directory)

    Config File Changes

    Deployment of the changes of our custom code & configurations ( if necessary, which generally

    is).

    Now whenever we Upgrade the Sitecore Version of one of the multiple Sitecore Content Authoring

    instances we follow all the above 4 steps.

    About the Pre and Post SQL Scripts they are for updating the Database Schema as we have multiple

    CM/Content Authoring serverstheir Core and Master DB would be same. So we dont need to execute

    them again. Next, about the Sitecore Update package - the item changes are already done in the Database

    so ideally your Database is upgraded.

    So what remains in upgrading the rest of our CM/Content Authoring instances are Config Fi les and our

    Custom Code files and DLLs. As our multiple instances would have the same configuration except a few

    say the instance namethe upgrade Config changes would be identical, so, we dont need to make those

    changes to configs of each of the instance. Instead, make the changes to one, and copy the same files to

    other instances with the required changes as per our environment. (We would ideally be managing this

    in our repository)

    Thus, if we have multiple Sitecore Content Authoring servers, and we want to upgrade our SitecoreVersion:

    We need to execute all the Sitecore Upgrade Steps on one instance

    Deploy the config & Code changes on all of the servers.

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    28/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 27 |

    P a g e

    What if I have a Dedicated Publishing Instance along with my Content Authoring Server?

    A Dedicated Publishing Instance, can be said as a Content Authoring Serverspecifically for publishing

    our item changes.

    So in this case too, we should follow the steps mentioned above.

    How to upgrade Content Delivery Server?

    We do not need to execute the Update Installation wizard of Sitecore for upgrading our Content

    Delivery Server. For that we have the following steps:

    Execute the SQL ScriptsPre and/or Post Scripts (if any).

    Publish the items changed by Sitecore during upgrade.

    Push all our Custom code as wel l as Sitecore files and configs as a deployment package onto our

    CD Servers.

    How do I find which items/fi les are newly added or updated/changed?

    As we follow the steps provided to us by Sitecore and execute the Sitecore Update Installation Wizard,

    we reach to a stepAnalyze & Install. In both of these, Sitecore provides us with log files as well as reports.

    Say when we Analyze, Sitecore provides us with Analysis Log and in next step is Analysis Report and when

    we say Install after that is done it gives us Installation Log and Installation Report. Sitecore mentions every

    change of fi le or item into the log and report of Analysis and Installation.

    We should save these Logs and Reports and we can easily find the files that are added, changed or deleted

    by any particular version of Sitecore.

    Alternatively, if we have installed theSitecore History Viewer Modulewe will be able to identify the

    Item changes for the databases.

    I am confused seeing so many links for the changes required to be done in my config fi le . How

    should we perform the config changes?

    Sitecore manages the config changes for upgrades very nicely and easy to understand and do. Lets take

    an example to understand this better.

    Say we are currently moving from Sitecore 6.4.0 Initial Release to Sitecore 6.5 Initial Release. So we would

    be referring to the Upgrade Instructions for Sitecore 6.5 Initial Release. The link for that is as follows:

    http://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206/Update/6_5_0_rev_110602.as

    px

    The Config fi le update section in that is as follows:

    https://marketplace.sitecore.net/en/Modules/Sitecore_History_Viewer.aspxhttps://marketplace.sitecore.net/en/Modules/Sitecore_History_Viewer.aspxhttp://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206/Update/6_5_0_rev_110602.aspxhttp://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206/Update/6_5_0_rev_110602.aspxhttp://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206/Update/6_5_0_rev_110602.aspxhttp://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206/Update/6_5_0_rev_110602.aspxhttp://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206/Update/6_5_0_rev_110602.aspxhttps://marketplace.sitecore.net/en/Modules/Sitecore_History_Viewer.aspx
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    29/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 28 |

    P a g e

    As we can see above there is a different link for each config entry and the ones that we need to choose is

    based on from what version we moved to this version. In our case, we will need to go through all the links

    and apply all the changes mentioned there.

    But say for example, if we were upgrading to Sitecore 6.5 Initial Release from 6.4.1 Initial Release, then

    we had to apply the changes suggested in the first two links only, and we could do away with the latter

    two. And to verify that, we can open any one link of the latter two and check for a random config entry

    it would be present in our current config also.

    Doing the Configuration changes for version upgrades is a tough task, is there an easier way to

    do that?

    We can divide the Sitecore solutions in yet another two types:

    1. Loosely-coupled Sitecore Solution:A Sitecore solution, where we add a new configuration file

    for our case instead of changing the Sitecore Configuration files.

    2. Tightly-coupled Sitecore Solution:Changing the Sitecore Configuration files (say Web.config, or

    Commands.Config etc)

    When configuring a Sitecore Solution, its always a best practice create own configuration file for the

    required settings, instead of updating the Sitecore Configuration files. Say, creating a SiteDefinition.config

    for a new site that is added, instead of adding a site tag in the web.config and creating a custom index

    configuration and definition file, instead of changing the current DefaultConfiguration file or index f iles.

    Benefit of a loosely-coupled solution from Sitecore Version Upgrade perspective:

    We can directly replace the current configuration file with that in the Target Version

    If in case we have missed doing so in our current solution, not to worry, we can do so in upcoming Sitecore

    projects.

    Also, for now, we can work a little smart and avoid doing config changes for each and every environment

    manually. How?

    Steps:

    Create Visual Studio Publish Profiles for various environments.

  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    30/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 29 |

    P a g e

    Install SlowCheetahXML Transformsand create the Transforms for all the config filesNo need

    to do it manually, there is a nice Marketplace module available by Chris LeesSitecore Upgrade

    Automation. Use it and make the required changes.

    Apply the config changes that are needed as per the Sitecore Upgrade links.

    Once we build our solution all the changes would be available for the files of rest of the

    environments too.

    We have an Expert Solution but not al l items are synced. The Templates, System and Layouts are

    fully synced but Content and Media Library on Live Content Authoring Server has many items

    then in my Repository. What can we do?

    Generally, thats the approach that most of us follow for all of our projects. For a development team, what

    is most important is Templates, Sublayouts and System (if we have written some rules etc.). As far as

    Content and Media Library is concerned, we just put the main items (say homepage item of site, settings

    item of a site, etc) and a few items to unit test our test cases. Otherwise, the complete site specific content

    i .e. Content and Media Library is on our Live Content Authoring Server.

    So we have a few options that we can do:

    1. Upgrade the Sitecore Solution the basic way:

    Apply all the required upgrades from our current version till the target version just as ifwe have a basic

    Sitecore Solution. This is the safest way of making sure that our required content and data is consistent

    and we dont lose absolutely anything. But the disadvantage is the time taken yes, this would take a

    longer time.

    2. Bring all our items from Live Content Authoring to our Local environment before taking up

    Upgrade:

    Package all Content and Media Library items and bring it to our Local Environment or

    Backup the Live Database and restore it in our Local environment. Get it serialized using some Item synchronization tool TDS, Unicorn, Sitecore

    Development Toolkitand commit it to our repository

    Next, follow the steps for Sitecore Version Upgrade of an Expert Solution.

    For the second case, we can even use the Sitecore Instance Comparer tool - MeerkatCompare Sitecore

    instances over HTTP. This will give us the Update package with all the item changes and we can install this

    update package in our local, synchronize the items and follow the Expert Solution upgrade steps.

    While installing the Update package, my Sitecore instance suddenly crashed and I could not

    download my Installation Log and Report. Can I get it from somewhere?Yes, we can get it.

    Sitecore stores all the fi les while upgrading at a location: website/temp/__UpgradeHistory Folder. All the

    upgrades that we perform on our solution, it creates a specific directory in this folder and dumps all the

    files. So from here, we can get the Log or Report files.

    https://visualstudiogallery.msdn.microsoft.com/69023d00-a4f9-4a34-a6cd-7e854ba318b5https://visualstudiogallery.msdn.microsoft.com/69023d00-a4f9-4a34-a6cd-7e854ba318b5https://visualstudiogallery.msdn.microsoft.com/69023d00-a4f9-4a34-a6cd-7e854ba318b5https://visualstudiogallery.msdn.microsoft.com/69023d00-a4f9-4a34-a6cd-7e854ba318b5https://visualstudiogallery.msdn.microsoft.com/69023d00-a4f9-4a34-a6cd-7e854ba318b5https://marketplace.sitecore.net/Modules/Sitecore_Upgrade_Automation.aspxhttps://marketplace.sitecore.net/Modules/Sitecore_Upgrade_Automation.aspxhttps://marketplace.sitecore.net/Modules/Sitecore_Upgrade_Automation.aspxhttp://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/http://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/http://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/http://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/http://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/http://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/http://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/https://marketplace.sitecore.net/Modules/Sitecore_Upgrade_Automation.aspxhttps://marketplace.sitecore.net/Modules/Sitecore_Upgrade_Automation.aspxhttps://visualstudiogallery.msdn.microsoft.com/69023d00-a4f9-4a34-a6cd-7e854ba318b5
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    31/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 30 |

    P a g e

    Learnings of our Team while performing Sitecore Version Upgrade:These are the learnings which we had while upgrading our Sitecore Solution. Our solution had 650+ si tes

    on the same instance, had a Dedicated Publishing Instance with 150GB+ Master DB, had 2 Publ ishing

    Targets (i .e. 2 Web Databases) and 10 Content Del ivery Servers. I believe the size of a Sitecore instance

    doesnt matter, but what matters is how critical any Sitecore Solution is. So if you and your team have

    some learnings while upgrading your Sitecore solutions and would like to share it with the community,

    then you can always contact me.

    Always install Upgrade package in FF Browser rather than IE

    We somehow happened to find it while installing the Upgrade Package in our local environment. Without

    going into much details of it, I would l ike to share an article written by Kiran Patil, which explains it fully

    http://sitecorebasics.wordpress.com/2012/02/26/browser-timeout-error-while-doing-sitecore-version-

    upgrade/

    Change the values of DefaultSQLTimeout and DataProviderTimeout.

    By default, these two settings are set to 5 minutes, and they are not present in the Web.Config file. But,

    we can add them, in case we want to override them, and set it to something greater than that.

    Lets understand why this is required. Sitecore Version Upgrade consists of two main things the

    Database Upgrade Scripts and Installing the Upgrade Package.

    Applying the Upgrade scripts is never a problem, because we are directly working on the Database with

    Database Management System (i.e. say SQL Management Studio in case of SQL Database).

    But, while installing the upgrade package, it is a continuous database activity from Application to the

    Database. And the time required to install the upgrade package, could be relatively dependent to our

    database size or change of some critical items and hence take long time to complete for us it took some

    Hours!

    We tried without changing this setting and the Sitecore instance gave us SQL Timeout while executing the

    package, but after changing these settings, it worked fine for us. Some details about what these settings

    would do they define how long the .Net Code will wait, before it declares that the SQL query has timed

    out. These settings, would allow some heavy queries to be executed successfully instead of been claimed

    as time out.

    To override these settings, please add the following in the section in Web.Config File:

    If you are upgrading your Sitecore solution, do keep at least one of your older versions upand running.

    We as a team, had marked this point as Highly Important. We absolutely must have at least one old version

    running either in our Development Environment or somewhere, so that at any point of time we can

    directly compare after upgrading our Sitecore Solution to the target version. This is not just useful for our

    QA Team to test for it, but even for our own unit testing.

    http://sitecorebasics.wordpress.com/2012/02/26/browser-timeout-error-while-doing-sitecore-version-upgrade/http://sitecorebasics.wordpress.com/2012/02/26/browser-timeout-error-while-doing-sitecore-version-upgrade/http://sitecorebasics.wordpress.com/2012/02/26/browser-timeout-error-while-doing-sitecore-version-upgrade/http://sitecorebasics.wordpress.com/2012/02/26/browser-timeout-error-while-doing-sitecore-version-upgrade/
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    32/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 31 |

    P a g e

    Say there are some deprecated functionalities, and some newly added ones, or some replaced by some

    others which may affect your Business needs, say just like Sitecore with its Sitecore 6.4.1 version, replaced

    Telerik RAD by Telerik RTE, which had many changes, and even though RTE had many added

    functionalities, It was missing out some of our Core Requirements, which we had to plug-in to it, with help

    from Sitecore and Telerik.

    Sometimes, if you get an error related to the Database Schema, dont worry, just proceed

    to your Target Version. To confirm, ask Sitecore Support.

    It happened so in our case, while we were upgrading once. We contacted Sitecore Support, and we got a

    great response from them. For more details on it please refer to the following article:

    http://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-name-

    sequence/. In our local development box, we can take a risk of moving ahead with our next intermediate

    version or the target version. But it is good to consult Sitecore Support, with what we faced, just to

    confirm it.

    Do you have some Jumbled JSON seen on your Browser page in Page Editor Mode?

    Please check this article my John Westfor the solution: http://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2011/06/Sitecore-Page-Editor-Renders-Jumbled-JSON-as-

    Content.aspx

    Shrink Databases and Rebuild the Indexes from the Management Studio to have a faster

    operation.

    This was particularly very helpful for our case. We had Master Database as big as 25GB in our local

    environment and in our Live Environment, the Master DB was 150GB+. Also, we had found that our

    Databases were running with full recovery mode.

    Due to this, the LDF file grew highas big as 7GB. Our DBA suggested, to shrink the Database LDF files

    and rebuild the Indexes and then start with the Upgrade process. In our local, we had took statistics andfound that there was a difference of around 25 minutes. And hence we decided to go ahead with that.

    Why Shrink & Rebuild your Databases Indexes?Shrink so that you dont have a heavy LDF files, and

    all/most of your data is in MDF & Rebuild Index so that the indexes are in perfect order and the database

    transactions for upgrade process would be performed faster.

    http://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-name-sequence/http://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-name-sequence/http://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2011/06/Sitecore-Page-Editor-Renders-Jumbled-JSON-as-Content.aspxhttp://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2011/06/Sitecore-Page-Editor-Renders-Jumbled-JSON-as-Content.aspxhttp://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2011/06/Sitecore-Page-Editor-Renders-Jumbled-JSON-as-Content.aspxhttp://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2011/06/Sitecore-Page-Editor-Renders-Jumbled-JSON-as-Content.aspxhttp://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2011/06/Sitecore-Page-Editor-Renders-Jumbled-JSON-as-Content.aspxhttp://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2011/06/Sitecore-Page-Editor-Renders-Jumbled-JSON-as-Content.aspxhttp://www.sitecore.net/Community/Technical-Blogs/John-West-Sitecore-Blog/Posts/2011/06/Sitecore-Page-Editor-Renders-Jumbled-JSON-as-Content.aspxhttp://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-name-sequence/http://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-name-sequence/
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    33/34

    Sitecore Version Upgrade Whitepaper 1.0

    Sitecore Endeavor 32 |

    P a g e

    Preserve Analysis and Installation Logs & Reports

    Always Analyze and then Install the upgrade package, and make sure you save all these Log Files. If in case

    we run into issues, these fi les could be very handysay to read and identify or to provide to Sitecore

    Support if the criticality of the condition be.

    We run into some issue after upgrade

    Google it out or raise with Sitecore SupportThe Sitecore community is strong and many share some really great information on their blogs or raise

    issues on Forum or with Sitecore Support. So in case we run into some random & weird issue, fi rst thing

    would be to search on the web. Most of the time, if someone else encountered it, it could be on the SDN

    Forum and someone might have provided its solution, or we might get a l ink to the Sitecore Knowledge

    Base or some Blog of a Sitecore Enthusiast. In case we dont find anything, its quite critical fir us and cant

    wait for i t to get solved, we should consult Sitecore Support. Otherwise, we can raise on SDN Forum too.

    Create an Upgrade team (IT Infrastructure Team, Developers & QA) to discuss various

    scenarios from their perspectives.

    Each team member have their own perspective, and their own domain of working. So discussing things

    with them on multiple intervals during upgrade is quite vital.

    PerformBug Bash for every environment and make sure every Bug is resolved and then

    we move to the environment ahead.

    Bug Bash is a very necessary step, as every userDeveloper, Content Author, Administrator, QA, and

    Subeditor has his/her own perspective of working and checking things. So after upgrading our

    environment, once our unit testing is over, we must perform Bug Bash, mention the bugs found at a

    central locationsay Google Docsolve them, deploy the fixes on that environment, unit test them again

    and only then move to the next environment.

    Document the Approach and Full Steps of Upgrade and discuss with the Upgrade Team

    It is a must that we document thingsthe approach as well as the steps of upgrade, what needs to bedone when and how. Next, we must discuss these steps with the Upgrade Team members and get it

    verifiedupdate the document as necessary. Keep on updating this document on regular intervals so that

    we have a complete set of learnings till we reach the Live Environment. For the live environment, divide

    the Upgrade tasks upgrading the Main Content Authoring Server, other Content Authoring Servers or

    Publishing Instance, the Content Delivery Servers and their sub-tasksin sub teams of the main Upgrade

    Team, to work it out in parallel to spend most time testing instead of upgrading.

    References:

    http://varunvns.wordpress.com/2012/06/06/basics-of-sitecore-version-upgrade/

    http://varunvns.wordpress.com/2012/06/18/some-findings-while-sitecore-version-upgrade/

    http://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-

    name-sequence/

    http://www.nonlinearcreations.com/Digital/how-we-think/articles/2014/05/Sitecore-Upgrade-

    Tips.aspx

    http://en.wikipedia.org/wiki/Bug_bashhttp://varunvns.wordpress.com/2012/06/06/basics-of-sitecore-version-upgrade/http://varunvns.wordpress.com/2012/06/18/some-findings-while-sitecore-version-upgrade/http://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-name-sequence/http://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-name-sequence/http://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-name-sequence/http://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-name-sequence/http://www.nonlinearcreations.com/Digital/how-we-think/articles/2014/05/Sitecore-Upgrade-Tips.aspxhttp://www.nonlinearcreations.com/Digital/how-we-think/articles/2014/05/Sitecore-Upgrade-Tips.aspxhttp://www.nonlinearcreations.com/Digital/how-we-think/articles/2014/05/Sitecore-Upgrade-Tips.aspxhttp://www.nonlinearcreations.com/Digital/how-we-think/articles/2014/05/Sitecore-Upgrade-Tips.aspxhttp://www.nonlinearcreations.com/Digital/how-we-think/articles/2014/05/Sitecore-Upgrade-Tips.aspxhttp://www.nonlinearcreations.com/Digital/how-we-think/articles/2014/05/Sitecore-Upgrade-Tips.aspxhttp://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-name-sequence/http://varunvns.wordpress.com/2012/06/12/error-while-applying-upgrade-invalid-column-name-sequence/http://varunvns.wordpress.com/2012/06/18/some-findings-while-sitecore-version-upgrade/http://varunvns.wordpress.com/2012/06/06/basics-of-sitecore-version-upgrade/http://en.wikipedia.org/wiki/Bug_bash
  • 8/10/2019 Sitecore Version Upgrade Whitepaper V1.0

    34/34

    Sitecore Version Upgrade Whitepaper 1.0

    Tools that can be useful:

    Sitecore History Viewer:

    https://marketplace.sitecore.net/Modules/Sitecore_History_Viewer.aspx

    Sitecore Instances Comparer: http://coreblimey.azurewebsites.net/meerkat-compare-sitecore-

    instances-over-http/

    Sitecore Upgrade Automation:https://marketplace.sitecore.net/Modules/Sitecore_Upgrade_Automation.aspx

    https://marketplace.sitecore.net/Modules/Sitecore_History_Viewer.aspxhttp://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/http://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/http://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/https://marketplace.sitecore.net/Modules/Sitecore_Upgrade_Automation.aspxhttps://marketplace.sitecore.net/Modules/Sitecore_Upgrade_Automation.aspxhttp://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/http://coreblimey.azurewebsites.net/meerkat-compare-sitecore-instances-over-http/https://marketplace.sitecore.net/Modules/Sitecore_History_Viewer.aspx