Summary
After enabling settings to delete obsolete inventory in the Obsolete inventory section of the Inventory tab on the System Settings page, the batch process that runs to delete the inventory may fail with a timeout if there is a large volume of data to delete. When this occurs, obsolete inventory data will not be removed as expected.
Details
This issue occurs because deleting a large volume of inventory data can take longer than 1 hour, which is the timeout allowed by the batch process that performs this operation.
Executing the following query against the compliance database (for FlexNet Manager Suite systems) will show details of the last 10 executions of the process to delete obsolete inventory:
SELECT TOP 10 Output, StartTime, FinishTime, Progress, ReturnCode FROM BatchProcessExecution WHERE BatchProcessTypeID = 46 /* IMTenantObsoleteInventoryMaintenance */ ORDER BY StartTime DESC
When this issue occurs, Output message values returned by the above query will show the following:
CleanObsoleteInventoryData failed. Execution Timeout Expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
Workaround
Flexera One IT Asset Management customers should contact Flexera Support for assistance if this issue occurs.
FlexNet Manager Suite customers can execute the following SQL script against the inventory database using a tool like SQL Management Studio. Change the number of days on the first line based on how long you plan to keep obsolete inventory data for.
DECLARE @ObsoleteInventoryPeriodInDays INT = 30 DECLARE @staleDate DATETIME = DATEADD(day, -@ObsoleteInventoryPeriodInDays, DATEDIFF(Day, 0, GetDate())) DECLARE @BatchSize INT = 10 CREATE TABLE #Computer (ComputerID BIGINT) WHILE 1 = 1 BEGIN INSERT INTO #Computer SELECT TOP (@BatchSize) c.ComputerID FROM dbo.Computer c INNER JOIN dbo.InventoryReport ir ON c.ComputerID = ir.ComputerID WHERE ir.HWDate < @staleDate BEGIN TRANSACTION IF EXISTS(SELECT 1 from #Computer ) EXEC DeleteComputers COMMIT TRANSACTION DELETE FROM #Computer IF @@ROWCOUNT < @BatchSize BREAK END DROP TABLE #Computer
This script may run for a long time, but will continue to make progress as it continues to run. It will delete a small number of computers at a time.
If this script terminates with a timeout, deadlock or other other error of a transient nature, keep repeating executions of the script until it no longer times out: the script will continue to make progress deleting records, even if transient errors occur from time to time.
Once this script has complete once to delete a potentially large volume of data, the batch process to delete newly obsoleted data will then typically be able to complete without a timeout condition continuing to occur.
Additional information
See the following page noting the introduction of the feature to cleanup obsolete inventory: Auto-cleanup of obsolete FlexNet inventory.
Related Articles
Known Issue: Batch job to delete obsolete inventory may fail with timeout if there is a large volume of data to be deleted… 24Number of Views ManageSoft reader "DeleteFromImportedInstalledFileEvidence - From Deleted File Evidence" may fail with timeout processing … 9Number of Views ManageSoft reader "DeleteFromImportedInstalledFileEvidence - From Deleted File Evidence" may fail with timeout processing … 6Number of Views Bulk inventory device deletion may fail to delete some devices that should be deleted, and may delete some devices that sh… 8Number of Views Application Installation Details report may perform poorly or fail after some time with a red bar error due to large volum… 4Number of Views
Hi, I am Reva - Ask me anything.
No new updates
Thanks for the feedback!
Your feedback has been saved.Rate this response:
Add Additional feedback ( Optional )
Are you sure you want to cancel
the case creation?
Are you sure you want to cancel the case creation?
Are you sure you want to close this case
| Products | Region | Phone Numbers |
|---|---|---|
| FlexNet Operations FlexNet Embedded FlexNet Publisher FlexNet Connect FlexNet Code Insight InstallAnywhere InstallShield |
North America * |
+1 630-332-2513 (toll) +1 877-279-2853 (toll-free in North America) |
| Europe * |
+44 1925 944367 (toll) +44 800 047 8642 (toll-free in Europe) |
|
| Japan * | +81 3-4540-5335 (select option 2) | |
| Australia * |
+61 3 9895 2177 +61 1800 560 603 (toll-free in Australia) |
|
|
Usage Intelligence (formerly
Revulytics) Compliance Intelligence |
Please use the Case Portal to submit your support ticket or reach out to your Revenera contact. | |
Case id: 00001065
Activity: Status change: 2 hours ago