Sunday 29 January 2012

Clarity Upgrade Experience - From 8.1.x to 12.1.x

I recently upgraded Clarity in our Test and Production environment from 8.1.3 to 12.1.0 with patch 4a applied. I wanted to share my learning and experiences with you. Given below are the steps I followed:

1. Unlock all projects that are currently locked. Also, delete all completed process instances.This would speed up your installation to some extent.

2. Ensure "niku" user's default database is set to "niku" (just make sure).

3. If possible, validate your NSQLs. Else, during pre-upgrade, when the install script validates your NSQL, it would throw out errors.

4. Run NBI_CLEAN_DATAMART_SP Stored Proc to clean up Datamart tables prior to upgrade.

5. Stop app, bg and nsa services. Move old log files to another directory if not needed. That should clear up some space.

6. Install Java JDK 1.6 (preferably on a path which dont have space in the path name) and Apache Tomcat 6. Set JAVA_HOME path to new java location and update the Path variable to the new Java location. Run "java -version" just to make sure it returns 1.6.x, else need to check your path variable (put java path in the beginning of the path variable preferably).

7. Extract install.jar for Clarity 12.1.0 upgrade to a temporary folder

8. Extract patch jar file to another temporary folder -> CA released a patch that was supposed to address some of the issues faced with the install script for 12.1.0. These issues are resolved in 12.1.1. So, if you are upgrading to 12.1.0, request CA to get you access to the patch file.

9. Invoke the install.bat file from the temporary folder where patch is unzipped. It would ask you for location where Clarity 12.1.0 jar file is unzipped. Specify the location. The install script would replace some of the files in the 12.1.0 directory.

10. Run the SQL "delete from odf_ca_constraint".

11. Once step 10 is completed, proceed with upgrade by running the install.bat file from the 12.1.0 directory

12. Once the package.jar file is unzipped and the installer starts pre-upgrade, perform the following operations (while the installer is still running):

    12.1 Unzip projmgr.jar file in the clarity\lib folder and check if AddTaskConstraint class is there. Most probably its not there. If so, you have to find that class file from previous version and add it to the class directory and jar the whole thing back to projmgr.jar file and place it in clarity/lib folder (replace existing file). If you dont know how to do this, you can mail me and I can send you the projmgr.jar file. Copy the projmgr.jar file to the clarity\lib folder.

    12.2 Edit db.xml file under clarity\.setup\scripts and put failonerror to false on line 204. I was getting errors when the script tried to upgrade the content pack. When checked with CA Support, they too advised to change the failonerror to false and proceed. You may or may not get this error. The command that the script runs was run manually outside after the installation was completed.

    12.3 Edit content.xml file under install directory\upgrade\12.1.0\postupgrade and at line 50, comment out the entire <target> section. Again, as above, was getting errors during content pack upgrade.

    12.4 Replace the SQL in tasksPMD.xbl file in Clarity/META-INF/projmgr/pmd folder to the below:

insert into odf_ca_constraint (id, created_by, created_date, last_updated_by, last_updated_date, partition_code)
select prc.prid, ?, ?, ?, ?, c.partition_code from prconstraint prc, prtask t, inv_projects p, odf_ca_project c where
p.prid = c.id and p.prid = t.prprojectid and t.prid = prc.prtaskid and not exists (select 'x' from ODF_CA_CONSTRAINT where id = prc.prid)


13. Once install finishes, run the following two commands to install and upgrade content (the section that was commented out):

nikuadmin content clarityContent -console -Dreports.apply=false
nikuadmin content upgrade -console -Dreports.apply=false

14. Stop all services before proceeding to next step. Install would have started both beacon and nsa and you should stop them to proceed to the next step.

15. Once upgrade finishes, upgrade PMO to 2.2. Before doing that, take back-up of clarity DB as well as Overview page and project view/configuration. I have not done this since we dont use PMO. Beware, when you install PMO, there is no way to uninstall and it would overwrite your object views and Overview page (in addition to any other modification it does). So, if you want to retain your customized configuration and dont want anything extra added by PMO, either take back up of views/pages before PMO install or dont install PMO if you dont use any of its portlets/functions.

16. Once PMO upgrade finishes, apply patch 4a to the Clarity system. You may now restore the Overview page and object views that PMO upgraded. You would need to request CA Support to grant you access to patch 4a.

17. Run Rate Matrix Extraction with all boxes checked except for last one "Incremental Update Only" unchecked. Then run Datamart Extraction, followed by Datamart Rollup

Hope you have a troublefree and painless installation experience. Please do share yours.

No comments:

Post a Comment