Product Documentation

c-treeACE V10.0 Release Notes

Previous Topic

Next Topic

Permit Shared Reopen After a Transaction Controlled Header is Updated

Occasionally, it is quite useful to update header information in a file after it is created and before any users begin using the file. Consider the case of setting an initial serial number.

If a file is opened exclusively, and a PUTHDR() call updates a file attribute (such as the next serial number) under transaction control, and the file is closed and then reopened in shared mode before the transaction is committed or aborted, the following scenarios could apply:

  1. Prior to this change, the reopen would fail with FNOP_ERR (12) / FCNF_COD (-8);
  2. With this change the reopen succeeds, however, other users still see the file opened exclusively until the transaction is committed or aborted.

With the introduction of this open modification, other shared open attempts fail with FNOP_ERR (12) / FCNF_COD (-8) as if the file was still in exclusive mode. Once the transaction is completed (commit or abort), then other shared opens behave as expected.

TOCIndex