In IBM Urbancode Deploy version 8.0 in System settings, Default Number of Versions to Retain for Component and Default Number of Versions to Retain for Environment have been configured to 2000.(Screenshot attached)
For a component with 33,000 versions in the Versions Tab, Udeploy displays all the versions and the versions which are above the Number of Versions to Retain for Component limit i.e. 2000 those versions are displayed with (archived) in the Version Name Example release-MA_DataWarriors-2024-12-11-New.18663.88c53631 (archived) (Screenshot attached)
We cannot Filter the Archived/Active versions from the Screen.
If the version is deleted from Artifact repositories (ex. Artifactory)", that version is still displayed as Archived in the UCD Version Screen and not deleted from Inventory.
As UCD still maintains this internal inventory of Archived versions during the Automatic version imports the system is iterating through Active/Archived versions and a SQL Query is being executed over 500,000 times every 30 minutes
This is the sql query
SELECT this_.id
AS id1_94_1_,
this_.version
AS version2_94_1_,
this_.archived
AS archived3_94_1_,
this_.component_id
AS component_id11_94_1_,
this_.date_created
AS date_created4_94_1_,
this_.description
AS description5_94_1_,
this_.importing
AS importing6_94_1_,
this_.last_modified
AS last_modified7_94_1_,
this_.name
AS name8_94_1_,
this_.size_on_disk
AS size_on_disk9_94_1_,
this_.version_type
AS version_type10_94_1_,
this_.created_by_user
AS created_by_user12_94_1_,
securityus2_.id
AS id1_160_0_,
securityus2_.version
AS version2_160_0_,
securityus2_.actual_name
AS actual_name3_160_0_,
securityus2_.sec_authentication_realm_id
AS sec_authenticatio15_160_0_,
securityus2_.email
AS email4_160_0_,
securityus2_.failed_attempts
AS failed_attempts5_160_0_,
securityus2_.ghosted_date
AS ghosted_date6_160_0_,
securityus2_.im_id
AS im_id7_160_0_,
securityus2_.last_ip_address
AS last_ip_address8_160_0_,
securityus2_.is_system
AS is_system9_160_0_,
securityus2_.last_login_date
AS last_login_date10_160_0_,
securityus2_.name
AS name11_160_0_,
securityus2_.password
AS password12_160_0_,
securityus2_.phone_number
AS phone_number13_160_0_,
securityus2_.security_version
AS security_version14_160_0_
FROM UDEPLOY.ds_version this_
INNER JOIN UDEPLOY.sec_user securityus2_
ON this_.created_by_user = securityus2_.id
WHERE this_.component_id = :1
ORDER BY LOWER (this_.name) ASC, this_.id DESC
These high number of executions have adversely affected the Oracle Database performance which has led us to increase the number of CPU’s allotted to the Database Server.
We need the following solutions
A Filter to clearly identify Active and Archived versions in Components Version screen.
Checkbox to Select multiple versions in the Component versions Screen.
A Component version should be automatically deleted from Udeploy if that version does not exist in Artifactory based on the System Settings (Default Number of Versions to Retain for Component and Default Number of Versions to Retain for Environment) instead of just retaining them as Archived which is causing performance issues in the Database during Automatic version import.