BMC Discovery provides monthly Technology Knowledge Updates (TKU). These updates include:
- Support for new software products
- Enhancements and fixes for existing software products
- New integrations for Network Devices
- Enhancements and fixes for existing Network Devices
- New and updated patterns for Cloud Discovery and Storage Discovery
- New product content and fixes
Here are some relevant doc references:
With Helix Discovery, these updates are done automatically. Therefore, the following information applies primarily to on-premise BMC Discovery, although Use Case #3 could be helpful in either environment.
Note: It is always recommended to do a backup prior to updating a TKU.
Use Case #1
Problem: During a TKU upgrade, errors like the following occur:
"Change to module <module name> failed because imported name <name> version <version1> from <name> does not match required version <version2> at line <line number>”
Note: The following message is for information only and is not an error:
"Change to module xxx.xxx had warning Deactivating xxx.xxx to use newly activated module"
Root Cause #1: The TKU uploaded was for the wrong Discovery version. For example, a TKU for Discovery 11.1 was uploaded on an 11.3 appliance.
Solution #1: Upload the correct TKU.
Root Cause #2: The modules flagged as "failed" are custom patterns. For example:
"Change to module BAI_Application_aug_sync failed because Imported name 'BAI_Application' version 2.1 from CMDB.BAI_Application does not match required version 1.4 at line 3."
"Change to module CMDB.Extension.ComputerSystem_Augment failed because Imported name 'Host_ComputerSystem' version 2.0 from CMDB.Host_ComputerSystem does not match required version 1.8 at line 15."
These custom patterns have import dependencies on TKU patterns whose version has changed.
Solution #2: Update the custom patterns to use the correct versions of the modules they are importing.
Root Cause #3: The modules flagged as "failed" are Storage TKU patterns. For example:
"Change to module NetApp_Storage failed because Imported name 'ConversionFunctions' version 1.1 from ConversionFunctions does not match required version 1.2 at line 12."
Solution #3: This could happen in the following cases:
a) The Storage TKU was applied before the core TKU of the same month. In this case, perform the knowledge updates in the following sequence:
-Update core TKU first (BMC Discovery Technology Knowledge Update)
-Update Storage TKU next (BMC Discovery for Storage)
-Update EDP (Extended Data Pack)
b) The appliance previously had a very old Storage TKU version. In this case, the solution is to deactivate and delete the old Storage TKU.
c) An incomplete download of the core TKU causes a number of core TKU patterns to be missing. To correct this, re-download and reapply the core TKU, then reactivate the Storage TKU modules.
Use Case #2
Problem: While upgrading TKU, the message "Changes failed because Problem setting pattern state" appears
Solution: The cause of these errors is difficult to determine and the problem is frequently not reproducible. The following workarounds have proven effective:
1/ Do the following:
- Restart the Discovery services
- Go to Manage > Discovery and "stop all scans"
- Go to Manage > Knowledge and make sure "Auto Cleanup" is checked
- Try to upload the TKU again.
2/ Stop the reasoning service and restart it with the option to deactivate all patterns. See KA 000104293 for details. Once this is done, the patterns for the most recent TKU can be re-activated, followed by any needed custom patterns.
Use Case #3
Problem: Attempts to deactivate some TKU or custom patterns fail because of dependency relationships
Patterns commonly have dependency relationships with other patterns. In some cases, an attempt to deactivate or delete a pattern may fail with a message that some other pattern is dependent on it. Trying to deactivate or delete these dependent patterns then may fail with similar messages for still other patterns.
Solution: It is possible to stop the reasoning service and restart it with an option to deactivate all patterns. See KA 000104293 for details. Once this is done, the desired patterns can be deleted or re-activated as appropriate. For Helix Discovery, contact Customer Support.
Use Case #4
Problem: A TKU upgrade fails with a message like the following:
Change to module xxxxxx failed because TPL version 1.xx is not supported in file at line n.
Root Cause 1: Incompatibility between versions of BMC Discovery and TKU. For example, customer has BMC Discovery 11.2 and is applying the TKU for Discovery 11.3.
Solution 1: Download and apply the correct TKU version for the Discovery version.
Root Cause 2: The TPL version defined in a custom pattern is not supported by the Discovery version being used. For example, customer has BMC Discovery 11.2 (which supports TPL 1.14) and is uploading a pattern with TPL 1.15 defined.
Solution 2: The supported TPL version can be seen in the Manage > Knowledge page. The solution is to revise the TPL version in the pattern to be equal to or less than the supported version.
Root Cause 3: The Discovery version being used does not support the TPL version in the TKU upgrade. For example, customer is using Discovery 11.0 (with no patch) and tries to upgrade to a TKU version >= March 2016.
Solution 3: The TKU release notes would document this with something like "If you are running BMC Discovery version 11.x you must upgrade to 11.x0.1 (or later)". The solution is to upgrade Discovery as directed before applying the TKU.
Use Case #5
Problem: A TKU upgrade fails with a message like the following:
Change to Module <Module_Name> failed because Pattern <Pattern_Name> is deprecated.
Root Cause: This could happen if a TKU pattern was customized (or a beta pattern was provided by BMC Support) in the past, where pattern version > current pattern version defined in TKU. It could also happen if a pattern module from the wrong Discovery version was mistakenly uploaded.
Solution: Try the following steps:
- Search for the problematic pattern module. It should show a version different than the current TKU pattern.
- Deactivate / delete the incorrect module version
- Activate the new TKU module.
Use Case #6
Problem: A TKU upgrade hangs and never completes; the last UI message is "Loading new rules".
This may be accompanied by other symptoms, including stuck scans and UI unresponsive.
In most cases a restart of appliance/cluster services or a reboot of the appliance/cluster will resolve the problem temporarily, but it may re-occur the next time a TKU or pattern module is activated or deactivated.
Root Cause: Integrity problems with Discovery Access nodes or chains
Solution: Check for and repair any broken Discovery Access nodes. See KAs 000038838 and 000159430. This should resolve the TKU problem, and (depending on cause) may resolve the other symptoms as well.
Use Case #7
Problem: For Discovery 12.0, when uploading the TKU, the error " Unable to delete 'tw-python3-pyasn1-modules-0.2.8-1.py3.7.rhel7.noarch.rpm' " appears. Alternatively, the error may be " Unable to delete 'tw-python3-google-api-python-client-1.8.0-1.py3.7.rhel7.noarch.rpm' "
Root Cause: A defect was identified and fixed in patch version 188.8.131.52 and subsequent versions.
Solution: Upgrade to 184.108.40.206 (or later) and then re-upload the TKU.
Use Case #8
Problem: When loading a new TKU, the error "Unknown result for this part of the upload " appears in the UI, while installing the Network Device update:
Root Cause: The cause for this issue is currently unknown, however it occurs when the upload times out after taking more than two minutes to install the devices.
In some appliances this step completes in 10 seconds, so this could be an issue with the appliance being very busy or some disk related issue.
Solution: The workaround is to re-upload the same TKU to complete the installation. Though the upload times out, the Network Device update will have completed in the background. Therefore, when uploading the same TKU again, it will continue by skipping this stage.