Data aggregator service stops after a scheduled reboot of the server. The server was rebooted as per recommended procedure but still facing an issue.Following error is observed in the Data aggregator karaf.log file.
Caused by: com.vertica.support.exceptions.IntegrityConstraintViolationException: [Vertica][VJDBC](3149) ERROR: Duplicate primary/unique key detected in join [(dauser.item x dauser.poll_item) using item_by_item_id_seg_b0 and poll_item_order_by_device_item_id_first_seg_b0 (PATH ID: 1)]; value [xxxxxxxx]
ERROR | ExtenderThread-1 | xxxx-xxxx-xxxx:xx:xx | shutdown | tdown.ShutdownRequestManagerImpl 29 | ommon.core.services.impl ||Shutting down the data aggregator. Please contact CA Technical Support.
Component com.ca.im.item.repository.ItemRepository has requested shutdown for reason: Could not load the item repository. Errors during attribute loading.
DX NetOps 23.3.3 Performance Management Release
A recently migrated VNA collector's item ID had a duplicate entry within Vertica Database which was preventing Data aggregator to start.
Following are the steps to identify the duplicate and delete the Item ID's from vertica database
a) Run the following query to identify the duplicates in poll_item table within vertica database by logging into vsql.
select * from poll_item where item_id in (select item_id from poll_item group by 1 having count(*) >1 ) order by 1;
This query should provide the output of duplicates within the poll_item table.
b) In this case the item_id was related to a VNA collector which was recently migrated where the hostname changed but IP remained the item ID was duplicated.
c) Take a backup of the Irepository before making any changes
./caVerticaUtility.sh -u dradmin -w {password} -s dauser -d /app/CA/IMDataRepository_vertica*/iExport -e -A
d) Run the etlHealth.sh script
e) Export the Irep tables in question
./caVerticaUtility.sh -u dradmin -w {password} -s dauser -d /app/CA/IMDataRepository_vertica*/iExport -e -o poll_item_dups,item,item_facet,poll_item,qname,facet
f) Delete the duplicate item
delete from poll_item where item_id=xxxxxx and device_item_id=xxxxxx;