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

The FNMSPreCalcUpdate process updates many FlexNet Manager Suite web UI views (like the All Inventory, All Assets, or All Users views) when changes are made. To use fewer resources, the FNMSPreCalcUpdate process precalculates data rather than updating it on demand. When data in one of the associated tables changes, the update operation also updates the precalculated tables displaying various web UI views.

Using the All Inventory view as an example, when you make a change, FlexNet Manager Suite doesn't refer directly to the compliance database's main table that contains the inventory device information, the ComplianceComputer table. Instead, the Grid_ComputersListModel table (the view that displays the All Inventory of the web UI) refers to the Grid_ComputersListModel_PC table, which is the precalculated view.

Precalculated views are also seen elsewhere in FlexNet Manager Suite. Each row in the image below that ends in PC_MT is an example of a precalculated view. The precalculated tables update regularly and automatically as data in the supporting tables changes.

precalcviews.png

Issues with the FNMSPreCalcUpdate process can cause the web UI views in FlexNet Manager Suite not to update when changes are made. An example of a potential issue with FNMSPreCalcUpdate would be if you modify a device's Inventory Device Properties, but the change isn't reflected in the All Inventory view. 

If FlexNet Manager Suite's web UI views take unusually long to update, follow the steps below to troubleshoot.

Determine if the FNMSPreCalcUpdate process is running normally

  1. To confirm when the precalculated tables were last updated, the BatchProcessExecution table has a record for every FNMSPreCalcUpdate task that ran for each view. Run a query for the view you're seeing issues with to determine when the precalculated tables were updated.

As an example, the query below would gather the last ten occurrences of the FNMSPreCalcUpdate task for the ComputersListModel_PC table that displays the All Inventory view:

SELECT TOP 10 * FROM BatchProcessExecution WHERE BatchProcessTypeID = 40 AND RawMessage LIKE '%Grid_ComputersListModel_PC%' ORDER BY Submitted DESC

NOTE: BatchProcessTypeID 40 is the identifier for FNMSPreCalcUpdate tasks. The RawMessage establishes the views that are updated via FNMSPreCalcUpdate tasks.

  1. Review the output of your query. Below is a sample output from the ComputersListModel_PC table.

Check the following items:

  1. The ReturnCode is zero (assuming FinishTime is non-zero).
  2. The submitted, start, and finish times occur regularly, depending on the scale of your system. For example, if you have many concurrent users and frequent user activity, these should occur multiple times per hour.
  • If these values are normal and multiple FNMSPreCalcUpdate jobs run each hour, the web UI view should be synchronized with its underlying compliance database content.
  • If these values are irregular, there may be an issue with the FNMSPreCalcUpdate process. Follow the steps in the next section for further diagnosis.

Batch

Process

Execution

ID

GUID

Batch

Process

Type

ID

Submitted

Operator

Login

Beacon

ID

Batch

Processor

Hostname

Batch

Process

Status

ID

11141

13BADA09-6DA1-4131-BBE8-A4BAFD3

DDD5C

40

51:05.9

x

NULL

y

3

 

Start

Time

Finish

Time

Progress

Return

Code

Output

Group

Name

Tenant

UID

Raw

Message

a

b

100

0

NULL

NULL

NULL

{"TenantUID":null,"HasTenantUID"

:false,"GroupName":null,

"HasGroupName"

:false, "TaskID": "13bada09-6da1-4131-bbe8-a4bafd3ddd5c", "TaskTypeID":40,"

OperatorLogin":"x",

"Progress":100,

"SubmitTime": "2020-07-06T05:51:05.9000397+01:00", "StartTime"

:null, "FinishTime":null,

"Properties":{"Arguments":"sync --targets Grid_ComputersListModel_PC"}}

FNMSPreCalcUpdate diagnostics

Review the following logs to identify any errors in scheduling or running the FNMSPreCalcUpdate process.

  • BatchProcessor logging on the Batch Processing or Application Server. Default location: ProgramData\Flexera Software\Compliance\Logging\BatchProcessScheduler\BatchProcessor.log
  • BatchProcessTask logging on the batch processing or application server. Default location: ProgramData\Flexera Software\Compliance\Logging\BatchProcessTask\BatchProcessTask.log
  • SQL Server Logs, located in SQL Server Management Studio, the server > Management > SQL Server Logs > current file.

Diagnosis of FNMSPreCalcUpdate issues for Flexera One ITAM

  • If FNMSPreCalcUpdate delays occur on one tenant, check if this also happens with other tenants. It may indicate an environmental or infrastructure issue if multiple tenants are affected.
  • While the cloud database is inaccessible, Flexera's support team can validate the above queries on the cloud database and access BatchProcessor/Scheduler logs.

Run FNMSPreCalcUpdate manually

Although most FlexNet Manager Suite tasks run on a schedule using Microsoft Message Queuing (MSMQ), FNMSPreCalcUpdate doesn't. It's scheduled based on an observer in the .NET backend, which checks for any significant updates of data, views, and grids in the FlexNet Manager Suite web UI.

Since FNMSPreCalcUpdate runs whenever there are relevant updates, it's common to see this task run every few minutes and records written to the BatchProcessExecution table multiple times daily.

You can, however, manually run FNMSPreCalcUpdate using the following two commands in an administrator command prompt on the application/batch server if you'd like to initiate the process.

CD <Instal Dir>:\Program Files (x86)\Flexera Software\FlexNet Manager Platform\DotNet\bin

BatchProcessTaskConsole.exe run FNMSPrecalcUpdate

Was this article helpful? Yes No
100% helpful (2/2)
Comments
mfranz
By Level 17 Champion
Level 17 Champion

Here's a query for all these target type processes with a clear taget column:

SELECT TOP 100
	*
,REVERSE(SUBSTRING(REVERSE(RawMessage),4,CHARINDEX('stegrat',REVERSE(RawMessage))-5)) Target
FROM BatchProcessExecution
WHERE BatchProcessTypeID = 40  AND RawMessage LIKE '%-targets%'
ORDER BY Submitted DESC
srikanth_m
By
Level 3

@mfranz , I am facing this issue in my environment where FNMSPrecalcupdate and FNMSDashboardUpdate are return exitcode as -1 instead of 0. What can we do to resolve this issue? Ours is an On-Premise environment.

mfranz
By Level 17 Champion
Level 17 Champion

@srikanth_m, I guess you should open a support case.

Version history
Last update:
‎Apr 27, 2023 10:37 AM
Updated by: