Compatibility keywords are frequently used to provide extended "non-standard" FairCom DB behavior or backward compatibility with previous behaviors as server functionalities are changed. Typically, these keywords should only be used under the specific advice of a FairCom engineer as they may negatively impact the functionality of your application. Frequently, these keywords are used as the result of a required change in server behavior resulting in incompatibility with legacy applications. Please don't hesitate to contact your nearest FairCom office should you have any questions regarding use of any of these keywords.
WARNING: The keywords in this section should be used ONLY on the advice of your application developer. They can seriously alter the operation of the FairCom DB Server.
COMPATIBILITY 6BTRAN_NOT_DEFAULT
Affects six-byte transaction number support.
Disable “deferred close” capability.
Causes sysiocod to be set to BTNO_COD (-844) on calls to BATSETX()/BATSET() that result in the current batch being closed.
Reverts to this prior behavior of the order that keys returned with BATSET() called with BAT_RET_KEY
COMPATIBILITY BLOCK_DDSFM_CREATE and BLOCK_DDSFM_DELETE
Blocks superfile member creation and deletion during a dynamic dump.
For compatibility with versions prior to V8, reverts the behavior of treating CT_CHAR fields as signed, one-byte integers.
COMPATIBILITY CHECKPOINT_OVERLAP
Reverts a change to the checkpoint logic causes checkpoint requests to wait for the completion of an in-process checkpoint before beginning even flushing operations.
Forces all checkpoints but the final checkpoint to use a single system call to flush file system buffers instead of individual calls for each file to ctsave().
COMPATIBILITY CHKPNT_MUTEX_REL
Forces transaction related mutexes to be released just before the checkpoint is written to disk instead of after. For FairCom internal use only.
Reverts to behavior in which low-level commands were allowed to close files opened with ISAM-level opens.
Allows the file blocker to have the file open at the time of the unblock call.
Sets the default base value to add to the SERVER_NAME ASCII sum for determining the TCP/IP port number.
Forces FairCom DB to use custom reader/writer lock support instead of Windows' reader/writer lock support even if the Windows system supports reader/writer locks.
Disables changes that (a) avoid retries when the node holds the desired buffer and (b) skip the queue and directly request the holding semaphore. For internal FairCom testing only.
COMPATIBILITY DISABLE_BACKGROUND_CLEANUP
Disables attempts to do routine optimization of index nodes as they are flushed to disk by background index flush.
Forces the index corrupt flag to be set for a DUPJ_ERR.
Reverts to the original 128-bit master key usage for encryption.
Reverts to prior behavior in which ESTKEY() returned the estimate to within 1/10 percent.
COMPATIBILITY EXACT_FILE_NAMES
Forces different references to the same file to use the same names.
COMPATIBILITY EXTENDED_TRAN_ONLY
Forces a R6BT_ERR (745) on an attempt to create or open a non-extended-transaction-number file.
Restores behavior of a failed write operation for transaction-controlled files terminating the server (or stand-alone application) with error L60 (ctcatend).
COMPATIBILITY FILE_CREATE_CHECKPOINT
Restores the old behavior of generating a checkpoint if a TRNLOG (but not TRANDEP) file is about to be deleted or renamed after a file, any file, is created but with no intervening checkpoint.
COMPATIBILITY FILE_DESCRIPTOR_LIMIT
Overrides the behavior described in FILES in case it is not convenient for a system administrator to set the file descriptor limit for the FairCom Server process to the required value or it is not desired to decrease the FILES or CONNECTIONS settings. This keyword is provided for backward compatibility or short-term use only - Other use is not recommended.
Reverts a change that increased the rate at which an array grows by doubling in size up to 2 thousand files.
Eliminates the lflsema SHORTWAIT loop, and uses a call with the WAIT parameter. For internal FairCom use only.
Replaces the commit delay ct_udefer() call with a loop that permits the "prime" cohort to periodically wake up, after a much smaller defer time, and check for commit delay progress. For internal FairCom use only.
Allows c-tree attempts to lock all data and index cache pages into physical memory, using the mlock() function on Unix systems. Currently disabled.
Restores the use of lock table entries for header calls that acquire the header semaphore.
Reverts to the original 128-bit master key usage for log encryption.
Restores the original PUTHDR() behavior, which was changed such that on commit, the header value is not reset to the new value.
COMPATIBILITY MEMORY_FILE_SKIP_FREE
Skips the free of memory at server shutdown for the individual memory records for memory files still open and assume that the server termination will (automatically) return the memory to the system.
Legacy V7 backward compatibility option that enforces system or user memory limits.
COMPATIBILITY MINIMUM_INDEX_BUFFERS
Restore the old behavior of increasing the number of index buffers to the required amount.
Legacy option to ensure proper statistics on multiple-processor hardware.
Reverts the change in which a state variable is set so that an attempt to evaluate an address expression based on a DODA field will return an error instead of crashing the server.
Reverts the behavior concerning indexes' TRANDEP/RSTRDEL attributes during a rebuild or compact call without XCREblk support.
Disables support for treating TRANDEP files as though SKIP_MISSING_FILES is turned on.
Restores the behavior prior to V11 when fixed-length compressed records were returned as variable-length records.
Disables the ADMIN ability to kill currently connected clients.
Reverts to the behavior before 2002 when the ADDREC() routine checks to see if a record begins with either a delete flag (0xFF) or a resource mark (0xFEFE).
Reverts to the original behavior to address the situation where names may have been truncated but no conflicts arose and would now get error SNAM_ERR at create time.
Reverts to the behavior of the recovery process, which was modified such that a CLSTRAN log entry will attempt to open the file (if it is not already opened).
COMPATIBILITY NO_COMMIT_READ_LOCK
Disables commit read lock support for backward compatibility.
COMPATIBILITY NO_DATAMAP_CHECK
Disables the check for mapping to the same data file as the currently-mapped file.
COMPATIBILITY NO_FIXED_OFFSET_CHECK
Disabled a feature that prevents attempts to write to arbitrary offsets in a fixed-length file.
Reverts to the old behavior which does not force the flushing of metadata to disk immediately after creates, renames, and deletes of transaction log files and transaction-dependent files.
COMPATIBILITY NO_IDFIELD_OVERFLOW_CONVERSION
Disables automatic conversion of the IDfield resource.
COMPATIBILITY NO_IDFIELD_OVERFLOW_DETECTION
Causes all tests for IDfield overflow/underflow to be ignored.
Reverts the behavior introduced in V8.14 concerning new space reserved at the end of a variable-length file and the entry that marked the preimage space as deleted if the transaction was aborted.
COMPATIBILITY NO_KEEP_OUT_TRNSEQ
Reverts behavior that allows TRANEND() to distinguish between a lock obtained within a prior transaction, and a lock obtained in its own transaction.
Disables the new approach that immediately detects when all the key-level locks belong to the calling thread, and returns without checking each of the key-level locks enhancing performance. For internal FairCom testing only.
Disables the new behavior of the cleanup routine that only performs the clean up necessary to satisfy the NXTKEY() operation. For internal FairCom testing only.
Disables a check for removing an updated buffer from the update list during a checkpoint was enabled.
COMPATIBILITY NO_REPL_DEFER_TRAN
Disables optimization that avoids sending transactions to a Replication Agent that did not replicate the files in that transaction.
COMPATIBILITY NO_SHUTDOWN_DELAY
Forces an instant shutdown without pause for client disconnect.
COMPATIBILITY NO_SIGNAL_HANDLER
Forces the server to skip the installation of signal handlers at server startup.
Disables support to enable a ctsave() call to skip the file system sync if no bytes have been written since the last call to ctsave().
Disables a dedicated background thread performs the space reclamation on deleted member files of a Superfile and recovered variable-length data files.
COMPATIBILITY NO_SYS_FLUSH_ON_CLOSE
Disables extra protection that causes a system cache flush before physically closing transaction logged files or write-through files.
Turns off the check of whether a file is local or remote.
COMPATIBILITY NO_TRAN_DISCONNECT
Disables support for the server disconnecting the client associated with the transaction if the need for more logs is caused by a pending transaction,
Disables additional transaction log pre-scanning done for improved handling of transaction-dependent file renames and deletes.
Disables attempts to determine if files accessed with different file names (or paths) and identical FairCom DB file IDs are the same file or different files.
Disables logic that attempts to extend the physical file size and retry growing the record in place when the growth would exceed the PEOF.
COMPATIBILITY NO_VARLEN_TRAN_UNUSED
Reverts to the previous differentiated behavior in which space reclamation for TRANPROC and non-TRANPROC files is treated differently.
COMPATIBILITY NONADMIN_DYNDUMP
Allows all users (including non-admin) to perform a dynamic dump.
COMPATIBILITY NONADMIN_REPL
Disabled for security reasons. Allowed all users (including non-admin) to read transaction log entries via replication.
COMPATIBILITY NONADMIN_TRNHIST
Allows all users (including non-admin) to read transaction log histories.
Used in conjunction with the tamper-proof settings file to block keyword from being used in a subsequent stage of configuration loading.
Restores the previous behavior of opening the files with read/write share access.
Disables the PUTHDR() behavior of creating pre-image space entries, restoring old value on abort, setting the new value at the time of the call, except that on commit the header value is not reset to the new value.
Disables the default of using NXTKEY() instead of GTKEY() to skip over records that do not meet range and/or filter criteria during range operations.
COMPATIBILITY REPLICATION_TRAN_LIST
Makes the checkpoint's beginning-log-position-list for active transactions included in checkpoints.
Reverts to the V6 mode of only enabling extended headers for all newly created files with calls from an Xtd8 specific function and defining the XCREblk structure.
COMPATIBILITY REWRITE_KEY_ERROR
Disables the new behavior of the rewrite routines returning an error on a failed key assembly by default.
Reverts to the previous approach of using a loop that repeatedly attempts to update the abort node list, once for each key-level lock in the node. For internal FairCom testing only.
Forces FairCom DB to disable the reclamation of unused space management indexes with VLENGTH, TRNLOG data files
Forces FairCom DB to ignore the LOCAL_DIRECTORY configuration for stream files.
DEPRECATED - Instructs the FairCom DB Server to open its transaction logs in synchronous write (direct I/O on Solaris) mode. See COMPATIBILITY LOG_WRITETHRU.
COMPATIBILITY TCPIP_CHECK_DEAD_CLIENTS
Causes the FairCom DB Server detects when a TCP/IP client has dropped.
COMPATIBILITY TEMP_INDEX_ERROR
Disables behavior of ignoring a KDUP_ERR on a temp index and setting sysiocod to IDUP_COD (-837). Also affects temporary index behavior for ITIM_ERR on record reads and KDEL_ERR on record deletes.
Changes the default method of executing toupper() by optionally using CharUpper() on the Windows operating system.
Legacy option that controls whether or not to use old logon connection approach.
Re-establishes the old behavior of simply reporting the error (and abandoning a NEWVREC() operation) when a space-management index entry does not point to available space in a variable-length file.