[pgcluster: 823] Can't createdb on PGCluster 1.0.10rc1

Masaichi Hasegawa hasegawa.masaichi @ lab.ntt.co.jp
2005年 9月 22日 (木) 21:38:16 JST


はせがわといいます。

 pgcluster1.0.10rc1を試しているのですが、createdbできません。
状況は、createdbコマンドが実行されたままになります。
ログから推測するとクライアントが接続したClusterDBで「source database 
"template1" is being accessed by other users」と表示して、pgreplicate
がClusterDBの応答待ちしているように推測されます。

- Compile option

$ ./configure --prefix=/usr/local/pgcl_1-0-10rc1


- Command on Client ...

$ /usr/local/pgcl_1-0-10rc1/bin/createdb -p 5435 -h spade02 test_db


- Log files ...

--ClusterDB1(spade01)
2005-09-22 21:31:48 LOG:  connection received: host=192.168.10.60 port=47043
2005-09-22 21:31:48 LOG:  connection authorized: user=postgres database=template1
2005-09-22 21:31:48 LOG:  query: begin; select getdatabaseencoding(); commit
2005-09-22 21:31:48 LOG:  duration: 0.000599 sec
2005-09-22 21:31:48 LOG:  query: SELECT PGR_SYSTEM_COMMAND_FUNCTION(3,1127392308,986275,1)
2005-09-22 21:31:48 LOG:  duration: 0.000090 sec
2005-09-22 21:31:48 LOG:  query: SELECT PGR_SYSTEM_COMMAND_FUNCTION(8,16,0,1)
2005-09-22 21:31:48 LOG:  duration: 0.000064 sec
2005-09-22 21:31:48 LOG:  query: CREATE DATABASE "test_db"
2005-09-22 21:31:49 LOG:  duration: 0.065000 sec

--ClusterDB2(spade02)
2005-09-22 21:31:48 LOG:  connection received: host=192.168.10.30 port=33025
2005-09-22 21:31:48 LOG:  connection authorized: user=postgres database=template1
2005-09-22 21:31:48 LOG:  query: begin; select getdatabaseencoding(); commit
2005-09-22 21:31:48 LOG:  duration: 0.000627 sec
2005-09-22 21:31:48 LOG:  query: SET autocommit TO 'on';CREATE DATABASE "test_db"
2005-09-22 21:31:48 LOG:  connection received: host=192.168.10.60 port=47044
2005-09-22 21:31:48 LOG:  connection authorized: user=postgres database=template1
2005-09-22 21:31:48 LOG:  query: begin; select getdatabaseencoding(); commit
2005-09-22 21:31:48 LOG:  duration: 0.000630 sec
2005-09-22 21:31:48 LOG:  query: SELECT PGR_SYSTEM_COMMAND_FUNCTION(3,1127392308,986275,1)
2005-09-22 21:31:48 LOG:  duration: 0.000115 sec
2005-09-22 21:31:48 LOG:  query: SELECT PGR_SYSTEM_COMMAND_FUNCTION(8,16,0,1)
2005-09-22 21:31:48 LOG:  duration: 0.000082 sec
2005-09-22 21:31:49 LOG:  query: CREATE DATABASE "test_db"
2005-09-22 21:31:49 ERROR:  CREATE DATABASE: source database "template1" is being accessed by other users


--Replicate(joker01)
DEBUG:PGRdo_replicate():query :: CREATE DATABASE "test_db"
DEBUG:transaction_status: 0,0
DEBUG:cmdSts=Q
DEBUG:cmdType=O
DEBUG:port=5435
DEBUG:pid=28937
DEBUG:from_host=127.0.0.1
DEBUG:dbName=template1
DEBUG:userName=postgres
DEBUG:recieve sec=1127392308
DEBUG:recieve usec=986275
DEBUG:query_size=25
DEBUG:query=CREATE DATABASE "test_db"
DEBUG:sem_lock [1] req
DEBUG:sem_lock [1] got it
DEBUG:pgr_createConn():PQsetdbLogin host[192.168.10.30] port[5435] db[template1] user[postgres]
DEBUG:pgr_createConn():PQsetdbLogin ok!!
DEBUG:start thread_send_cluster()
DEBUG:send_replicate_packet_to_server():sync_command(SELECT PGR_SYSTEM_COMMAND_FUNCTION(3,1127392308,986275,1) )
DEBUG:pgr_createConn():PQsetdbLogin host[192.168.10.40] port[5435] db[template1] user[postgres]
DEBUG:(null) sync_command returns SELECT PGR_SYSTEM_COMMAND_FUNCTION(3,1127392308,986275,1)
DEBUG:send_replicate_packet_to_server():sync_command(SELECT PGR_SYSTEM_COMMAND_FUNCTION(8,16,0,1) )
DEBUG:send_replicate_packet_to_server():sync_command returns (null)
DEBUG:pgr_createConn():PQsetdbLogin ok!!
DEBUG:start thread_send_cluster()
DEBUG:send_replicate_packet_to_server():sync_command(SELECT PGR_SYSTEM_COMMAND_FUNCTION(3,1127392308,986275,1) )
DEBUG:(null) sync_command returns SELECT PGR_SYSTEM_COMMAND_FUNCTION(3,1127392308,986275,1)
DEBUG:send_replicate_packet_to_server():sync_command(SELECT PGR_SYSTEM_COMMAND_FUNCTION(8,16,0,1) )
DEBUG:send_replicate_packet_to_server():sync_command returns (null)
DEBUG:send_replicate_packet_to_server():PQexec send :CREATE DATABASE "test_db"
DEBUG:send_replicate_packet_to_server():PQexec returns :CREATE DATABASE
DEBUG:deleteTransactionTbl():
DEBUG:deleteTransactionTbl():
DEBUG:deleteTransactionTbl():
DEBUG:thread_send_cluster():pthread_exit[0]
DEBUG:send_replicate_packet_to_server():PQexec send :CREATE DATABASE "test_db"
DEBUG:send_replicate_packet_to_server():PQexec returns :
DEBUG:deleteTransactionTbl():
DEBUG:deleteTransactionTbl():
DEBUG:deleteTransactionTbl():
DEBUG:thread_send_cluster():pthread_exit[1]
DEBUG:sem_unlock[1]

以上。

--
NTT SP研 OSP 長谷川雅一 <hasegawa.masaichi @ lab.ntt.co.jp>



pgcluster メーリングリストの案内