Skip to content

Server-Atomic Transaction Processing

The DataFlex database driver uses NetWare's Transaction Tracking System (TTS) to support transaction control at the server. You must use a NetWare shell to make use of this feature, and TTS must be enabled in your installation of the shell. The Microsoft drivers for NetWare are not supported; only those from Novell are. Before using TTX, be sure to read the NetWare TTS documentation.

Activating TTS

To activate the TTS feature, you must set the TTSPath key in the registry to the full path under which the Visual DataFlex TTS directories can be found, as follows:

TTSPath="c:\program files\visual dataflex 9.1\bin\"

Note that the trailing backslash (\) character is required. When this is done, your application will use TTS automatically.

Benefits of Server-Based Transaction Control

Server-based transaction control permits complete backing-out of an incomplete transaction upon failure of the program or the workstation from which the transaction is being entered. This occurs automatically upon such failure. If this feature is in use, no reindexing should be required after such a failure. In fact, other workstations, even those with incomplete transactions at the time, can continue normal operations through such an event.

Source Code Requirements

Use of this feature entails no special provisions in the source code of the program being run other than those required for transaction control generally. However, it is necessary to set the DF_FILE_TRANSACTION attribute of every file involved to DF_FILE_TRANSACTION_SERVER_ATOMIC to use it. This can be done either from your program or with Database Builder.

Setting Server-Atomic Files

Setting a file to server-atomic causes the NetWare "transaction flag" to be set on the .DAT, .VLD, and .K## files. When a Visual DataFlex transaction is started, a NetWare TTS transaction-start is sent to every NetWare server on which any of these files reside. At the end of the transaction, a TTS transaction-end is sent to the same servers.

Transaction Size Limits

If a Visual DataFlex transaction exceeds the size limits imposed by your local version of TTS, the network administrator will receive a NetWare error report. The Visual DataFlex program itself, however, will function normally, but without TTS protection for such transactions.

File Deletion Restrictions

If you try to delete a TTS-flagged file through the operating system, it will stop you. You would have to reset the flag with the NetWare FLAG command before you would be able to do the deletion. If you perform such manipulations through Visual DataFlex, however, the flag will be reset as necessary to permit the desired operations.

Error Handling

If you attempt to set a file to server-atomic that is not on a TTS-capable NetWare volume, the following error will be reported:

  • Error 4288: File not on TTS volume

If a Visual DataFlex program opens a file flagged for TTS that is not on a TTS-capable volume, the same error will be reported at that time.