6

We experienced an issue at the customer where the job "Warehouse management on-hand entries cleanup" by default coulnd't keep up with cleaning up the records in a timely manner. (20 million records InventSum, 8 million WHSInventReserve)


This is due to large growing number of records on a daily basis which need to be cleanup


To get around the issue, we did create a x++ script which creates for each item more than 10k entries in InventSum its own batch task and run in parallel.


There were no issues running the cleanup per item in parallel related to blockings or locking and it cleanup more than 15 million records within 1 hour (20 parallel tasks)



Suggestion:

Make the cleanup job "Warehouse management on-hand entries cleanup" multithreaded, bundle items together based on a record based threshold in InventSum of "Closed" records


e.g. Threshold parameter can be set when running the job in the dialog, e.g. 10000 records.

then items will be added into the filter based on how many records they have in the inventsum.

Each time the threshold is exeeded, create a new batch runtimetask.


The concurrency can be controlled by the Batchgroup itself.




Category: Inventory
STATUS DETAILS
New