You seem to forgot to add: wal_level = hot_standby
to your postgresql.conf. -- Tatsuo Ishii SRA OSS, Inc. Japan English: http://www.sraoss.co.jp/index_en.php Japanese: http://www.sraoss.co.jp > indeed, > > What do you think about : > > STATEMENT: SELECT pgpool_recovery('basebackup.sh', 'localhost', > '/usr/local/pgsql/standby') > ERROR: WAL level not sufficient for making an online backup > HINT: wal_level must be set to "archive" or "hot_standby" at server start. > STATEMENT: SELECT pg_start_backup('Streaming Replication', true) > ERROR: WAL level not sufficient for making an online backup > HINT: wal_level must be set to "archive" or "hot_standby" at server start. > mkdir: cannot create directory `/usr/local/pgsql/standby/pg_xlog': File > exists > rm: cannot remove `/usr/local/pgsql/standby/recovery.done': No such file or > directory > ERROR: WAL level not sufficient for making an online backup > HINT: wal_level must be set to "archive" or "hot_standby" at server start. > STATEMENT: SELECT pg_stop_backup() > ERROR: WAL level not sufficient for making an online backup > HINT: wal_level must be set to "archive" or "hot_standby" at server start. > ERROR: pgpool_recovery failel > > > > On Thu, Feb 24, 2011 at 2:06 PM, Tatsuo Ishii <[email protected]> wrote: > >> > It seems, that I missed the part of installing postrgresql for php . >> > >> > But when I click now on Recovery for the standby server I got : >> > >> > Error Code e1012 >> > pcp_recovery_node command error occurred. >> >> To analyze the problem, I recommend to look into: >> >> - Pgpool log >> - PostgreSQL log >> >> Can you show me? >> -- >> 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 4:49 PM, Micka <[email protected]> wrote: >> > >> >> 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 <[email protected]> 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@PTI2:~$ pcp_node_count 10 localhost 9898 postgres1 >> pgpoolAdmin >> >>> 2 >> >>> >> >>> It works >> >>> >> >>> as well as : >> >>> >> >>> postgres@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@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 <[email protected]> >> 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 <[email protected]> >> >>>> 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 < >> [email protected]> >> >>>> >> 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 < >> >>>> [email protected]> >> >>>> >> >> 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@PTI2:~$ sudo su - postgres >> >>>> >> >> >> > postgres@PTI2:~$ /usr/lib/postgresql/9.0/bin/pg_ctl -D >> >>>> >> >> >> /usr/local/pgsql/data >> >>>> >> >> >> > -l logpostgres start >> >>>> >> >> >> > server starting >> >>>> >> >> >> > postgres@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@PTI2:~$ exit >> >>>> >> >> >> > logout >> >>>> >> >> >> > mickael@PTI2:~$ sudo mkdir /var/run/pgpool >> >>>> >> >> >> > mickael@PTI2:~$ sudo chown www-data /var/run/pgpool/ >> >>>> >> >> >> > mickael@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@PTI2:~$ sudo su - postgres >> >>>> >> >> >> > postgres@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 < >> >>>> [email protected] >> >>>> >> > >> >>>> >> >> >> 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 >> >> >> >> >> > >> > >> > -- >> > Michael Musset, >> > Tel: 06 26 06 29 89 >> > > > > -- > Michael Musset, > Tel: 06 26 06 29 89 _______________________________________________ Pgpool-general mailing list [email protected] http://pgfoundry.org/mailman/listinfo/pgpool-general
