After upgrading to UIM 20.3, the discovery_server keeps turning red.
The log shows:
06 Oct 2020 15:14:56,307 [main] FATAL com.nimsoft.discovery.server.probe.DiscoveryServerProbe - Error initializing probe: java.lang.IllegalArgumentException: Invalid Nimsoft address string
06 Oct 2020 15:14:56,307 [main] FATAL com.nimsoft.discovery.server.probe.DiscoveryServerProbe - java.lang.IllegalArgumentException: Invalid Nimsoft address string
at com.nimsoft.nis.nimbus.RobotAddress.valueOf(RobotAddress.java:29)
at com.nimsoft.nis.infrastructure.RobotInfo.setAddress(RobotInfo.java:256)
at com.nimsoft.nis.dao.CmNimbusRobotDao.createRobot(CmNimbusRobotDao.java:151)
at com.nimsoft.nis.dao.CmNimbusRobotDao.access$100(CmNimbusRobotDao.java:19)
at com.nimsoft.nis.dao.CmNimbusRobotDao$RobotMapper.mapRow(CmNimbusRobotDao.java:131)
at com.nimsoft.nis.dao.CmNimbusRobotDao$RobotMapper.mapRow(CmNimbusRobotDao.java:128)
at org.springframework.jdbc.core.RowMapperResultSetExtractor.extractData(RowMapperResultSetExtractor.java:93)
at org.springframework.jdbc.core.RowMapperResultSetExtractor.extractData(RowMapperResultSetExtractor.java:60)
at org.springframework.jdbc.core.JdbcTemplate$1.doInPreparedStatement(JdbcTemplate.java:708)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:644)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:695)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:727)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:737)
at org.springframework.jdbc.core.JdbcTemplate.query(JdbcTemplate.java:792)
at com.nimsoft.nis.dao.CmNimbusRobotDao.query(CmNimbusRobotDao.java:81)
at com.nimsoft.discovery.server.nimbus.scan.NimbusScanMaster.queryAllRobots(NimbusScanMaster.java:94)
at com.nimsoft.discovery.server.nimbus.scan.NimbusScanMaster.startTasks(NimbusScanMaster.java:48)
at com.nimsoft.discovery.server.probe.ProbeTaskManager.start(ProbeTaskManager.java:47)
at com.nimsoft.discovery.server.probe.DiscoveryServerProbe.initialize(DiscoveryServerProbe.java:132)
at com.nimsoft.pf.ProbeFramework.initialize(ProbeFramework.java:145)
at com.nimsoft.nimbus.PFProbe.initialize(PFProbe.java:490)
at com.nimsoft.nimbus.PFProbe.doForever(PFProbe.java:519)
at com.nimsoft.discovery.server.probe.DiscoveryServerProbe.main(DiscoveryServerProbe.java:52)
06 Oct 2020 15:14:56,307 [main] FATAL com.nimsoft.nimbus.PFProbe - (1) error, Failed to initialize probe lifecycle: (1) error, java.lang.IllegalArgumentException: Invalid Nimsoft address string: Invalid Nimsoft address string
06 Oct 2020 15:14:56,307 [main] FATAL com.nimsoft.nimbus.PFProbe - (1) error, Failed to initialize probe lifecycle: (1) error, java.lang.IllegalArgumentException: Invalid Nimsoft address string: Invalid Nimsoft address string
at com.nimsoft.pf.ProbeFramework.initialize(ProbeFramework.java:148)
at com.nimsoft.nimbus.PFProbe.initialize(PFProbe.java:490)
at com.nimsoft.nimbus.PFProbe.doForever(PFProbe.java:519)
at com.nimsoft.discovery.server.probe.DiscoveryServerProbe.main(DiscoveryServerProbe.java:52)
Release : 20.3
Component : UIM - DISCOVERY
This is caused by a badly-formatted address in the CM_NIMBUS_ROBOT database table.
Run the following SQL query vs. the UIM backend database:
select robot_id,address from CM_NIMBUS_ROBOT;
Look through the list and see if you can find a row with an address that does not match the format of all the others (/Domain/Hub/Robot) and remove that row.
Deactivate/activate discovery_server and the error should be resolved.
As of UIM 20.3.1 this problem still exists, but will be resolved in a future version of discovery_server.