tibemsd.conf Parameters

The following table describes the tibemsd.conf parameters that are specific to FTL stores, unsupported with FTL stores, or which behave differently when used with FTL stores.

Parameter Name Description
Parameters Specific to FTL Stores
in_memory_replication

When enabled, data will be replicated to all EMS servers in the cluster, but will not be persisted to disk.

Enabling this parameter will enhance the performance of FTL stores at the cost of disk persistence.

See In-Memory Replication for more information.

ftl_auto_transport

Specifies whether the FTL server cluster transport type is Auto or DTCP (Dynamic TCP).

ftl_auto_transport = enabled | disabled

The transport will be Auto when enabled, DTCP otherwise. Defaults to enabled (Auto). Applies to both sites in an FTL disaster recovery setup. Modifying this parameter requires restarting all FTL servers involved.

ftl_disk_preallocation

This parameter reserves disk space for the FTL persistence underlying FTL stores. The value should be specified units of MB or GB.

For example:

ftl_disk_preallocation = 20GB

This option should be considered if the FTL stores deployment experiences performance issues when there is a large pending message backlog.

This option is not applicable if
in_memory_persistence
is enabled.

ftl_spin

Specifies whether FTL spinning, which governs the blocking behavior of threads when waiting for FTL message data to arrive, is enabled or not.

ftl_spin = enabled | disabled

Defaults to enabled. Disabling it reduces CPU consumption drastically in low message rate scenarios but can result in a significant reduction of performance. Modifying this parameter requires restarting all FTL servers involved.

Parameters With Differing Behavior for FTL Stores
max_client_msg_size When using FTL stores, the default value of this parameter is set to 10 MB instead of being unbounded. Even though the maximum possible value is still 2 GB, we recommend that application programs use much smaller messages, since larger messages will strain the performance limits of most current hardware and operating system platforms.
server_heartbeat_server

server_timeout_server_connection
When using FTL stores, these parameters only affect server-to-server route connections. They have no effect on the behavior of fault-tolerance. The specifics of fault-tolerance are handled directly by FTL.
Parameters Unsupported for FTL Stores
All parameters with prefix ft_ aside from ft_reconnect_timeout

In general, any parameters that configure fault-tolerance between EMS servers are ignored when using FTL stores. The specifics of fault-tolerance are handled directly by FTL.

This means that all parameters that begin with the prefix ft_ are ignored if a server is using FTL stores, with the one exception being the ft_reconnect_timeout parameter which is still honored.

listen

This parameter is ignored when present in the EMS server configuration.

The EMS server listen URLs must be configured via the -listens parameter in the FTL server YAML configuration.

license

This parameter may cause unexpected behavior if present in the EMS server configuration.

The -license parameter in the FTL server YAML configuration must be used to configure the location of the EMS server's license.

module_path

When using FTL stores, this parameter cannot be used to specify the FTL shared libraries to be loaded by the EMS server. The EMS server will always load the FTL shared libraries corresponding to the hosting FTL server.

store

This parameter may cause unexpected behavior if present in the EMS server configuration.

The location of the FTL store data must be configured via the -store parameter in the FTL server YAML configuration.

monitor_listen
health_check_listen
(deprecated)

This parameter may cause unexpected behavior if present in the EMS server configuration.

The monitor_listen parameter in the FTL server YAML configuration must be used to configure the port on which the EMS server listens for health check and Prometheus metrics requests.

logfile
log_trace
logfile_max_count
logfile_max_size
When using FTL stores, the EMS server log file should not be configured. See the Logging With FTL Stores section for details on setting up FTL server logging.
secondary_logfile
secondary_monitor_listen
secondary_health_check_listen
(deprecated)

These parameters are ignored when present in the EMS server configuration.

When using FTL stores, the EMS server roles are implicit. Since these parameters are only valid when the secondary role is explicitly defined, they are unsupported for FTL stores.