Company: Link Technologies
Case No: L12307. Project: 12.43: LinkSOFT Version 12.43
Logged By: Sanjay (Link Technologies) on 02 Jul 2021 04:48PM
Priority: High
Product: Point of Sale
Group: Enhancement
Time Taken: 19.00 (Weight: 19.00)
Version: 12.43.0706
Assigned To: Sanjay (Link Technologies)
Circulation: Sanjay
Resolve By: Friday, 02 July 2021 12:00 AM [1020 days since logged date]
Status: Closed
Subject: Compare Data takes a long time in high volume environments causing high CPU usage

When using replication, the COMPARE DATA option allows users to identify any differences between a PARENT and a CHILD environment.

When customers have large volumes of data, e.g. 10,000 Inventory Items, the COMPARE DATA function needs to do a lot of work. This workload can be processor-intensive and cause the system to overload.


To resolve the above-mentioned issue, we need to introduce an "API Wait Time" to allow the server to do complex work such as comparing multiple fields of records from two systems. This will allow the API to carry on doing its other work. This design is similar to "asynchronous" data processing systems that allow the processor to "breath" while other tasks are being performed. 

After the "WAIT Time", the API will continue with the initial Complex Task.

The default value will be set to 10 minutes.

Audit Notes:
02 Jul 202104:52PM Comment 1 by Sanjay (Link Technologies) Assigned To: Sanjay (Link Technologies) Followup Date: 02-07-2021 08:48 PM Time Taken: 19.00
PART A - Development work for this case has been completed.

1. The change will be available in version:12.43.0702

2. The following changes were made(Include Database object names, Program classes, and any other relevant information):

  1. Introduced a new parameter in the integration called "APIWaitTime"
  2. Added an "API Request Datetime" to the API Request queue
  3. For all long-running processes, we leave the task in ASYNCHRONOUS mode and return the API connection. We check the QPI sync status after the "APIWaitTime" introduced in 2.1 above. If the task is still running, we wait a further "APIWaitTime" minutes. We mark the task as completed when the API returns in a "Completed State"

3. Affected Areas:

  1. Compare Data Process

4. The issue was caused by:

  1. Improvement

5. Notes
6. Next Step
(Review and System Test (Developer) -> UAT (Quality) -> Documentation): System and UAT tests completed.

If you have any queries regarding this support incident, please email and include the Case No: L12307 in the subject line of all emails regarding this issue.

Document size: 3.5 KB
For call complaints, please contact the Managing Director of the company using this form