I have just finished upgrading a client’s SDL Tridion 2011 GA instance to SP1, and on the whole the experience was fairly painless with the exception of my post on publishing permissions and some minor issues with the Content Manager Explorer (CME).
I believe my client was one of the earlier adopters of SDL Tridion 2011 GA, and we applied a number of early hotfixes to the GA instances. My guess is that we may have installed some “unapproved†hot fixes which we not versioned correctly or that in a debugging effort I accidentally saved some files whilst hunting for a problem.
This appears to be the root of the latest problems we have seen. In an effort to not mess up any customized code or configurations, the SP1 installer does not update any files with unknown versions. In our case this meant that several files were not updated, and the CME was not functioning correctly (several items were not loading or saving, and various JS errors were appearing) even though the installer appeared to have completed successfully.
I have been told that installer will log messages such as:
Won’t Overwrite; Won’t patch; Existing file is unversioned but modified
Unfortunately I was unable to locate any such errors in the logs, so I decided to use a file/folder comparison tool (WinMerge) to compare the files in a working CME server’s folder structure on my test server with those on the upgraded production CME server. The tool found several JS files which had not been updated. It was then a simple task to copy these files over manually (although I am told if you delete them and run the ‘repair’ option of the CM installer this will work too).
The final step was to increment the modification attribute in the following file and refresh my browser:
D:\Program Files (x86)\Tridion\web\WebUI\WebRoot\Configuration\system.config
So my lesson for the day is “Always keep a log of every file you manually change on a server, even if it is a hot fix, and make sure you don’t save any files that you open when debuggingâ€. Now I know that’s not news to any of you, but just in case…. Now you know a way to repair the damage.
Nice find and useful, practical advice, Chris. I’m used to backing up or checking dlls and jars; I’ll be sure to remember JavaScript and pages.