ALM 12.55 Repair – Duplicate component parameters names found
Question ID: 108150
0
0

I’m getting an error when attempting to Repair a project for Upgrade. I can’t find any guidance on how to fix and I can’t get access to the Knowledge Base Article. How do I fix this issue?

Problems that require Manual Repair

Duplicate component parameters names found
Some business components have parameters that are only differentiated by the case sensitivity of their name. Please correct this by manually renaming one of the duplicate parameters. (Knowledge base article KM00461630.)

Marked as spam
Posted by (Questions: 113, Answers: 8)
Asked on February 1, 2018 12:44 am
70 views
Answers (1)
0
Private answer

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

Marked as spam
Posted by (Questions: 0, Answers: 309)
Answered on February 1, 2018 12:47 am
EyeOnTesting

Welcome back to "EyeOnTesting" brought to you by Orasi Software, Inc.

X
Scroll to Top