The xSQL configuration file can be used to define eXtremeDB Transaction Logging parameters corresponding to the C API
mco_TL_start_data_t
structure.For an overview see page Configuration File Parameters
The
tl_params
section consists of a set of "name : value" pairs enclosed within braces. For example:tl_params : { flags : [crc, iterable], log_path : "my.log", ... }The following table lists the possible options for the
tl_params
section with the corresponding C API structures and values specified in the comment:
Option name : example value Comment flags : [crc, iterable], Transaction log flags (
mco_TL_start_data::flags
). Combination of
crc
(MCO_TRANSLOG_CRC
) and
iterable
(MCO_TRANSLOG_ITERABLE
)
MCO_TRANSLOG_APPEND
,MCO_TRANSLOG_SIZE_CLBK
,MCO_TRANSLOG_SYNC_INSTANTLY
andMCO_TRANSLOG_SYNC_COUNT
are enabled automatically (see below)Default value
0
log_path : "my.log", Path to logfile
. Required, no default value.snapshot_path : "my.img", Path to saved image used by mco_translog_db_save()
. Not required, but if not set, themco_translog_db_save()
API cannot be calleddisk_page_size : 4096, Size of single disk page in bytes ( mco_TL_start_data::disk_page_size
). Default value 4096flush_depth : 10, Maximum count of records not flushed (
mco_TL_start_data::flush_depth
).If set to 0, don't flush. If set to 1, the
MCO_TRANSLOG_SYNC_INSTANTLY
flag is automatically set. If > 1,MCO_TRANSLOG_SYNC_COUNT
flag is automatically setDefault value
0
(no flushing)max_size : 1m, Max size of log file in bytes. When the limit is reached the
mco_translog_db_save()
is automatically called. It saves a database image and truncates the log file. Parametersnapshot_path
is required whenmax_size
> 0Default value
0
(no limit)snapshot_period : 5000, Period in milliseconds to automatically call
mco_translog_db_save()
.This function saves a database image and truncates the log file. Parameter
snapshot_path
is required whensnapshot_period
> 0Can be used together with
max_size
Default value
0
(don't snapshot periodically)apply : auto, Whether to apply saved TL files when the xSQL is started. Possible values are:
yes
- do apply (mco_db_load(snapshot_path) + mco_translog_apply(log_path)
). If files do not exist or another error occurs, don't start xSQL
no
- don't apply TL, just create the database with specified parameters
auto
- apply TL ifsnapshot_path
andlog_path
files existDefault value
auto
stopped : false, Boolean parameter, if
true
then TL is not started automatically (but is configured)Default value
false