To help you pinpoint this problem, the following SQL query should be run (from the project selected in the Site Administration page):
SELECT CO_ID,CO_NAME,PARAMNAME
FROM COMPONENT
JOIN (
SELECT COUNT(1) CNT,LOWER(FP_NAME) PARAMNAME
,FP_COMPONENT_ID
FROM FRAMEWORK_PARAM
GROUP BY FP_COMPONENT_ID
,LOWER(FP_NAME)
) A ON FP_COMPONENT_ID = CO_ID
WHERE CNT > 1
This query returns the Component ID, Component Name, and a lowercase representation of the duplicate parameter name. This helps identify the components and parameters that need renaming.
Once you've identified the components that include duplicate parameters, go to Quality Center and use rename parameters to correct this duplication.
After applying the changes, the project can be upgraded.
If the project is versioned or uses baselines, other similar queries need to be run to verify the data stored in these additional tables.
To verify the history data of a project where Version Control feature is enabled:
SELECT CO_ID,CO_NAME,PARAMNAME
FROM HIST_COMPONENT
JOIN (SELECT COUNT(1) CNT,LOWER(FP_NAME) PARAMNAME,FP_COMPONENT_ID,FP_VC_VERSION_NUMBER
FROM HIST_FRAMEWORK_PARAM
GROUP BY FP_COMPONENT_ID, FP_VC_VERSION_NUMBER,LOWER(FP_NAME)
) A ON FP_COMPONENT_ID = CO_ID AND FP_VC_VERSION_NUMBER = CO_VC_VERSION_NUMBER
WHERE CNT > 1
To verify the data captured in baselines:
SELECT CO_ID,CO_NAME,PARAMNAME
FROM BL_COMPONENT
JOIN (
SELECT COUNT(1) CNT,LOWER(FP_NAME) PARAMNAME,FP_COMPONENT_ID,FP_BL_ID
FROM BL_FRAMEWORK_PARAM
GROUP BY FP_COMPONENT_ID, FP_BL_ID,LOWER(FP_NAME)
) A ON FP_COMPONENT_ID = CO_ID AND FP_BL_ID = CO_BL_ID
WHERE CNT > 1
Note that unlike fixing the data in regular tables, fixing both history and baseline tables must be done directly on the database (because there is no mechanism of modifying historic/baseline data once the data has been captured).
Note: Modifying parameter names might make it necessary for you to modify scripts used by renamed components.
Note: Back up your data before running Repair / Upgrade