When Upgrading from R12.5x to R12.8/R12.9 the genNumProcs field in the CA_AGENT_PROP table (the Number of Processors ), gets changed from Float to Integer.
R12.5x CA_AGENT_PROP w/ genNumProcs(Float) R12.8/9 CA_AGENT_PROP w/ genNumProcs (Int)
If there are any values in that field that cannot fit into a Integer field the conversion will fail which will cause the Upgrade to R12.8/9 to fail.
Integer Fields hold any value between -2,147,483,648 to 2,147,483,647
The SQL Query below shows the name of the agent and value of the genNumprocs field sorted by genNumprocs
select gennetname, genNumProcs from ca_agent_prop order by genNumProcs desc
For Example Rows 2-5 will not fit in the Integer Field, but fields 6-7 are incorrect because the machine probably does not have that many processors.
Here is an Example of the Errors that you might see in the Logs:
The values in the genNumprocs field in the ca_agent_prop table need to all be Integer values.
The genNumprocs field is the number of Processors that a machines has, so that by default, should be less than 128 and an Integer.
There 3 solutions depending on what machine you are upgrading:
1. Target of SQL Bridge/Shared MDB - Check the Values on the Source side and if they are correct, force that table to re-synch
update ca_synchronization_status set modified_status=0x0 where synchronization_conf_uuid in ( select synchronization_conf_uuid from ca_synchronization_conf where direction != -1 and table_name='ca_agent_prop')
2. Enterprise Manager - Check the Values on the Domain Manager and if they are correct, force that table to re-replicate
update ca_replication_status set modified_status=0x0 where replication_conf_uuid in ( select replication_conf_uuid from ca_replication_conf where direction != -1 and table_name='ca_agent_prop')
3. Domain Manager - If the values are incorrect than force a Full Asset Scan on the machines that the values are bad.
If all else fails you can set the values manually to the correct value or set the value to NULL.
set genNumProcs = <'Correct value' or NULL>
where gennetname = ' <agent_name>'
After changing all the values of the genNumProcs field in the CA_AGENT_PROP table, so they fit in an Integer field, the upgrade proceeds successfully.