pgpool2.git / summary / log / commit / refs

commit    4bd9eeac315f6499ffed149bf342415a2d285645
Author:   Nozomi Anzai <anzai@sraoss.co.jp>
Date:     Wed May 30 02:02:09 2012 +0000

    Add params to the result of "SHOW pool_status": backend_data_directory, ssl_ca_cert, ssl_ca_cert_dir,
    and sort by orders in pgpool.conf.


pool_process_reporting.c | 387 ++++++++++++++++++++++++++--------------------- 1 file changed, 214 insertions(+), 173 deletions(-) diff --git a/pool_process_reporting.c b/pool_process_reporting.c index 63c19b924..1f5148be7 100644 --- a/pool_process_reporting.c +++ b/pool_process_reporting.c @@ -153,6 +153,9 @@ POOL_REPORT_CONFIG* get_config(int *nrows) i = 0; + /* CONNECTIONS */ + + /* - pgpool Connection Settings - */ strncpy(status[i].name, "listen_addresses", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->listen_addresses); strncpy(status[i].desc, "host name(s) or IP address(es) to listen to", POOLCONFIG_MAXDESCLEN); @@ -163,21 +166,83 @@ POOL_REPORT_CONFIG* get_config(int *nrows) strncpy(status[i].desc, "pgpool accepting port number", POOLCONFIG_MAXDESCLEN); i++; + /* - pgpool Communication Manager Connection Settings - */ strncpy(status[i].name, "socket_dir", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->socket_dir); strncpy(status[i].desc, "pgpool socket directory", POOLCONFIG_MAXDESCLEN); i++; + strncpy(status[i].name, "pcp_port", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->pcp_port); + strncpy(status[i].desc, "PCP port # to bind", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "pcp_socket_dir", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->pcp_socket_dir); + strncpy(status[i].desc, "PCP socket directory", POOLCONFIG_MAXDESCLEN); + i++; + + /* # - Authentication - */ + strncpy(status[i].name, "enable_pool_hba", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->enable_pool_hba); + strncpy(status[i].desc, "if true, use pool_hba.conf for client authentication", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "authentication_timeout", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->authentication_timeout); + strncpy(status[i].desc, "maximum time in seconds to complete client authentication", POOLCONFIG_MAXNAMELEN); + i++; + + /* - SSL Connections - */ + strncpy(status[i].name, "ssl", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->ssl); + strncpy(status[i].desc, "SSL support", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "ssl_key", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->ssl_key); + strncpy(status[i].desc, "path to the SSL private key file", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "ssl_cert", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->ssl_cert); + strncpy(status[i].desc, "path to the SSL public certificate file", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "ssl_ca_cert", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->ssl_ca_cert); + strncpy(status[i].desc, "path to a single PEM format file", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "ssl_ca_cert_dir", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->ssl_ca_cert_dir); + strncpy(status[i].desc, "directory containing CA root certificate(s)", POOLCONFIG_MAXDESCLEN); + i++; + + /* POOLS */ + + /* - Pool size - */ strncpy(status[i].name, "num_init_children", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->num_init_children); strncpy(status[i].desc, "# of children initially pre-forked", POOLCONFIG_MAXDESCLEN); i++; + strncpy(status[i].name, "max_pool", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->max_pool); + strncpy(status[i].desc, "max # of connection pool per child", POOLCONFIG_MAXDESCLEN); + i++; + + /* - Life time - */ strncpy(status[i].name, "child_life_time", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->child_life_time); strncpy(status[i].desc, "if idle for this seconds, child exits", POOLCONFIG_MAXDESCLEN); i++; + strncpy(status[i].name, "child_max_connections", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->child_max_connections); + strncpy(status[i].desc, "if max_connections received, chile exits", POOLCONFIG_MAXDESCLEN); + i++; + strncpy(status[i].name, "connection_life_time", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->connection_life_time); strncpy(status[i].desc, "if idle for this seconds, connection closes", POOLCONFIG_MAXDESCLEN); @@ -188,31 +253,46 @@ POOL_REPORT_CONFIG* get_config(int *nrows) strncpy(status[i].desc, "if idle for this seconds, child connection closes", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "child_max_connections", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->child_max_connections); - strncpy(status[i].desc, "if max_connections received, chile exits", POOLCONFIG_MAXDESCLEN); + /* LOGS */ + + /* - Where to log - */ + strncpy(status[i].name, "log_destination", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->log_destination); + strncpy(status[i].desc, "logging destination", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "max_pool", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->max_pool); - strncpy(status[i].desc, "max # of connection pool per child", POOLCONFIG_MAXDESCLEN); + /* - What to log - */ + strncpy(status[i].name, "print_timestamp", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->print_timestamp); + strncpy(status[i].desc, "if true print time stamp to each log line", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "authentication_timeout", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->authentication_timeout); - strncpy(status[i].desc, "maximum time in seconds to complete client authentication", POOLCONFIG_MAXNAMELEN); + strncpy(status[i].name, "log_connections", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->log_connections); + strncpy(status[i].desc, "if true, print incoming connections to the log", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "logdir", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->logdir); - strncpy(status[i].desc, "PgPool status file logging directory", POOLCONFIG_MAXDESCLEN); + strncpy(status[i].name, "log_hostname", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->log_hostname); + strncpy(status[i].desc, "if true, resolve hostname for ps and log print", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "log_destination", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->log_destination); - strncpy(status[i].desc, "logging destination", POOLCONFIG_MAXDESCLEN); + strncpy(status[i].name, "log_statement", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->log_statement); + strncpy(status[i].desc, "if non 0, logs all SQL statements", POOLCONFIG_MAXDESCLEN); i++; + strncpy(status[i].name, "log_per_node_statement", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->log_per_node_statement); + strncpy(status[i].desc, "if non 0, logs all SQL statements on each node", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "log_standby_delay", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->log_standby_delay); + strncpy(status[i].desc, "how to log standby delay", POOLCONFIG_MAXDESCLEN); + i++; + + /* - Syslog specific - */ strncpy(status[i].name, "syslog_facility", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "LOCAL%d", (pool_config->syslog_facility/8) - 16); strncpy(status[i].desc, "syslog local faclity", POOLCONFIG_MAXDESCLEN); @@ -223,29 +303,67 @@ POOL_REPORT_CONFIG* get_config(int *nrows) strncpy(status[i].desc, "syslog program ident string", POOLCONFIG_MAXDESCLEN); i++; + /* - Debug - */ + strncpy(status[i].name, "debug_level", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->debug_level); + strncpy(status[i].desc, "debug message level", POOLCONFIG_MAXDESCLEN); + i++; + + /* FILE LOCATIONS */ + strncpy(status[i].name, "pid_file_name", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->pid_file_name); strncpy(status[i].desc, "path to pid file", POOLCONFIG_MAXDESCLEN); i++; - /* backend_socket_dir is deprecated. backend_hostname should be used instead */ - if (pool_config->backend_socket_dir != NULL) { - strncpy(status[i].name, "backend_socket_dir", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->backend_socket_dir); - strncpy(status[i].desc, "DEPRECATED, use backend_hostname parameter instead", POOLCONFIG_MAXDESCLEN); - i++; + strncpy(status[i].name, "logdir", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->logdir); + strncpy(status[i].desc, "PgPool status file logging directory", POOLCONFIG_MAXDESCLEN); + i++; + + /* CONNECTION POOLING */ + + strncpy(status[i].name, "connection_cache", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->connection_cache); + strncpy(status[i].desc, "if true, cache connection pool", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "reset_query_list", POOLCONFIG_MAXNAMELEN); + *(status[i].value) = '\0'; + for (j=0;j<pool_config->num_reset_queries;j++) + { + len = POOLCONFIG_MAXVALLEN - strlen(status[i].value); + strncat(status[i].value, pool_config->reset_query_list[j], len); + len = POOLCONFIG_MAXVALLEN - strlen(status[i].value); + if (j != pool_config->num_reset_queries-1) + strncat(status[i].value, ";", len); } + strncpy(status[i].desc, "queries issued at the end of session", POOLCONFIG_MAXDESCLEN); + i++; + + /* REPLICATION MODE */ strncpy(status[i].name, "replication_mode", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->replication_mode); strncpy(status[i].desc, "non 0 if operating in replication mode", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "load_balance_mode", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->load_balance_mode); - strncpy(status[i].desc, "non 0 if operating in load balancing mode", POOLCONFIG_MAXDESCLEN); + strncpy(status[i].name, "replicate_select", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->replicate_select); + strncpy(status[i].desc, "non 0 if SELECT statement is replicated", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "insert_lock", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->insert_lock); + strncpy(status[i].desc, "insert lock", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "lobj_lock_table", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->lobj_lock_table); + strncpy(status[i].desc, "table name used for large object replication control", POOLCONFIG_MAXDESCLEN); i++; + /* - Degenerate handling - */ strncpy(status[i].name, "replication_stop_on_mismatch", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->replication_stop_on_mismatch); strncpy(status[i].desc, "stop replication mode on fatal error", POOLCONFIG_MAXDESCLEN); @@ -256,22 +374,16 @@ POOL_REPORT_CONFIG* get_config(int *nrows) strncpy(status[i].desc, "failover if affected tuples are mismatch", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "replicate_select", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->replicate_select); - strncpy(status[i].desc, "non 0 if SELECT statement is replicated", POOLCONFIG_MAXDESCLEN); + /* LOAD BALANCING MODE */ + + strncpy(status[i].name, "load_balance_mode", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->load_balance_mode); + strncpy(status[i].desc, "non 0 if operating in load balancing mode", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "reset_query_list", POOLCONFIG_MAXNAMELEN); - *(status[i].value) = '\0'; - for (j=0;j<pool_config->num_reset_queries;j++) - { - len = POOLCONFIG_MAXVALLEN - strlen(status[i].value); - strncat(status[i].value, pool_config->reset_query_list[j], len); - len = POOLCONFIG_MAXVALLEN - strlen(status[i].value); - if (j != pool_config->num_reset_queries-1) - strncat(status[i].value, ";", len); - } - strncpy(status[i].desc, "queries issued at the end of session", POOLCONFIG_MAXDESCLEN); + strncpy(status[i].name, "ignore_leading_white_space", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->ignore_leading_white_space); + strncpy(status[i].desc, "ignore leading white spaces", POOLCONFIG_MAXDESCLEN); i++; strncpy(status[i].name, "white_function_list", POOLCONFIG_MAXNAMELEN); @@ -300,10 +412,7 @@ POOL_REPORT_CONFIG* get_config(int *nrows) strncpy(status[i].desc, "functions those write to database", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "print_timestamp", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->print_timestamp); - strncpy(status[i].desc, "if true print time stamp to each log line", POOLCONFIG_MAXDESCLEN); - i++; + /* MASTER/SLAVE MODE */ strncpy(status[i].name, "master_slave_mode", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->master_slave_mode); @@ -315,6 +424,7 @@ POOL_REPORT_CONFIG* get_config(int *nrows) strncpy(status[i].desc, "master/slave sub mode", POOLCONFIG_MAXDESCLEN); i++; + /* - Streaming - */ strncpy(status[i].name, "sr_check_period", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->sr_check_period); strncpy(status[i].desc, "sr check period", POOLCONFIG_MAXDESCLEN); @@ -335,26 +445,67 @@ POOL_REPORT_CONFIG* get_config(int *nrows) strncpy(status[i].desc, "standby delay threshold", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "log_standby_delay", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->log_standby_delay); - strncpy(status[i].desc, "how to log standby delay", POOLCONFIG_MAXDESCLEN); + /* - Special commands - */ + strncpy(status[i].name, "follow_master_command", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->follow_master_command); + strncpy(status[i].desc, "follow master command", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "connection_cache", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->connection_cache); - strncpy(status[i].desc, "if true, cache connection pool", POOLCONFIG_MAXDESCLEN); + /* PARALLEL MODE AND QUERY CACHE */ + + strncpy(status[i].name, "parallel_mode", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->parallel_mode); + strncpy(status[i].desc, "if non 0, run in parallel query mode", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "health_check_timeout", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->health_check_timeout); - strncpy(status[i].desc, "health check timeout", POOLCONFIG_MAXDESCLEN); + strncpy(status[i].name, "enable_query_cache", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->enable_query_cache); + strncpy(status[i].desc, "if non 0, use query cache", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "pgpool2_hostname", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->pgpool2_hostname); + strncpy(status[i].desc, "pgpool2 hostname", POOLCONFIG_MAXDESCLEN); + i++; + + /* - System DB info - */ + strncpy(status[i].name, "system_db_hostname", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->system_db_hostname); + strncpy(status[i].desc, "system DB hostname", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "system_db_port", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->system_db_port); + strncpy(status[i].desc, "system DB port number", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "system_db_dbname", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->system_db_dbname); + strncpy(status[i].desc, "system DB name", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "system_db_schema", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->system_db_schema); + strncpy(status[i].desc, "system DB schema name", POOLCONFIG_MAXDESCLEN); + i++; + + strncpy(status[i].name, "system_db_user", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->system_db_user); + strncpy(status[i].desc, "user name to access system DB", POOLCONFIG_MAXDESCLEN); i++; + /* HEALTH CHECK */ + strncpy(status[i].name, "health_check_period", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->health_check_period); strncpy(status[i].desc, "health check period", POOLCONFIG_MAXDESCLEN); i++; + strncpy(status[i].name, "health_check_timeout", POOLCONFIG_MAXNAMELEN); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->health_check_timeout); + strncpy(status[i].desc, "health check timeout", POOLCONFIG_MAXDESCLEN); + i++; + strncpy(status[i].name, "health_check_user", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->health_check_user); strncpy(status[i].desc, "health check user", POOLCONFIG_MAXDESCLEN); @@ -375,16 +526,13 @@ POOL_REPORT_CONFIG* get_config(int *nrows) strncpy(status[i].desc, "health check retry delay", POOLCONFIG_MAXDESCLEN); i++; + /* FAILOVER AND FAILBACK */ + strncpy(status[i].name, "failover_command", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->failover_command); strncpy(status[i].desc, "failover command", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "follow_master_command", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->follow_master_command); - strncpy(status[i].desc, "follow master command", POOLCONFIG_MAXDESCLEN); - i++; - strncpy(status[i].name, "failback_command", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->failback_command); strncpy(status[i].desc, "failback command", POOLCONFIG_MAXDESCLEN); @@ -395,60 +543,7 @@ POOL_REPORT_CONFIG* get_config(int *nrows) strncpy(status[i].desc, "fail over on backend error", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "insert_lock", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->insert_lock); - strncpy(status[i].desc, "insert lock", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "ignore_leading_white_space", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->ignore_leading_white_space); - strncpy(status[i].desc, "ignore leading white spaces", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "num_reset_queries", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->num_reset_queries); - strncpy(status[i].desc, "number of queries in reset_query_list", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "pcp_port", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->pcp_port); - strncpy(status[i].desc, "PCP port # to bind", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "pcp_socket_dir", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->pcp_socket_dir); - strncpy(status[i].desc, "PCP socket directory", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "pcp_timeout", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->pcp_timeout); - strncpy(status[i].desc, "PCP timeout for an idle client", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "log_statement", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->log_statement); - strncpy(status[i].desc, "if non 0, logs all SQL statements", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "log_per_node_statement", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->log_per_node_statement); - strncpy(status[i].desc, "if non 0, logs all SQL statements on each node", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "log_connections", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->log_connections); - strncpy(status[i].desc, "if true, print incoming connections to the log", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "log_hostname", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->log_hostname); - strncpy(status[i].desc, "if true, resolve hostname for ps and log print", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "enable_pool_hba", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->enable_pool_hba); - strncpy(status[i].desc, "if true, use pool_hba.conf for client authentication", POOLCONFIG_MAXDESCLEN); - i++; + /* ONLINE RECOVERY */ strncpy(status[i].name, "recovery_user", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->recovery_user); @@ -475,75 +570,14 @@ POOL_REPORT_CONFIG* get_config(int *nrows) strncpy(status[i].desc, "if idle for this seconds, child connection closes in recovery 2nd statge", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "lobj_lock_table", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->lobj_lock_table); - strncpy(status[i].desc, "table name used for large object replication control", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "ssl", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->ssl); - strncpy(status[i].desc, "SSL support", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "ssl_key", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->ssl_key); - strncpy(status[i].desc, "path to the SSL private key file", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "ssl_cert", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->ssl_cert); - strncpy(status[i].desc, "path to the SSL public certificate file", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "debug_level", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->debug_level); - strncpy(status[i].desc, "debug message level", POOLCONFIG_MAXDESCLEN); - i++; + /* OTHERS */ strncpy(status[i].name, "relcache_expire", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%ld", pool_config->relcache_expire); strncpy(status[i].desc, "relation cache expiration time in seconds", POOLCONFIG_MAXDESCLEN); i++; - strncpy(status[i].name, "parallel_mode", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->parallel_mode); - strncpy(status[i].desc, "if non 0, run in parallel query mode", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "enable_query_cache", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->enable_query_cache); - strncpy(status[i].desc, "if non 0, use query cache", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "pgpool2_hostname", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->pgpool2_hostname); - strncpy(status[i].desc, "pgpool2 hostname", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "system_db_hostname", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->system_db_hostname); - strncpy(status[i].desc, "system DB hostname", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "system_db_port", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->system_db_port); - strncpy(status[i].desc, "system DB port number", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "system_db_dbname", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->system_db_dbname); - strncpy(status[i].desc, "system DB name", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "system_db_schema", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->system_db_schema); - strncpy(status[i].desc, "system DB schema name", POOLCONFIG_MAXDESCLEN); - i++; - - strncpy(status[i].name, "system_db_user", POOLCONFIG_MAXNAMELEN); - snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", pool_config->system_db_user); - strncpy(status[i].desc, "user name to access system DB", POOLCONFIG_MAXDESCLEN); - i++; + /* ON MEMORY QUERY MEMORY CACHE */ strncpy(status[i].name, "memory_cache_enabled", POOLCONFIG_MAXNAMELEN); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", pool_config->memory_cache_enabled); @@ -641,6 +675,8 @@ POOL_REPORT_CONFIG* get_config(int *nrows) strncpy(status[i].desc, "tables not to memqcache", POOLCONFIG_MAXDESCLEN); i++; + /* BACKENDS */ + for (j = 0; j < NUM_BACKENDS; j++) { if (BACKEND_INFO(j).backend_port == 0) @@ -661,6 +697,11 @@ POOL_REPORT_CONFIG* get_config(int *nrows) snprintf(status[i].desc, POOLCONFIG_MAXDESCLEN, "weight of backend #%d", j); i++; + snprintf(status[i].name, POOLCONFIG_MAXNAMELEN, "backend_data_directory%d", j); + snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%s", BACKEND_INFO(j).backend_data_directory); + snprintf(status[i].desc, POOLCONFIG_MAXDESCLEN, "data directory for backend #%d", j); + i++; + snprintf(status[i].name, POOLCONFIG_MAXNAMELEN, "backend_status%d", j); snprintf(status[i].value, POOLCONFIG_MAXVALLEN, "%d", BACKEND_INFO(j).backend_status); snprintf(status[i].desc, POOLCONFIG_MAXDESCLEN, "status of backend #%d", j); [parent: 1e47d46b7cca]