cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Summary

ndtrack may consume all available CPU resources for an extended period on a Linux computer while processing output from the “rpm --query --all --queryformat […]” command that is used to gather information about installed rpm packages.

Details

When this issue occurs, high CPU usage can be observed occurring between the following lines of logging appearing in the /var/opt/managesoft/logs/tracker.log file:

[Mon 28 Feb 2022 09:45:10 AM CET (G, 0)] {8429} Started package database update for package types 'IA,BEA,OUI,ISMP,IIM,RPM,DPKG,APK' into '/var/opt/managesoft/cache/packagedb.cdb'
[Tue 01 Mar 2022 06:17:30 PM CET (G, 0)] {8429} Error: A package list count not be found
[Tue 01 Mar 2022 06:17:30 PM CET (G, 0)] {8429} Package database update failed.  Return code -508952471

Note the timestamps - in this particular example the process ran for more than 32 hours.

The output being processed that causes a problem here is output from the following command that ndtrack executes during its normal processing on Linux. This issue is more likely to occur on computers where this command produces a large volume of output.

rpm --query --all --queryformat '%{NAME}%%%{VERSION}%%%{RELEASE}%%%{ARCH}%%%{INSTALLTIME}
[%{FILENAMES}
]%%%%%%%%%%%%%%%%%%%%EOP
'

Workaround

This issue can be avoided by excluding "RPM" from the PackageDatabaseTypes preference value.

Note: Doing this will cause details of RPM packages to be excluded from gathered inventory. Hence application installations that would normally be recognized as installed based on this data will no longer be recognized.

For example:

ndtrack -t Machine -o "PackageDatabaseTypes=IA,BEA,OUI,ISMP,IIM,DPKG,APK"

Alternatively, commands like the following can be executed to permanently configure this preference setting for the agent:

cat <<EOF >tempconfig.ini
[ManageSoft\Tracker\CurrentVersion]
PackageDatabaseTypes=IA,BEA,OUI,ISMP,IIM,DPKG,APK
EOF

/opt/managesoft/bin/mgsconfig -i tempconfig.ini

rm tempconfig.ini

When run in this way, the process package database update step completes in <1 second:

[Mon 11 Apr 2022 04:07:50 PM CEST (G, 0)] {20730} Started package database update for package types 'IA,BEA,OUI,ISMP,IIM,DPKG,APK' into '/var/opt/managesoft/cache/packagedb.cdb'
[Mon 11 Apr 2022 04:07:50 PM CEST (G, 0)] {20730} Error: A package list count not be found
[Mon 11 Apr 2022 04:07:50 PM CEST (G, 0)] {20730} Package database update failed.  Return code -508952471

Fix status

This issue has been fixed in the following FlexNet Manager Suite releases: 2022 R1.6 / Sep 2022 (Cloud), 2022 R2 (On Premises)

Other information

Affected components: Agent, Inventory

Master issue ID: IOK-608835

Also known as: FNML-76581

Was this article helpful? Yes No
No ratings
Comments
durgeshsingh
By
Level 10

Team,

I have created .ini file with below but seems its not taking in effect as server is getting stuck on same step however when have used mannual command . It has finished within 1 min.

ndtrack -t Machine -o "PackageDatabaseTypes=IA,BEA,OUI,ISMP,IIM,DPKG,APK"

[ManageSoft\Common]
CheckCertificateRevocation=False
CheckServerCertificate=False
NetworkSense=False
[ManageSoft\Launcher\CurrentVersion]
NetworkSense=False
[ManageSoft\Tracker\CurrentVersion]
Lowprofile=True
IncludeDirectory="/opt","/usr","/var","/apps"
Upload=True
[ManageSoft\Usage Agent\CurrentVersion]
StartupDelay=600
[ManageSoft\Tracker]
PackageDatabaseTypes=IA,BEA,OUI,ISMP,IIM,DPKG,APK

ChrisG
By Community Manager Community Manager
Community Manager

@durgeshsingh - the preference section name "[ManageSoft\Tracker]" specified in this article is a typo. It should be "[ManageSoft\Tracker\CurrentVersion]".

I'll arrange to have the article updated.

durgeshsingh
By
Level 10

Thanks. I will check & update you.

durgeshsingh
By
Level 10

I have made suggested change. It has worked as expected.

Version history
Last update:
‎Nov 20, 2023 01:30 PM
Updated by:
Knowledge base article header content