When attempting to add NFA as a data source in Performance Center it fails with a "bind failure".
The following exception is seen in the /opt/CA/PerformanceCenter/DM/logs/DMService.log:
CAPC encountered an error while trying to sync with data source ndctnf01aa-flow.ca.com. The problem is in CAPC, not the data source.
The following stack trace shows the invalid SQL statement in CAPC:
org.springframework.dao.DataIntegrityViolationException: StatementCallback;
SQL [INSERT INTO bind_roles (SourceID, UpdateStage, RoleLocalID, RoleName,RoleDesc) VALUES (8,1,1,'CaOperator',NULL),(8,1,3,'CaAdmin',NULL),(8,1,7,'WanAnalysis_NetFlow',NULL) ON DUPLICATE KEY UPDATE UpdateStage=1,RoleLocalID=VALUES(RoleLocalID), RoleName=VALUES(RoleName),RoleDesc=VALUES(RoleDesc)]; Column 'RoleDesc' cannot be null; nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException:
Column 'RoleDesc' cannot be null
Release: 2.4.x and up
Component: NFA mysql db
Null description column for roles
If you connect to the NFA "reporter" database and do a
Select * from role_definitions WHERE description is NULL;
you will note that the "description" column will be null for one or many roles.
Update the description column so that the value is not null and the NFA data source will bind successfully in Performance Center.
Generic SQL syntax of UPDATE command to modify data in a MySQL table:
UPDATE table_name SET field1=new-value1, field2=new-value2
Example:
UPDATE role_definitions SET description = 'Test Users' WHERE description is NULL;
Starting in NFA 21.2.8, accessing the 'root' user in mysql now requires a password. By default, the root password is set to '[email protected]'.
To login locally to a database using root credentials, use the syntax below:
mysql <database> -u root -p
For example:
mysql reporter -u root -p
Then enter the root password (e.g. [email protected]) when prompted.
The NFA Console has 1 database called 'reporter' which runs on port 3308.
The username/password for the reporter database is netqos/netqos