Problem:
Attempts at creating interface groups in the UMP USM portlet fail with errors similar the the following:
An unknown error has occurred.
Refreshing your browser may resolve the issue.
Details:
com.firehunter.ump.exceptions.DataFactoryException : No entity found for query
Stack Trace:
at org.hibernate.jpa.internal.QueryImpl.getSingleResult(QueryImpl.java:498)
Environment:
UIM Server/UMP: 8.0 through 8.47 as of the date that this document was published
Cause:
A corrupted CM_GROUP table in the CA_UIM database prevents creating new groups in the UMP USM portlet. Specific problems are two fold:
Resolution:
1. Steps to restore the missing root entry in the CM_GROUP table:
a. As a precaution take a backup of the CM_GROUP table:
SELECT * INTO CM_GROUP_BACKUP FROM CM_GROUP;
b. Deactivate the ugs probe
c. Issue the following SQL queries to rebuild the missing <<root>> group:
For UIM 8.31 and earlier:
SET IDENTITY_INSERT CM_GROUP ON;
INSERT INTO CM_GROUP (grp_id,grp_type,pgrp_id,name,name_token,description,description_token,priority,last_update,active,is_unified,target,usm_visibile)
VALUES (0,-1,NULL,'<<root>>',NULL,NULL,NULL,0,GETDATE(),1,0,NULL,NULL);
SET IDENTITY_INSERT CM_GROUP OFF;
For UIM 8.40 and later:
SET IDENTITY_INSERT CM_GROUP ON;
INSERT INTO CM_GROUP (grp_id,grp_type,pgrp_id,name,name_token,description,description_token,priority,last_update,active,is_unified,target,usm_visible)
VALUES (0,-1,NULL,'<<root>>',NULL,NULL,NULL,0,GETDATE(),1,0,NULL,NULL);
SET IDENTITY_INSERT CM_GROUP OFF;
d. Activate the ugs probe
2. Steps to repair groups that have -9999 in the pgrp_id column:
a. As a precaution take a backup of the CM_GROUP table:
SELECT * INTO CM_GROUP_BACKUP FROM CM_GROUP;
b. Deactivate the ugs probe
c. Issue the following SQL query to repair the groups with an invalid pgrp_id:
UPDATE CM_GROUP SET pgrp_id = 0 WHERE pgrp_id < 0 OR( pgrp_id <> 0 AND pgrp_id NOT IN(SELECT grp_id FROM CM_GROUP));
d. Verify that the corrupted rows have been repaired:
SELECT * FROM CM_GROUP WHERE pgrp_id NOT IN (SELECT grp_id FROM CM_GROUP) AND pgrp_id != 0;
e. Activate the ugs probe
Additional Information:
If you have installed the trellis probe to replace the ugs probe, then you must deactivate trellis as well as ugs prior to making any changes to the CM_GROUP table.
After repairing groups that had -9999 in the pgrp_id column, you will notice that these repaired groups will appear at the top level of the group tree view in your UMP USM portlet. If these groups are no longer valid, you can then delete them from the UMP USM portlet.