Operating Condition
Syntax: SET COMPATIB ON/OFF
Default: ON
Compatibility with R:BASE Transactions
SET COMPATIB toggles COMPATIBILITY with R:BASE transactions on and off.
The first "compatibility" setting in R:BASE goes back to the 3.1 versions where it was used to allow concurrent access to a database from both 3.1 and 2.11 at the same time. Remember that database files back then were still "rbf" files. Once we went to the "rb1,rb2,..." files the setting was obsolete.
In 1997 when Oterro was first released, it supported a different scheme for managing transactions (when TRANSACTIONS are set on) than R:BASE itself used at that time. This new scheme used a different file to track transactions and had a larger allocated buffer size on the file to manage ongoing transactions. To make R:BASE compatible with Oterro when transactions were on it needed to support the new method, but it also needed to be able to support the older style that previous versions of R:BASE used (version 6.0 and older).
The first R:BASE version that could support the two methods was 6.1. When the "compatibility" setting is on, R:BASE will use the older "non-Oterro" style of transaction. When "compatibility" is off, the Oterro method will be used. If you never run with TRANSACTIONS ON then the compatibility setting does not have any effect.