The Symantec Endpoint Protection Manager (SEPM) replication fails with exception: 'java.lang.NumberFormatException: For input string: "${VISIBILITYMOCKSEQUENCENUM.EN_US}"'
Per Replication logs:
Date Time THREAD 4601789 WARNING: ReplicationTask>> mergeMetadata: Error-> Merge Failed - Metadata with Id DBBAD5C70A4B02EE3345CCC495BA78FB could not be merged
Date Time THREAD 4601789 WARNING: java.lang.NumberFormatException: For input string: "${VISIBILITYMOCKSEQUENCENUM.EN_US}" at
java.lang.NumberFormatException.forInputString(NumberFormatException.java:65
)
Error can also contain: "${VisibilityMockSequenceNum}"
SEPM 14.3 RU6, 14.3 RU7
For any SEPM, UiAddOnFeatureSet XML in the database should have an integer value for the sequence number. A SEPM API update incorrectly set this sequence number as "${VISIBILITYMOCKSEQUENCENUM.EN_US}" and replication fails because it does not expect a non-integer value.
This issue is resolved automatically by the SEPM. The Component Upgrade Task will run within 24 hours on the SEPM to update the sequence number to the correct value.
Since it can take 24 hours for the task to run, replication will fail until the value is updated in the database. To force the task to run, you can add the following line to conf.properties (<SEPM>\tomcat\etc\conf.properties) and restart the SEPM services to set the frequency of Component Upgrade Task.
scm.component.upgrade.minutes=10
Once you've added the line to conf.properties, restart the SEPM services and wait for the task to run. This typically takes longer than 10 minutes, so give it time to complete. Replication will complete after the value is updated in the database.
Note: Once replication completes, you must remove the scm.component.upgrade.minutes entry from conf.properties and restart SEPM services to restore the default task schedule back to 24 hours.
To prevent this in the future, we have updated the release process to ensure a proper sequence number is written to the database XML.
The file <SEPM>\tomcat\logs\SepmComponentUpgradeTask-0.log will have a new timestamp each time the Component Upgrade Task runs. This can help to determine when it last ran and when the next 24-hour scheduled run should execute. If the SEPM has been recently restarted, then the task will not run until 24 hours from SEPM start, by default.