KBI 311618 Issue Addressed: Argent AT Service Can Stop After Too Many Restart Service Due To Corrupted BI Data

Version

Argent Advanced Technology 5.1A-1801-A and below

Date

Thursday, 15 February 2018

Summary

When Argent Advanced Technology service is configured to use SQL Bulk Insert, rarely it can suddenly stop

Inspecting service log, following lines can be found:

The corrupted BI data is actually the file PREFDATA_BI_POOL.DAT in product home directory

When it is badly corrupted, it can cause Argent Advanced Technology Engine startup fails

After so many retries, Argent Advanced Technology Engine finally gives up

The issue has been addressed in Argent Advanced Technology 5.1A-1801-B

Technical Background

The file PREFDATA_BI_POOL.DAT is used when SQL Bulk Insert is enabled

When doing SQL Bulk Insert, the Argent Predictor data is first cached in memory

Only when enough rows accumulated or time period expires (both controlled by registry), the rows are written out as a batch

To prevent data lost when service restarts or accidentally power is off, the cached data is periodically written out to this PREFDATA_BI_POOL.DAT

When service starts, the file is read to restore the cached Argent Predictor data

Argent AT code is protected from archive format exception and general file I/O exception

It is found that some unknown type exception can still happen when the file is badly corrupted

Argent Advanced Technology code has been enhanced to handle the generic exception so that the corrupted DAT file can be removed before service process restarts

It resolves the endless restart issue

Resolution

Upgrade to Argent Advanced Technology 5.1A-1804-A