Runtime Options

The function mco_runtime_setoption() allows applications to control certain characteristics of the eXtremeDB runtime. The following possible values for runtime options are defined in the header file mco.h:

MCO_RT_OPTION_EXTHEAPS Enable use of custom heap management. This option has been deprecated in version 7.1. If specified, mco_runtime_setoption( MCO_RT_OPTION_EXTHEAPS, 1) will return the MCO_E_UNSUPPORTED error code.
MCO_RT_OPTION_DB_SAVE_CRC Enable CRC32 coverage of stream consistency. This option has been deprecated in version 7.1. See mco_db_load(). The CRC is always kept with a saved database image since version 7.1. Note that to preserve backward compatibility the mco_db_load() function is able to load a snapshot saved without CRC. This ability will be removed from future releases.
MCO_RT_OPTION_MARK_LAST_OBJ Use to specify that notification of ”end-of-transaction” is required. (See Transaction Logging.)
MCO_RT_CRC_ALGORITHM Specifies the CRC32 algorithm used to verify persistent database consistency.
MCO_RT_MAX_PATRICIA_DEPTH Specifies the maximum depth of a Patricia trie index before the error MCO_E_PATRICIA_TOO_DEEP is thrown. (Default value is 256.)
MCO_RT_MAX_DYNAMIC_PIPES Defines the maximum number of the PIPE_BUF type devices that can be added through mco_db_extend_dev(). (See Transaction Logging.)
MCO_RT_OPTION_CLASS_LOAD_MERGE Defines the policy when function mco_class_load() needs to merge (append) loaded objects with objects already existing in the database. The default value is 0 (delete all of objects of specified class before loading).
MCO_RT_OPTION_DATETIME_PRECISION Time resolution (precision) for datetime values: 1 - seconds, 1000 - milliseconds, 1000000 - microseconds, 1000000000 (nanoseconds).
MCO_RT_OPTION_LAST This is not an option but simply a marker to facilitate obtaining the total count of runtime options.
Unix shared memory options.
MCO_RT_OPTION_UNIX_SHM_MASK Set Unix shared memory access mode. (See “Shared Memory Runtime Options”.)
Posix shared memory options.
MCO_RT_POSIX_SHM_OPT Enable setting a combination of the following POSIX shared memory options.
MCO_RT_POSIX_SHM_ANONYMOUS Enables option MAP_ANONYMOUS of the POSIX function 'mmap' that provides mapping of virtual shared memory to a current process.
MCO_RT_POSIX_SHM_SHARED Specifies that option MAP_SHARED of the POSIX function 'mmap' will be used. Otherwise option MAP_PRIVATE is used.
Windows shared memory and synchronization primitives naming and security descriptor options.
MCO_RT_WINDOWS_SHM_OPT Enable setting a combination of the following Windows shared memory options.
MCO_RT_WINDOWS_SHM_PREFIX_GLOBAL Use global prefix. Shared objects are visible in all sessions
MCO_RT_WINDOWS_SHM_PREFIX_LOCAL Use Local prefix, Shared object are visible in current session only
MCO_RT_WINDOWS_SHM_PREFIX_SESSIONS Vista sessions fix
MCO_RT_WINDOWS_SHM_PREFIX_NONE No prefix (Default)
MCO_RT_WINDOWS_SHM_PREFIX_MASK Every one can access
MCO_RT_WINDOWS_SHM_SEC_DESCR_EMPTY Use windows default policy (Default)
MCO_RT_WINDOWS_SHM_SEC_DESCR_SAMEUSER Only the same user can access
The default Windows shared memory options combination is: MCO_RT_WINDOWS_SHM_PREFIX_NONE|MCO_RT_WINDOWS_SHM_SEC_DESCR_NULL which makes the database visible and accessible from the local session only.
MCO_RT_CRC32_NONE Do not calculate CRC
MCO_RT_CRC32 The implementation of CRC used prior to release 15523 2014-07-17
MCO_RT_CRC32_FAST Calculate the CRC only for the first and last 8-byte word of data
MCO_RT_CRC32_OLD The implementation of CRC used prior to release 12823 2013-01-28
MCO_RT_CRC32C CRC32C hardware & software implementations used after release 15523 2014-07-17