Product Documentation

V11.5 Release Notes

Previous Topic

Next Topic

Node split in transaction-controlled index file could cause error

A node split in a transaction-controlled index file that did not allow duplicates could cause the key to not be retrievable due to a performance optimization that was first implemented in c-treeACE V10.4. In very rare circumstances, when this optimization is active (V10.4 and newer) updating a record could fail if a number of obscure conditions are true. A specific key update failing with error 4 on a transaction-controlled index file is a symptom of this issue, or an EQLREC() or EQLKEY() could fail to find a key in the index even though it existed.

This problem is less likely to occur in V11 because of an additional optimization, which adds a check during node split that causes the node to be cleaned up when a large number of key marks exists in the node that is going to be split.

Workaround: Add COMPATIBILITY NO_UPDMARKS to ctsrvr.cfg and restart FairCom Server is a field workaround for this issue as it disables this optimization.

The logic has been modified to correct this situation.

TOCIndex