gtm_proxy

gtm_proxy — Proxy to gtm, Postgres-XL Global Transaction Manager

Synopsis

gtm_proxy [option...]

Description

The Gtm proxy provides proxy feature from Postgres-XL Coordinator and Datanode to gtm. Gtm proxy groups connections and interactions between gtm and other Postgres-XL components to reduce both the number of interactions and the size of messages. Performance tests have shown greater performance with high concurrency workloads as a result.

It is highly advised to start and stop gtm_proxy with gtm_ctl(8).

You must provide a gtm configuration file gtm_proxy.conf placed at the gtm working directory as specified by -D command line option. The configuration file specifies gtm running environment and resources.

Some of the parameters specified in the control file can be overridden by command line options.

Configuration File

GTM-Proxy configuration parameters are specified in the configuration file gtm_proxy.conf placed in the working directory specified as -D option of gtm_proxy command line option as described in the next section.

The format of the configuration file is the same as postgresql.conf. Options are as follows.

gtm_connect_retry_interval (integer)

Specifies how long in seconds GTM-Proxy waits between each retry to connect to GTM when communication error with GTM is detected. Default value is 60. Refer to gtm_connect_retry_count and gtm_connect_retry_idle.

gtm_host (string)

Specifies listen addresses (host name or IP address) of gtm. There is no default value for this parameter.

gtm_port (integer)

Specifies the port number of gtm. There is no default value for this parameter.

keepalives_count (integer)

Specifies keepalives_count option for the connection to gtm. Default value is zero and keepalives feature is disabled.

keepalives_idle (integer)

Specifies keepalives_idle option for the connection to gtm. Default value is zero and keepalives feature is disabled.

keepalives_interval (integer)

Specifies keepalives_interval option for the connection to gtm. Default value is zero and keepalives feature is disabled.

log_file (string)

Specifies log file name. This file will be created in the working directory of this gtm_proxy as specified by -D command line option. The default is gtm_proxy.log.

log_min_messages (enum)

Controls which message levels are written to the log. Valid values are DEBUG, DEBUG5, DEBUG4, DEBUG3, DEBUG2, DEBUG1, INFO, NOTICE, WARNING, ERROR, LOG, FATAL and PANIC. Each level includes all the levels that follow it. The later the level, the fewer messages are sent. The default is WARNING.

listen_addresses (string)

Specifies listen addresses (host name or IP address) of this gtm_proxy. Default value is '*'.

nodename (string)

Specifies the name of this gtm_proxy. There is no default value for this parameter.

port (integer)

Specifies the port number of this gtm_proxy. The default port value is 6666.

worker_threads (integer)

Specifies the number of worker threads for this gtm_proxy. The default value is 1.

Options

Options are specified with preceding '-', each option may be associated with a value. They can be specified in -o option of gtm_ctl(8).

Options are as follows:

D

Specify a directory which holds data for gtm_proxy

l

Specify a log file for gtm_ctl.

h

Specify host name or IP address used by the gtm_proxy.

p

Specify port number to listen on.

i

Specify gtm_proxy id, which is registered to gtm.

n

Specify number of worker threads of gtm_proxy.

s

Specify host name or IP address of target gtm.

t

Specify port number of target gtm.