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

Reconcile takes 7 hours to complete

Good afternoon

I have a customer that is kind of complaining that the reconcile in FNMS takes around 7 hours to complete.

Is there any thing that we can check to improve reconcile time.

Memory of Servers and Beacons are suffcient.

 

regards

Manish

(13) Replies
mfranz
By Level 17 Champion
Level 17 Champion

Hi Manish,

You could start with the log file from the inventory import/license reconcile and check if there are specific import steps that take longer than the rest.

Also what release of FNMS are you running and do you import from SCCM?  SCCM Access Evidences are known to build up over time. Joins on these tables are then continously taking longer and longer.

Best regards,

Markward

Hi Mark

 

Thanks for this, we are running FNMS 2018 R2. I will check the log files and yes SCCM is integrated.

regards

Manish

So in this case, please check the following tables and see how many rows you get:

  • ImportedClientAccessedAccessEvidence
  • ImportedClientAccessEvidence
  • ImportedAccessingDevice
  • ImportedAccessingUser
  • ImportedClientAccessedAccessOccurrence

Especially the last table tends to grow without limits (because the InventoryDate is generated each time the import runs).

The table rows are as below. What needs to be done, if anything? Table Name Rows ImportedClientAccessedAccessEvidence 125177 ImportedClientAccessEvidence 2 ImportedAccessingDevice 34996 ImportedAccessingUser 42130 ImportedClientAccessedAccessOccurrence 1545692

The number of rows seem reasonable. You should check the log files to see which steps exactly take the most time.

Also, do you have a feeling for how your SQL Server performs?

  • Is it actively managed?
  • Does it fulfill Flexera's system requirements (Cores, RAM, etc.)?
  • Is it configured correctly (e.g. as per Microsoft SQL Server Best Practice)?
  • Can you move to a faster storage tier (SDD)?

Having the SQL Server actively monitored during a Reconcile, to find possible bottlenecks, might be a good idea.

I use the following script in SQL Server Management Studio.

I only run selected portions. I use the Initial select to look at the data and get a feel for how many entries there are for a given file.  You can do multiple or manually change the longname to meet your company's need.

SELECT [SoftwareFileUsageID]

,[ComputerID]

,[UserID]

,[Version]

,[SoftwareFileNameID]

,[LongName]

,[CompanyName]

,[Description]

,[ProductName]

,[ProductVersion]

,[TenantID]

FROM [IM].[dbo].[SoftwareFileUsage_MT]

/* where LongName = 'C:\Program Files\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe' */

Order by LongName, ProductVersion

Delete

FROM [IM].[dbo].[SoftwareFileUsage_MT]

where LongName = 'C:\Program Files (x86)\Adobe\Acrobat 2015\Acrobat\acrotray.exe'

 

HI All the below that you have mentioned has been addressed, i will however request them to monitor the DB when the reconcile runs.

If you are monitoring application usage to allow for reclaiming of unused installations, take a hard look at SoftwareFileUsage_MT

You will have a number of helper files listed that after removal will improve reconciliation time significantly.

 

How would we clear those helper files under SoftwareFileUsage_MT and how would we identify that

@JeffVoss  - Can you provide an example of the helper files

ChrisG
By Community Manager Community Manager
Community Manager

Some questions I would ask here to possibly help qualify what is going on are:

  1. How many devices are being managed? A 7 hour reconcile may be quite expected and typical at one scale, but quite unexpected at another scale.
  2. How many UNIX devices are being managed? UNIX devices can generate large amounts of file evidence, which can be slow to process.
  3. Which steps are showing up in the import logs as taking the most time? This will give a sense of whether slowness if related to a particular step or set of related steps, or more general.
  4. Does the database storage subsystem support a sufficient number of IOPS? Suitable IOPS will vary significantly by scale, but <10K IOPS will often lead to slow imports if you have any more than a few 10Ks of devices. It is common for virtualized infrastructure to have fairly low storage subsystem IOPS, so be wary of hosting databases on a VM if working at scale.
(Did my reply solve the question? Click "ACCEPT AS SOLUTION" to help others find answers faster. Liked something? Click "KUDO". Anything expressed here is my own view and not necessarily that of my employer, Flexera.)
Hi Chris So, there are 38000 devices being managed. They have atleast 1200 UNIX devices. I have checked the log files and the UNIX file evidence does take over 1.5 hours. There are other steps that take about 30min etc but i guess those are acceptable. I have asked them to check the DB in regards to the IOPS and will come back. If all else fails, i have asked them to increase memory on the servers, if that still does not help, they will then raise a case.

Hello Manish

 

Generally a 'light weight' reconcile (without ticking -- Update inventory for reconciliation) should be completed fairly fast (within hour).  If the overnight full import(reconcile with inventory update), it could reach a few hours. Particularly time spent could be either FileEivdence (read or write) as well as Access evidence Mark referred. I believe finding out the import.log where it should tell you which specific step by checking timestamp takes longer time before you raise a formal support request.

 

Cheers

Kevin

(Anything expressed here is my own view and not necessarily that of my employer, Flexera. If my reply answers a question you have raised, please click "ACCEPT AS SOLUTION".)