Product Documentation

FairCom DB V12 Release Notes

Previous Topic

Next Topic

Improve batch read resilience to errors caused by record updates

In certain situations, a batch read could fail with errors such 160, 153, or 149 if it is performed at the same time another connection is updating records in the data file. This can happen if another operation locks and updates the record after the batch finds a key value that satisfies the batch criteria and before the batch locks and reads the record. Using the lock options such as BAT_LOK_RED or BAT_LOK_WRT reduce the likelihood of the error, but it can still occur.

The logic has been modified to handle these situations better. In the following cases, where the batch read fails to read a record, it now skips the record and continues the batch processing with the next key in the sequence:

  1. If record read fails with error ITIM_ERR.
  2. If the batch read is not locking records and record read fails with error VBSZ_ERR or VRLN_ERR.

In addition, the batch read operation now skips a fixed-length record that has been deleted.

TOCIndex