[Pgpool-general] [pgPool]

Micka mickamusset at gmail.com
Wed Feb 23 15:49:59 UTC 2011


Well,


It seems that :

http://172.17.100.12/pgpoolAdmin-3.0.2/nodeStatus.php

return a 500 internal server error.

And I think the error is here :
for ($i = 0; $i < $nodeCount; $i++) {
        echo "for $i <br>";
        if ($node_alive == false) {
          echo "node alive <br>";
                if (($isReplicationMode || $isMasterSlaveMode) &&
NodeActive($i))
                        array_push($nodeInfo[$i], 'return');
                else
                        array_push($nodeInfo[$i], 'none');
        } else if( $isParallelMode ) {
        array_push($nodeInfo[$i], 'none');
    } else {
        echo "dead node ".$nodeInfo[$i][2]."<br>";
        switch($nodeInfo[$i][2]) {
                case 1:
                case 2:
                        if($isReplicationMode || $isMasterSlaveMode) {
                                array_push($nodeInfo[$i], 'disconnect');
                        } else {
                                array_push($nodeInfo[$i], 'none');
                        }
                        echo "success 2<br>";
                        break;
                case 3:
                        if($isReplicationMode || $isMasterSlaveMode) {
                                if(NodeActive($i)) {
                                        array_push($nodeInfo[$i], 'return');
                                } else {
                    array_push($nodeInfo[$i], 'recovery');
                }
                        } else {
                                array_push($nodeInfo[$i], 'none');
                        }
                        break;
        }
    }
        echo print_r($nodeInfo)."<br>";
        $nodeInfo[$i][5] = NodeStandby($i);
}
echo "test_final";
print_r($nodeInfo);

It prints me that :

for 0
dead node 2
success 2
Array ( [0] => Array ( [0] => [1] => 5432 [2] => 2 [3] => 0.500 [4] =>
disconnect ) [1] => Array ( [0] => [1] => 5433 [2] => 3 [3] => 0.500 ) ) 1

It seems that the function NodeStandby do something wrong, because the for
loop didn't increment $i at all.
Otherwise It will print "for 1"

What do you think ?

On Wed, Feb 23, 2011 at 3:52 PM, Micka <mickamusset at gmail.com> wrote:

> Yes it seems,
>
> Just by curiousity, when you start stop start stop pgpool, where pgpool
> store the information about the current database it uses ?
>
> about pgadmin, I got :
>
> http://img546.imageshack.us/i/pgpool.png/
>
> instead of :
>
>
>
> http://pgpool.projects.postgresql.org/contrib_docs/simple_sr_setting/operation_images/02.png
>
> I tried :
>
> postgres at PTI2:~$ pcp_node_count 10 localhost 9898 postgres1 pgpoolAdmin
> 2
>
> It works
>
> as well as :
>
> postgres at PTI2:~$ pcp_node_info 10 localhost 9898 postgres1 pgpoolAdmin 1
>  5433 3 0.500000
>
> and I'm sure that I've done a :
>
> chmod 755 /usr/local/bin/pgpool
> chmod 755 /usr/local/bin/pcp_*
>
>
> see :
>
>
> mickael at PTI2:/usr/local/bin$ ls -l
> total 2436
> -rwxr-xr-x 1 root root   19159 2011-02-22 09:08 pcp_attach_node
> -rwxr-xr-x 1 root root   19426 2011-02-22 09:08 pcp_detach_node
> -rwxr-xr-x 1 root root   19207 2011-02-22 09:08 pcp_node_count
> -rwxr-xr-x 1 root root   19967 2011-02-22 09:08 pcp_node_info
> -rwxr-xr-x 1 root root   19556 2011-02-22 09:08 pcp_proc_count
> -rwxr-xr-x 1 root root   20575 2011-02-22 09:08 pcp_proc_info
> -rwxr-xr-x 1 root root   19171 2011-02-22 09:08 pcp_recovery_node
> -rwxr-xr-x 1 root root   19124 2011-02-22 09:08 pcp_stop_pgpool
> -rwxr-xr-x 1 root root   20968 2011-02-22 09:08 pcp_systemdb_info
> -rwxr-xr-x 1 root root  131901 2011-02-22 09:08 pg_md5
> -rwxr-xr-x 1 root root 2164698 2011-02-22 09:08 pgpool
>
>
>
> So why I've that :
>
> http://img546.imageshack.us/i/pgpool.png/ ???
>
>
>
> On Wed, Feb 23, 2011 at 3:18 PM, Tatsuo Ishii <ishii at sraoss.co.jp> wrote:
>
>> > No, because I didn't start it yet,
>>
>> Oh, ok. then it's an expected behavior.
>> --
>> Tatsuo Ishii
>> SRA OSS, Inc. Japan
>> English: http://www.sraoss.co.jp/index_en.php
>> Japanese: http://www.sraoss.co.jp
>>
>> > I'm following your tutorial :
>> >
>> >
>> http://pgpool.projects.postgresql.org/contrib_docs/simple_sr_setting/index.html
>> >
>> > I'm at this step :
>> >
>> > Starting pgpool-IIand :
>> >
>> http://pgpool.projects.postgresql.org/contrib_docs/simple_sr_setting/operation_images/02.png
>> >
>> > at this step the standby database is down, it's only later that I've to
>> > start it :
>> >
>> > Starting standby server
>> >
>> >
>> >
>> >
>> >
>> > On Wed, Feb 23, 2011 at 3:11 PM, Tatsuo Ishii <ishii at sraoss.co.jp>
>> wrote:
>> >
>> >> Can you connect to 5433 PostgreSQL by using psql?
>> >>
>> >> psql -p 5433 -l
>> >> --
>> >> Tatsuo Ishii
>> >> SRA OSS, Inc. Japan
>> >> English: http://www.sraoss.co.jp/index_en.php
>> >> Japanese: http://www.sraoss.co.jp
>> >>
>> >> > Thanks it seems that it was the problem, but it didn't go far after
>> that
>> >> ^^
>> >> >
>> >> > see :
>> >> >
>> >> > 2011-02-23 14:59:53 LOG:   pid 936: pgpool-II successfully started.
>> >> version
>> >> > 3.1.0-alpha1 (umiyameboshi)
>> >> > 2011-02-23 14:59:53 DEBUG: pid 968: I am 968
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: I am 970
>> >> > 2011-02-23 14:59:53 DEBUG: pid 964: I am 964
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: pool_ssl: SSL requested but SSL
>> >> support
>> >> > is not available
>> >> > 2011-02-23 14:59:53 DEBUG: pid 967: I am 967
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: pool_ssl: SSL requested but SSL
>> >> support
>> >> > is not available
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: s_do_auth: auth kind: 0
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: s_do_auth: parameter status data
>> >> > received
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: s_do_auth: auth kind: 0
>> >> > tus data received
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: s_do_auth: parameter status data
>> >> > received
>> >> >
>> >> >
>> >> > and :
>> >> >
>> >> >
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: s_do_auth: parameter status data
>> >> > received
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: s_do_auth: parameter status data
>> >> > received
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: s_do_auth: parameter status data
>> >> > received
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: s_do_auth: parameter status data
>> >> > received
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: s_do_auth: parameter status data
>> >> > received
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: s_do_auth: backend key data
>> received
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: s_do_auth: transaction state: I
>> >> > 2011-02-23 14:59:53 ERROR: pid 970:
>> connect_unix_domain_socket_by_port:
>> >> > connect() failed: No such file or directory
>> >> > 2011-02-23 14:59:53 ERROR: pid 970: make_persistent_db_connection:
>> >> > connection to (5433) failed
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: do_query: kind: T
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: num_fileds: 1
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: do_query: kind: D
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: do_query: kind: C
>> >> > 2011-02-23 14:59:53 DEBUG: pid 970: do_query: kind: Z
>> >> > *2011-02-23 14:59:53 ERROR: pid 970: check_replication_time_lag: DB
>> node
>> >> is
>> >> > valid but no persistent connection*
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: do_query: kind: T
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: num_fileds: 1
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: do_query: kind: D
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: do_query: kind: C
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: do_query: kind: Z
>> >> > 2011-02-23 14:59:53 LOG:   pid 936: find_primary_node: primary node
>> id is
>> >> 0
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: starting health checking
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: health_check: 0 th DB node
>> status: 1
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: health_check: 1 th DB node
>> status: 1
>> >> > 2011-02-23 14:59:53 ERROR: pid 936:
>> connect_unix_domain_socket_by_port:
>> >> > connect() failed: No such file or directory
>> >> > 2011-02-23 14:59:53 ERROR: pid 936: health check failed. 1 th host
>>  at
>> >> port
>> >> > 5433 is down
>> >> > 2011-02-23 14:59:53 LOG:   pid 936: set 1 th backend down status
>> >> > *2011-02-23 14:59:53 DEBUG: pid 936: failover_handler called*
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: failover_handler: starting to
>> select
>> >> new
>> >> > master node
>> >> > 2011-02-23 14:59:53 LOG:   pid 936: starting degeneration. shutdown
>> host
>> >> > (5433)
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: failover_handler: kill 937
>> >> > 2011-02-23 14:59:53 DEBUG: pid 936: failover_handler: kill 938
>> >> >
>> >> > I don't understand ? It seems that because my database is lagging ?
>> >> pgpool
>> >> > decided to do a failover ....
>> >> >
>> >> > but my database  and pgpool are on the same server ....
>> >> >
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > On Wed, Feb 23, 2011 at 2:55 PM, Tatsuo Ishii <ishii at sraoss.co.jp>
>> >> wrote:
>> >> >
>> >> >> > Ubuntu 10.04 server,
>> >> >> >
>> >> >> > Sorry,
>> >> >>
>> >> >> If my memory serves, Ubuntu has weired policy about socket directory
>> >> >> as Debian:
>> >> >>
>> >> >> > # Unix domain socket path for the backend. Debian package defaults
>> to
>> >> >> > /var/run/postgresql!
>> >> >> > backend_socket_dir = '/tmp'
>> >> >>
>> >> >> Changing backend_socket_dir to /var/run/postgresql might help.
>> >> >> --
>> >> >> Tatsuo Ishii
>> >> >> SRA OSS, Inc. Japan
>> >> >> English: http://www.sraoss.co.jp/index_en.php
>> >> >> Japanese: http://www.sraoss.co.jp
>> >> >>
>> >> >> > On Wed, Feb 23, 2011 at 2:04 PM, Tatsuo Ishii <ishii at sraoss.co.jp
>> >
>> >> >> wrote:
>> >> >> >
>> >> >> >> >> What is your platform pgpool-II is running on?
>> >> >> >>
>> >> >> >> So what is your platform?
>> >> >> >> --
>> >> >> >> Tatsuo Ishii
>> >> >> >> SRA OSS, Inc. Japan
>> >> >> >> English: http://www.sraoss.co.jp/index_en.php
>> >> >> >> Japanese: http://www.sraoss.co.jp
>> >> >> >>
>> >> >> >> > thx :
>> >> >> >> >
>> >> >> >> > mickael at PTI2:~$ sudo su - postgres
>> >> >> >> > postgres at PTI2:~$ /usr/lib/postgresql/9.0/bin/pg_ctl -D
>> >> >> >> /usr/local/pgsql/data
>> >> >> >> > -l logpostgres start
>> >> >> >> > server starting
>> >> >> >> > postgres at PTI2:~$ psql -p 5432 -l
>> >> >> >> >                                   List of databases
>> >> >> >> >    Name    |  Owner   | Encoding |  Collation  |    Ctype    |
>> >> >> Access
>> >> >> >> > privileges
>> >> >> >> >
>> >> >> >>
>> >> >>
>> >>
>> -----------+----------+----------+-------------+-------------+-----------------------
>> >> >> >> >  postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8  |
>> >> >> >> >  template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
>> >> >> >> > =c/postgres          +
>> >> >> >> >                 |              |               |
>> >> >> >> > |                      | postgres=CTc/postgres
>> >> >> >> >  template1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
>> >> >> >> > =c/postgres          +
>> >> >> >> >                 |               |              |
>> >>   |
>> >> >> >> >                | postgres=CTc/postgres
>> >> >> >> > (3 rows)
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > postgres at PTI2:~$ exit
>> >> >> >> > logout
>> >> >> >> > mickael at PTI2:~$ sudo mkdir /var/run/pgpool
>> >> >> >> > mickael at PTI2:~$ sudo chown www-data /var/run/pgpool/
>> >> >> >> > mickael at PTI2:~$ sudo chmod 777 -R /var/run/pgpool/
>>  Otherwise
>> >> i
>> >> >> got
>> >> >> >> :
>> >> >> >> > could not open pid file as /var/run/pgpool/pgpool.pid. reason:
>> >> >> Permission
>> >> >> >> > denied
>> >> >> >> > mickael at PTI2:~$ sudo su - postgres
>> >> >> >> > postgres at PTI2:~$ pgpool -d -n > ~/pgpool.log 2>&1 &
>> >> >> >> >
>> >> >> >> > after a nano pgpool.log i got :
>> >> >> >> >
>> >> >> >> > ....
>> >> >> >> > 2011-02-23 11:04:34 ERROR: pid 1327: pool_init_pool_passwd:
>> >> couldn't
>> >> >> open
>> >> >> >> > /usr/local/etc/pool_passwd. reason: Permission denied
>> >> >> >> > 2011-02-23 11:04:34 LOG:   pid 1327: Backend status file
>> >> >> >> > /var/log/pgpool/pgpool_status does not exist
>> >> >> >> > .....
>> >> >> >> > 2011-02-23 11:04:34 LOG:   pid 1327: pgpool-II successfully
>> >> started.
>> >> >> >> version
>> >> >> >> > 3.1.0-alpha1 (umiyameboshi)
>> >> >> >> > .....
>> >> >> >> > 2011-02-23 11:04:34 DEBUG: pid 1352: I am 1352
>> >> >> >> > 2011-02-23 11:04:34 DEBUG: pid 1357: I am 1357
>> >> >> >> > 2011-02-23 11:04:34 ERROR: pid 1327:
>> >> >> connect_unix_domain_socket_by_port:
>> >> >> >> > connect() failed: No such file or directory
>> >> >> >> > 2011-02-23 11:04:34 ERROR: pid 1327:
>> make_persistent_db_connection:
>> >> >> >> > connection to (5432) failed
>> >> >> >> > 2011-02-23 11:04:34 ERROR: pid 1327: find_primary_node:
>> >> >> >> > make_persistent_connetcion failed
>> >> >> >> > 2011-02-23 11:04:34 LOG:   pid 1327: pgpool-II successfully
>> >> started.
>> >> >> >> version
>> >> >> >> > 3.1.0-alpha1 (umiyameboshi)
>> >> >> >> > ....
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > I don't understand because if trying again :
>> >> >> >> > psql -p 5432 -l
>> >> >> >> >
>> >> >> >> > it works !
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > And my pgpool.config :
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > # pgpool-II configuration file sample
>> >> >> >> > # $Header:
>> >> >> >> >
>> >> >>
>> /cvsroot/pgpool/pgpool-web/contrib_docs/simple_sr_setting/pgpool.conf,v
>> >> >> >> 1.1
>> >> >> >> > 2010/11/04 04:39:57 t-ishii Exp $
>> >> >> >> >
>> >> >> >> > # Host name or IP address to listen on: '*' for all, '' for no
>> >> TCP/IP
>> >> >> >> > # connections
>> >> >> >> > listen_addresses = '*'
>> >> >> >> >
>> >> >> >> > # Port number for pgpool
>> >> >> >> > port = 9999
>> >> >> >> >
>> >> >> >> > # Port number for pgpool communication manager
>> >> >> >> > pcp_port = 9898
>> >> >> >> >
>> >> >> >> > # Unix domain socket path.  (The Debian package defaults to
>> >> >> >> > # /var/run/postgresql.)
>> >> >> >> > socket_dir = '/tmp'
>> >> >> >> >
>> >> >> >> > # Unix domain socket path for pgpool communication manager.
>> >> >> >> > # (Debian package defaults to /var/run/postgresql)
>> >> >> >> > pcp_socket_dir = '/tmp'
>> >> >> >> >
>> >> >> >> > # Unix domain socket path for the backend. Debian package
>> defaults
>> >> to
>> >> >> >> > /var/run/postgresql!
>> >> >> >> > backend_socket_dir = '/tmp'
>> >> >> >> >
>> >> >> >> > # pgpool communication manager timeout. 0 means no timeout, but
>> >> >> strongly
>> >> >> >> not
>> >> >> >> > recommended!
>> >> >> >> > pcp_timeout = 10
>> >> >> >> >
>> >> >> >> > # number of pre-forked child process
>> >> >> >> > num_init_children = 32
>> >> >> >> >
>> >> >> >> > # Number of connection pools allowed for a child process
>> >> >> >> > max_pool = 4
>> >> >> >> >
>> >> >> >> > # If idle for this many seconds, child exits.  0 means no
>> timeout.
>> >> >> >> > child_life_time = 0
>> >> >> >> >
>> >> >> >> > # If idle for this many seconds, connection to PostgreSQL
>> closes.
>> >> >> >> > # 0 means no timeout.
>> >> >> >> > connection_life_time = 0
>> >> >> >> >
>> >> >> >> > # If child_max_connections connections were received, child
>> exits.
>> >> >> >> > # 0 means no exit.
>> >> >> >> > child_max_connections = 0
>> >> >> >> >
>> >> >> >> > # If client_idle_limit is n (n > 0), the client is forced to be
>> >> >> >> > # disconnected whenever after n seconds idle (even inside an
>> >> explicit
>> >> >> >> > # transactions!)
>> >> >> >> > # 0 means no disconnect.
>> >> >> >> > client_idle_limit = 0
>> >> >> >> >
>> >> >> >> > # Maximum time in seconds to complete client authentication.
>> >> >> >> > # 0 means no timeout.
>> >> >> >> > authentication_timeout = 60
>> >> >> >> >
>> >> >> >> > # Logging directory
>> >> >> >> > logdir = '/var/log/pgpool'
>> >> >> >> >
>> >> >> >> > # pid file name
>> >> >> >> > pid_file_name = '/var/run/pgpool/pgpool.pid'
>> >> >> >> >
>> >> >> >> > # Replication mode
>> >> >> >> > replication_mode = false
>> >> >> >> >
>> >> >> >> > # Load balancing mode, i.e., all SELECTs are load balanced.
>> >> >> >> > # This is ignored if replication_mode is false.
>> >> >> >> > load_balance_mode = true
>> >> >> >> >
>> >> >> >> > # If there's a disagreement with the packet kind sent from
>> backend,
>> >> >> >> > # then degenrate the node which is most likely "minority".  If
>> >> false,
>> >> >> >> > # just force to exit this session.
>> >> >> >> > replication_stop_on_mismatch = false
>> >> >> >> >
>> >> >> >> > # If there's a disagreement with the number of affected tuples
>> in
>> >> >> >> > # UPDATE/DELETE, then degenrate the node which is most likely
>> >> >> >> > # "minority".
>> >> >> >> > # If false, just abort the transaction to keep the consistency.
>> >> >> >> > failover_if_affected_tuples_mismatch = true
>> >> >> >> >
>> >> >> >> > # If true, replicate SELECT statement when load balancing is
>> >> disabled.
>> >> >> >> > # If false, it is only sent to the master node.
>> >> >> >> > replicate_select = false
>> >> >> >> >
>> >> >> >> > # Semicolon separated list of queries to be issued at the end
>> of a
>> >> >> >> session
>> >> >> >> > reset_query_list = 'ABORT;DISCARD ALL'
>> >> >> >> >
>> >> >> >> > # white_function_list is a comma separated list of function
>> names
>> >> >> >> > # those do not write to database. Any functions not listed here
>> >> >> >> > # are regarded to write to database and SELECTs including such
>> >> >> >> > # writer-functions will be executed on master(primary) in
>> >> master/slave
>> >> >> >> > # mode, or executed on all DB nodes in replication mode.
>> >> >> >> > #
>> >> >> >> > # black_function_list is a comma separated list of function
>> names
>> >> >> >> > # those write to database. Any functions not listed here
>> >> >> >> > # are regarded not to write to database and SELECTs including
>> such
>> >> >> >> > # read-only-functions will be executed on any DB nodes.
>> >> >> >> > #
>> >> >> >> > # You cannot make full both white_function_list and
>> >> >> >> > # black_function_list at the same time. If you specify
>> something in
>> >> >> >> > # one of them, you should make empty other.
>> >> >> >> > #
>> >> >> >> > # Pre 3.0 pgpool-II recognizes nextval and setval in hard coded
>> >> >> >> > # way. Following setting will do the same as the previous
>> version.
>> >> >> >> > # white_function_list = ''
>> >> >> >> > # black_function_list = 'nextval,setval'
>> >> >> >> > white_function_list = ''
>> >> >> >> > #black_function_list = ''
>> >> >> >> > black_function_list = 'nextval,setval,foo'
>> >> >> >> >
>> >> >> >> > # If true print timestamp on each log line.
>> >> >> >> > print_timestamp = true
>> >> >> >> >
>> >> >> >> > # If true, operate in master/slave mode.
>> >> >> >> > master_slave_mode = true
>> >> >> >> >
>> >> >> >> > # Master/slave sub mode. either 'slony' or 'stream'. Default is
>> >> >> 'slony'.
>> >> >> >> > # master_slave_sub_mode = 'stream'
>> >> >> >> > master_slave_sub_mode = 'stream'
>> >> >> >> >
>> >> >> >> > # If the standby server delays more than delay_threshold,
>> >> >> >> > # any query goes to the primary only. The unit is in bytes.
>> >> >> >> > # 0 disables the check. Default is 0.
>> >> >> >> > # Note that health_check_period required to be greater than 0
>> >> >> >> > # to enable the functionality.
>> >> >> >> > delay_threshold = 100
>> >> >> >> >
>> >> >> >> > # 'always' logs the standby delay whenever health check runs.
>> >> >> >> > # 'if_over_threshold' logs only if the delay exceeds
>> >> delay_threshold.
>> >> >> >> > # 'none' disables the delay log.
>> >> >> >> > log_standby_delay = 'if_over_threshold'
>> >> >> >> > #log_standby_delay = 'always'
>> >> >> >> >
>> >> >> >> > # If true, cache connection pool.
>> >> >> >> > connection_cache = true
>> >> >> >> >
>> >> >> >> > # Health check timeout.  0 means no timeout.
>> >> >> >> > health_check_timeout = 10
>> >> >> >> >
>> >> >> >> > # Health check period.  0 means no health check.
>> >> >> >> > health_check_period = 10
>> >> >> >> >
>> >> >> >> > # Health check user
>> >> >> >> > health_check_user = 'www-data'
>> >> >> >> >
>> >> >> >> > # Execute command by failover.
>> >> >> >> > # special values:  %d = node id
>> >> >> >> > #                  %h = host name
>> >> >> >> > #                  %p = port number
>> >> >> >> > #                  %D = database cluster path
>> >> >> >> > #                  %m = new master node id
>> >> >> >> > #                  %M = old master node id
>> >> >> >> > #                  %H = new master node host name
>> >> >> >> > #                  %P = old primary node id
>> >> >> >> > #                  %% = '%' character
>> >> >> >> > #
>> >> >> >> > failover_command = '/usr/local/etc/failover.sh %d "%h" %p %D %m
>> %M
>> >> >> "%H"
>> >> >> >> %P'
>> >> >> >> >
>> >> >> >> > # Execute command by failback.
>> >> >> >> > # special values:  %d = node id
>> >> >> >> >
>> >> >> >> > #                  %h = host name
>> >> >> >> > #                  %p = port number
>> >> >> >> > #                  %D = database cluster path
>> >> >> >> > #                  %m = new master node id
>> >> >> >> > #                  %M = old master node id
>> >> >> >> > #                  %% = '%' character
>> >> >> >> > #
>> >> >> >> > failback_command = '/bin/rm -f /tmp/trigger_file1'
>> >> >> >> >
>> >> >> >> > # If true, trigger fail over when writing to the backend
>> >> communication
>> >> >> >> > # socket fails. This is the same behavior of pgpool-II 2.2.x or
>> >> >> >> > # earlier. If set to false, pgpool will report an error and
>> >> disconnect
>> >> >> >> > # the session.
>> >> >> >> > fail_over_on_backend_error = false
>> >> >> >> >
>> >> >> >> > # If true, automatically lock table with INSERT statements to
>> keep
>> >> >> SERIAL
>> >> >> >> > # data consistency.  An /*INSERT LOCK*/ comment has the same
>> >> effect.
>> >> >>  A
>> >> >> >> > # /NO INSERT LOCK*/ comment disables the effect.
>> >> >> >> > insert_lock = true
>> >> >> >> >
>> >> >> >> > # If true, ignore leading white spaces of each query while
>> pgpool
>> >> >> judges
>> >> >> >> > # whether the query is a SELECT so that it can be load
>> balanced.
>> >>  This
>> >> >> >> > # is useful for certain APIs such as DBI/DBD which is known to
>> >> adding
>> >> >> an
>> >> >> >> > # extra leading white space.
>> >> >> >> > ignore_leading_white_space = false
>> >> >> >> >
>> >> >> >> > # If true, print all statements to the log.  Like the
>> log_statement
>> >> >> >> option
>> >> >> >> > # to PostgreSQL, this allows for observing queries without
>> engaging
>> >> in
>> >> >> >> full
>> >> >> >> > # debugging.
>> >> >> >> > log_statement = true
>> >> >> >> >
>> >> >> >> > # If true, print all statements to the log. Similar to
>> >> log_statement
>> >> >> >> except
>> >> >> >> > # that prints DB node id and backend process id info.
>> >> >> >> > log_per_node_statement = true
>> >> >> >> >
>> >> >> >> > # If true, incoming connections will be printed to the log.
>> >> >> >> > log_connections = true
>> >> >> >> >
>> >> >> >> > # If true, hostname will be shown in ps status. Also shown in
>> >> >> >> > # connection log if log_connections = true.
>> >> >> >> > # Be warned that this feature will add overhead to look up
>> >> hostname.
>> >> >> >> > log_hostname = false
>> >> >> >> >
>> >> >> >> > # if non 0, run in parallel query mode
>> >> >> >> > parallel_mode = false
>> >> >> >> >
>> >> >> >> > # if non 0, use query cache
>> >> >> >> > enable_query_cache = false
>> >> >> >> >
>> >> >> >> > #set pgpool2 hostname
>> >> >> >> > pgpool2_hostname = ''
>> >> >> >> >
>> >> >> >> > # system DB info
>> >> >> >> > system_db_hostname = 'localhost'
>> >> >> >> > system_db_port = 5432
>> >> >> >> > system_db_dbname = 'pgpool'
>> >> >> >> > system_db_schema = 'pgpool_catalog'
>> >> >> >> > system_db_user = 'pgpool'
>> >> >> >> > system_db_password = ''
>> >> >> >> >
>> >> >> >> > # backend_hostname, backend_port, backend_weight
>> >> >> >> > # here are examples
>> >> >> >> > #backend_hostname0 = 'localhost'
>> >> >> >> > #backend_port0 = 5432
>> >> >> >> > #backend_weight0 = 1
>> >> >> >> > #backend_data_directory0 = '/data'
>> >> >> >> > #backend_hostname1 = 'localhost'
>> >> >> >> > #backend_port1 = 5433
>> >> >> >> > #backend_weight1 = 1
>> >> >> >> > #backend_data_directory1 = '/data1'
>> >> >> >> >
>> >> >> >> > # - HBA -
>> >> >> >> >
>> >> >> >> > # If true, use pool_hba.conf for client authentication. In
>> >> pgpool-II
>> >> >> >> > # 1.1, the default value is false. The default value will be
>> true
>> >> in
>> >> >> >> > # 1.2.
>> >> >> >> > enable_pool_hba = false
>> >> >> >> >
>> >> >> >> > # md5 authentication file name. '' disables md5 authentication.
>> >> >> >> > # To enable md5 auth, enable_pool_hba to true.
>> >> >> >> > # Default is 'pool_passwd'.
>> >> >> >> > pool_passwd = 'pool_passwd'
>> >> >> >> > # - online recovery -
>> >> >> >> > # online recovery user
>> >> >> >> > recovery_user = 'postgres'
>> >> >> >> >
>> >> >> >> > # online recovery password
>> >> >> >> > recovery_password = 'pgpoolAdmin'
>> >> >> >> >
>> >> >> >> > # execute a command in first stage.
>> >> >> >> > recovery_1st_stage_command = 'basebackup.sh'
>> >> >> >> >
>> >> >> >> > # execute a command in second stage.
>> >> >> >> > recovery_2nd_stage_command = ''
>> >> >> >> >
>> >> >> >> > # maximum time in seconds to wait for remote start-up. 0 means
>> no
>> >> wait
>> >> >> >> > recovery_timeout = 60
>> >> >> >> >
>> >> >> >> > # If client_idle_limit_in_recovery is n (n > 0), the client is
>> >> forced
>> >> >> >> > # to be disconnected whenever after n seconds idle (even inside
>> an
>> >> >> >> > # explicit transactions!)  0 means no disconnect. This
>> parameter
>> >> only
>> >> >> >> > # takes effect in recovery 2nd stage.
>> >> >> >> > client_idle_limit_in_recovery = 0
>> >> >> >> >
>> >> >> >> > # Specify table name to lock. This is used when rewriting
>> lo_creat
>> >> >> >> > # command in replication mode. The table must exist and has
>> >> writable
>> >> >> >> > # permission to public. If the table name is '', no rewriting
>> >> occurs.
>> >> >> >> > lobj_lock_table = 'pgpool_lobj_lock'
>> >> >> >> >
>> >> >> >> > # If true, enable SSL support for both frontend and backend
>> >> >> connections.
>> >> >> >> > # note that you must also set ssl_key and ssl_cert for SSL to
>> work
>> >> in
>> >> >> >> > # the frontend connections.
>> >> >> >> > ssl = false
>> >> >> >> > # path to the SSL private key file
>> >> >> >> > ssl_key = '/usr/local/etc/server.key'
>> >> >> >> > # path to the SSL public certificate file
>> >> >> >> > ssl_cert = '/usr/local/etc/server.crt'
>> >> >> >> >
>> >> >> >> > # Debug message verbosity level. 0: no message, 1 <= : more
>> verbose
>> >> >> >> > debug_level = 0
>> >> >> >> >
>> >> >> >> > replication_timeout = 5000
>> >> >> >> > log_statement = false
>> >> >> >> > ssl_ca_cert = ''
>> >> >> >> > ssl_ca_cert_dir = ''
>> >> >> >> > backend_hostname0 = ''
>> >> >> >> > backend_port0 = 5432
>> >> >> >> > backend_weight0 = 1
>> >> >> >> > backend_data_directory0 = '/usr/local/pgsql/data'
>> >> >> >> > backend_hostname1 = ''
>> >> >> >> > backend_port1 = 5433
>> >> >> >> > backend_weight1 = 1
>> >> >> >> > backend_data_directory1 = '/usr/local/pgsql/standby'
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > thx,
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > On Wed, Feb 23, 2011 at 10:30 AM, Tatsuo Ishii <
>> ishii at sraoss.co.jp
>> >> >
>> >> >> >> wrote:
>> >> >> >> >
>> >> >> >> >> The error message says pgpool-II could not find valid socket
>> for
>> >> >> 5432.
>> >> >> >> >> Can you connect to PostgreSQL using psql on the host where
>> >> pgpool-II
>> >> >> >> >> is installed?
>> >> >> >> >>
>> >> >> >> >> psql -p 5432 -l
>> >> >> >> >>
>> >> >> >> >> What is your platform pgpool-II is running on?
>> >> >> >> >> --
>> >> >> >> >> Tatsuo Ishii
>> >> >> >> >> SRA OSS, Inc. Japan
>> >> >> >> >> English: http://www.sraoss.co.jp/index_en.php
>> >> >> >> >> Japanese: http://www.sraoss.co.jp
>> >> >> >> >>
>> >> >> >> >> > Hi,
>> >> >> >> >> >
>> >> >> >> >> > I'm trying to understand pgPool-II on my local server.
>> >> >> >> >> >
>> >> >> >> >> > But I encounter this bug now :
>> >> >> >> >> >
>> >> >> >> >> > 2011-02-23 09:52:03 LOG:   pid 1101: pgpool-II successfully
>> >> >> started.
>> >> >> >> >> version
>> >> >> >> >> > 3.1.0-alpha1 (umiyameboshi)
>> >> >> >> >> > 2011-02-23 09:52:03 DEBUG: pid 1132: I am 1132
>> >> >> >> >> > 2011-02-23 09:52:03 ERROR: pid 1101:
>> >> >> >> connect_unix_domain_socket_by_port:
>> >> >> >> >> > connect() failed: No such file or directory
>> >> >> >> >> > 2011-02-23 09:52:03 ERROR: pid 1101:
>> >> make_persistent_db_connection:
>> >> >> >> >> > connection to (5432) failed
>> >> >> >> >> >
>> >> >> >> >> >
>> >> >> >> >> > I don't know what is wrong ?
>> >> >> >> >> > Just before that, I've done :
>> >> >> >> >> > /usr/lib/postgresql/9.0/bin/pg_ctl -D /usr/local/pgsql/data
>> -l
>> >> >> >> >> logpostgres
>> >> >> >> >> > start
>> >> >> >> >> > and on the log my database server works well.
>> >> >> >> >> >
>> >> >> >> >> > I didn't find anything on the database server log about a
>> >> >> connection
>> >> >> >> from
>> >> >> >> >> > pgpool.
>> >> >> >> >> >
>> >> >> >> >> > I'm following this tutorial
>> >> >> >> >> >
>> >> >> >> >>
>> >> >> >>
>> >> >>
>> >>
>> http://pgpool.projects.postgresql.org/contrib_docs/simple_sr_setting/index.html
>> >> >> >> >> > but I've disabled the ssl  ( ssl = false )
>> >> >> >> >> > and I've started manually pgpool to show the log.
>> >> >> >> >> >
>> >> >> >> >> > Do you I've an idea of what is wrong ?
>> >> >> >> >> >
>> >> >> >> >> >
>> >> >> >> >> > THx,
>> >> >> >> >>
>> >> >> >> >
>> >> >> >> >
>> >> >> >> >
>> >> >> >> > --
>> >> >> >> > Michael Musset,
>> >> >> >> > Tel: 06 26 06 29 89
>> >> >> >>
>> >> >> >
>> >> >> >
>> >> >> >
>> >> >> > --
>> >> >> > Michael Musset,
>> >> >> > Tel: 06 26 06 29 89
>> >> >>
>> >> >
>> >> >
>> >> >
>> >> > --
>> >> > Michael Musset,
>> >> > Tel: 06 26 06 29 89
>> >>
>> >
>> >
>> >
>> > --
>> > Michael Musset,
>> > Tel: 06 26 06 29 89
>>
>
>
>
> --
> Michael Musset,
> Tel: 06 26 06 29 89
>
>


-- 
Michael Musset,
Tel: 06 26 06 29 89
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://pgfoundry.org/pipermail/pgpool-general/attachments/20110223/1e3d5610/attachment-0001.html>


More information about the Pgpool-general mailing list