[pgsql-jp: 34124] pgpoolのインストールに関して

Junji Shiokawa junji @ fork.co.jp
2004年 10月 17日 (日) 20:05:08 JST


#
# 長文にて失礼致します。
#

塩川と申します。

PHPにて構築するWebサイト用に、主に検索用途でpgpoolを利用したPostgreSQL
の負荷分散時の性能検証をしているのですが、思ったほど性能向上ができませ
ん。。

こういうものなのか、なにか方法が悪いのか行きづまってしまったので、ご教
授願えますでしょうか。。。


■ テスト環境 ---------------------------------------------------

             +-----------+
             | 1. Test   | 
             +-----------+
                   |
             +-----------+
             | 2. Web    |
             +-----------+
                   | 100Mbps
          +-------------------+
          |                   |
    +-----------+        +-----------+
    |  3. DB1   |        |  4. DB2   |
    +-----------+        +-----------+


[1] Testマシン
  OS:  Linux 2.6.8-gentoo-r3 (GentooLinux2004.2)
  CPU: Pentium(R) 4 CPU 2.80GHz
  MEM: 1GB
  APP: 試験用のソフトab2(アパッチベンチ)
  
[2] Webマシン
  OS:  Linux 2.4.21_rc6-gss (GentooLinux1.4)
  CPU: Celeron (Coppermine) 800MHz
  MEM: 256MB
  APP: Apache/2.0.50
       -----
       StartServers 120
       MinSpareServers 120
       MaxSpareServers 121
       MacClient 150
       -----

       PHP Version 4.3.8
       -----
       初期設定のまま
       -----

       pgpool 2.2
       -----
       ./configure --prefix=/usr --sysconfdir=/etc
       make
       make install
       ・daemontoolsでコマンドライン/usr/bin/pgpool -n -f /etc/pgpool.confで起動
       ・gcc version 3.2.3 20030422 (Gentoo Linux 1.4 3.2.3-r1, propolice)
       -----
       設定
       -----
       listen_addresses = ''
       port = 5432
       backend_host_name = 'db1'
       backend_port = 5432
       secondary_backend_host_name = 'db2'
       secondary_backend_port = 5432
       num_init_children = 100
       max_pool = 2
       connection_life_time = 0
       replication_mode = true
       replication_strict = true
       replication_timeout = 1000
       load_balance_mode = true
       weight_master = 5
       weight_secondary = 5
       replication_stop_on_mismatch = false
       -----
  
[3] DB1
  OS:  2.4.25_pre7-gss-r2
  CPU: Celeron(R) CPU 1.80GHz
  MEM: 128MB
  APP: PostgreSQL 7.4.5
       -----
       tcpip_socket = true
       max_connections = 302
       log_connections = true
       log_duration = true
       log_statement = true
       -----

[4] DB2 (DB1とまったく同じ構成のマシン)


■ 試験準備 ---------------------------------------------------------

1. データベースの準備

   # DB1サービスの開始
   root @ db1[~]svc -u /service/postgresql

   postgres @ db1[~]createuser -D -A pgpooltest

   postgres @ db1[~]createdb pgpooltest

   postgres @ db1[~]pgbench -i -U pgpooltest

   # DB1の接続の確認と単体性能チェック
   postgres @ web[~]pgbench -c 100 -v -S -C -U pgpooltest -d pgpooltest -h db1 > db1.s1.out 2>&1
-----
1回目
pghost: db1 pgport: (null) nclients: 100 nxacts: 10 dbName: pgpooltest
transaction type: SELECT only
scaling factor: 1
number of clients: 100
number of transactions per client: 10
number of transactions actually processed: 1000/1000
tps = 83.556932 (including connections establishing)
tps = 83.556946 (excluding connections establishing)
2回目
pghost: db1 pgport: (null) nclients: 100 nxacts: 10 dbName: pgpooltest
transaction type: SELECT only
scaling factor: 1
number of clients: 100
number of transactions per client: 10
number of transactions actually processed: 1000/1000
tps = 82.985341 (including connections establishing)
tps = 82.985348 (excluding connections establishing)
3回目
pghost: db1 pgport: (null) nclients: 100 nxacts: 10 dbName: pgpooltest
transaction type: SELECT only
scaling factor: 1
number of clients: 100
number of transactions per client: 10
number of transactions actually processed: 1000/1000
tps = 80.471706 (including connections establishing)
tps = 80.471712 (excluding connections establishing)
-----

   # DB2はどうか。
   postgres @ web[~]pgbench -c 100 -v -S -C -U pgpooltest -d pgpooltest -h db1 > db2.s1.out 2>&1
-----
1回目
pghost: db2 pgport: (null) nclients: 100 nxacts: 10 dbName: pgpooltest
transaction type: SELECT only
scaling factor: 1
number of clients: 100
number of transactions per client: 10
number of transactions actually processed: 1000/1000
tps = 85.348431 (including connections establishing)
tps = 85.348438 (excluding connections establishing)
2回目
pghost: db2 pgport: (null) nclients: 100 nxacts: 10 dbName: pgpooltest
transaction type: SELECT only
scaling factor: 1
number of clients: 100
number of transactions per client: 10
number of transactions actually processed: 1000/1000
tps = 83.933267 (including connections establishing)
tps = 83.933274 (excluding connections establishing)
3回目
pghost: db2 pgport: (null) nclients: 100 nxacts: 10 dbName: pgpooltest
transaction type: SELECT only
scaling factor: 1
number of clients: 100
number of transactions per client: 10
number of transactions actually processed: 1000/1000
tps = 83.809855 (including connections establishing)
tps = 83.809862 (excluding connections establishing)
-----

   # DBの停止
   root @ db1[~]svc -d /service/postgresql
   root @ db2[~]svc -d /service/postgresql

   # DB1とDB2の同期
   root @ db1[~]rsync -azv -e ssh /var/lib/postgresql/data db2:/var/lib/postgresql

   # DB1サービスの再開
   root @ db1[~]svc -u /service/postgresql
-----
LOG:  could not create IPv6 socket: Address family not supported by protocol
LOG:  database system was shut down at ****
LOG:  checkpoint record is at 0/5E62294
LOG:  redo record is at 0/5E62294; undo record is at 0/0; shutdown TRUE
LOG:  next transaction ID: 60573; next OID: 124168
LOG:  database system is ready
-----

   # DB2サービスの開始
   root @ db2[~]svc -u /service/postgresql
-----
LOG:  could not create IPv6 socket: Address family not supported by protocol
LOG:  database system was shut down at ****
LOG:  checkpoint record is at 0/5E62294
LOG:  redo record is at 0/5E62294; undo record is at 0/0; shutdown TRUE
LOG:  next transaction ID: 60573; next OID: 124168
LOG:  database system is ready
------

   # pgpoolの起動
   root @ web[~]svc -u /service/pgpool

   # pgpoolの接続確認と単体性能チェック
   postgres @ web[~]pgbench -c 100 -v -S -C -U pgpooltest -d pgpooltest > pgpool.s1.out 2>&1
-----
1回目
pghost:  pgport: (null) nclients: 100 nxacts: 10 dbName: pgpooltest
transaction type: SELECT only
scaling factor: 1
number of clients: 100
number of transactions per client: 10
number of transactions actually processed: 1000/1000
tps = 104.042996 (including connections establishing)
tps = 104.043007 (excluding connections establishing)
2回目
pghost:  pgport: (null) nclients: 100 nxacts: 10 dbName: pgpooltest
transaction type: SELECT only
scaling factor: 1
number of clients: 100
number of transactions per client: 10
number of transactions actually processed: 1000/1000
tps = 120.390127 (including connections establishing)
tps = 120.390141 (excluding connections establishing)
3回目(いい感じです)
pghost:  pgport: (null) nclients: 100 nxacts: 10 dbName: pgpooltest
transaction type: SELECT only
scaling factor: 1
number of clients: 100
number of transactions per client: 10
number of transactions actually processed: 1000/1000
tps = 120.062807 (including connections establishing)
tps = 120.062807 (excluding connections establishing)
-----

   # 再度DBの掃除
   root @ web[~]svc -d /service/pgpool
   root @ db1[~]svc -d /service/postgresql
   root @ db2[~]svc -d /service/postgresql
   root @ db1[~]rsync -azv -e ssh /var/lib/postgresql/data db2:/var/lib/postgresql
   root @ db1[~]svc -u /service/postgresql
   root @ db2[~]svc -u /service/postgresql
   root @ web[~]svc -u /service/pgpool

■ PHP性能試験 ---------------------------------------------------------

   # SELECT 試験用のスクリプト
   http://web1/pgpooltest/connect.php?lb=0
   lbパラメータ: 0 DB1に接続 1 DB2に接続 2 pgpoolに接続
----
<html><body><?php

$lb=$_GET[lb];
switch ($lb) {

    case 0;
    $conn = "host=db2 dbname=pgpooltest user=pgpooltest";
    break;

    case 1;
    $conn = "host=db1 dbname=pgpooltest user=pgpooltest";
    break;

    case 2;
    $conn = "dbname=pgpooltest user=pgpooltest";
    break;

}
 
srand((double) microtime() * 1000000);
$num = rand(0, 9);
$sql="SELECT * from accounts where text(aid) like '". $num ."0%0%' LIMIT 10";

$db = pg_connect($conn);
$resultSet = pg_exec($db,$sql);
$resultNum = pg_numrows($resultSet);

print $conn . "<br>";
print $sql ."<br>";
print $resultNum . "<hr>";

while($i < $resultNum) {
    $rec = pg_fetch_object($resultSet,$i);
    print "$rec->aid<br>";
    $i++;
}
pg_close();

?></body></html>
-----

   #ブラウザによる出力結果
-----
host=db1 dbname=pgpooltest user=pgpooltest
SELECT * from accounts where text(aid) like '40%0%' LIMIT 10

10400
4000
4001
4002
4004
4005
4006
4007
4008
4009
-----

   #テスト環境より試験開始
   #まずはDB1
   root @ test[~]ab2 -n 1000 -c 100 'http://web/pgpooltest/connect.php?lb=0'
-----
1回目
Concurrency Level:      100
Time taken for tests:   39.944246 seconds
Complete requests:      1000
Failed requests:        394
   (Connect: 0, Length: 394, Exceptions: 0)
Write errors:           0
Total transferred:      441736 bytes
HTML transferred:       218736 bytes
Requests per second:    25.03 [#/sec] (mean)
Time per request:       3994.424 [ms] (mean)
Time per request:       39.944 [ms] (mean, across all concurrent requests)
Transfer rate:          10.79 [Kbytes/sec] received
2回目
Concurrency Level:      100
Time taken for tests:   37.684166 seconds
Complete requests:      1000
Failed requests:        375
   (Connect: 0, Length: 375, Exceptions: 0)
Write errors:           0
Total transferred:      442689 bytes
HTML transferred:       219689 bytes
Requests per second:    26.54 [#/sec] (mean)
Time per request:       3768.417 [ms] (mean)
Time per request:       37.684 [ms] (mean, across all concurrent requests)
Transfer rate:          11.46 [Kbytes/sec] received
3回目
Concurrency Level:      100
Time taken for tests:   41.834049 seconds
Complete requests:      1000
Failed requests:        408
   (Connect: 0, Length: 408, Exceptions: 0)
Write errors:           0
Total transferred:      441032 bytes
HTML transferred:       218032 bytes
Requests per second:    23.90 [#/sec] (mean)
Time per request:       4183.405 [ms] (mean)
Time per request:       41.834 [ms] (mean, across all concurrent requests)
Transfer rate:          10.28 [Kbytes/sec] received
-----

   #DB2
   root @ test[~]ab2 -n 1000 -c 100 'http://web/pgpooltest/connect.php?lb=1'
-----
1回目
Concurrency Level:      100
Time taken for tests:   39.385615 seconds
Complete requests:      1000
Failed requests:        406
   (Connect: 0, Length: 406, Exceptions: 0)
Write errors:           0
Total transferred:      441755 bytes
HTML transferred:       218755 bytes
Requests per second:    25.39 [#/sec] (mean)
Time per request:       3938.562 [ms] (mean)
Time per request:       39.386 [ms] (mean, across all concurrent requests)
Transfer rate:          10.94 [Kbytes/sec] received
2回目
Concurrency Level:      100
Time taken for tests:   38.182400 seconds
Complete requests:      1000
Failed requests:        779
   (Connect: 0, Length: 779, Exceptions: 0)
Write errors:           0
Total transferred:      442102 bytes
HTML transferred:       219102 bytes
Requests per second:    26.19 [#/sec] (mean)
Time per request:       3818.240 [ms] (mean)
Time per request:       38.182 [ms] (mean, across all concurrent requests)
Transfer rate:          11.29 [Kbytes/sec] received
3回目
Concurrency Level:      100
Time taken for tests:   41.849880 seconds
Complete requests:      1000
Failed requests:        811
   (Connect: 0, Length: 811, Exceptions: 0)
Write errors:           0
Total transferred:      440669 bytes
HTML transferred:       217669 bytes
Requests per second:    23.89 [#/sec] (mean)
Time per request:       4184.988 [ms] (mean)
Time per request:       41.850 [ms] (mean, across all concurrent requests)
Transfer rate:          10.27 [Kbytes/sec] received
-----

   #いよいよpgpool
   root @ test[~]ab2 -n 1000 -c 100 'http://web/pgpooltest/connect.php?lb=3'
-----
1回目(あれ?)
Concurrency Level:      100
Time taken for tests:   35.78501 seconds
Complete requests:      1000
Failed requests:        354
   (Connect: 0, Length: 354, Exceptions: 0)
Write errors:           0
Total transferred:      435614 bytes
HTML transferred:       212614 bytes
Requests per second:    28.51 [#/sec] (mean)
Time per request:       3507.850 [ms] (mean)
Time per request:       35.079 [ms] (mean, across all concurrent requests)
Transfer rate:          12.12 [Kbytes/sec] received
2回目(うーん)
Concurrency Level:      100
Time taken for tests:   39.137893 seconds
Complete requests:      1000
Failed requests:        898
   (Connect: 0, Length: 898, Exceptions: 0)
Write errors:           0
Total transferred:      437088 bytes
HTML transferred:       214088 bytes
Requests per second:    25.55 [#/sec] (mean)
Time per request:       3913.789 [ms] (mean)
Time per request:       39.138 [ms] (mean, across all concurrent requests)
Transfer rate:          10.88 [Kbytes/sec] received
3回目(あまり変らない。。)
Concurrency Level:      100
Time taken for tests:   36.796560 seconds
Complete requests:      1000
Failed requests:        374
   (Connect: 0, Length: 374, Exceptions: 0)
Write errors:           0
Total transferred:      436711 bytes
HTML transferred:       213711 bytes
Requests per second:    27.18 [#/sec] (mean)
Time per request:       3679.656 [ms] (mean)
Time per request:       36.797 [ms] (mean, across all concurrent requests)
Transfer rate:          11.58 [Kbytes/sec] received
-----

■ 感想 ---------------------------------------------------------

パラメータはいろいろいじくりまわしていろんなパターンを考えてみたのです
が、状況はあまり変らず、根本的なところで間違いを侵しているか、こういうも
のなのか。。。

・psqlでpgpool(デバックモード)に接続し、SELECT文を発行したクエリのDB1
とDB2のログをみると明かにどっちにも同じSELECT文を投げている形跡があり
ます。これはこーいうものなのですか?

・pgbenchでは約1.5倍の速度UPがみられたのですが、PHPではあまり変らない
のが不可解です。DBへの接続はpgsql_connect,pgsql_pconnect,DB::connectを
試してみましたが、ここらへんの接続方法で違いがでるものでしょうか。。。

以上、どうかよろしくお願い致します。

■ 補足・ログ ---------------------------------------------------------

web
-----
postgres @ web[~]psql -U pgpooltest -d pgpooltest
pgpooltest=> select * from accounts limit 30;
-----

DB1
-----
LOG:  connection received: host=172.16.0.18 port=46576
LOG:  connection authorized: user=pgpooltest database=pgpooltest
LOG:  statement: begin; select getdatabaseencoding(); commit
LOG:  duration: 1.789 ms
LOG:  statement: BEGIN; SELECT usesuper FROM pg_catalog.pg_user WHERE usename = 'pgpooltest'; COMMIT
LOG:  duration: 4.584 ms
LOG:  statement: select * from accounts where aid = 101;
LOG:  duration: 0.646 ms
LOG:  statement: begin;
LOG:  duration: 0.124 ms
LOG:  statement: select * from accounts where aid = 102;
LOG:  duration: 0.528 ms
LOG:  statement: select * from accounts where aid = 103;
LOG:  duration: 0.511 ms
LOG:  statement: select * from accounts where aid = 104;
LOG:  duration: 0.515 ms
LOG:  statement: commit;
LOG:  duration: 0.185 ms
-----

DB2
-----
LOG:  connection received: host=172.16.0.18 port=46577
LOG:  connection authorized: user=pgpooltest database=pgpooltest
LOG:  statement: begin; select getdatabaseencoding(); commit
LOG:  duration: 1.698 ms
LOG:  statement: BEGIN; SELECT usesuper FROM pg_catalog.pg_user WHERE usename = 'pgpooltest'; COMMIT
LOG:  duration: 4.470 ms
LOG:  statement: select * from accounts where aid = 101;
LOG:  duration: 0.723 ms
LOG:  statement: begin;
LOG:  duration: 0.207 ms
LOG:  statement: select * from accounts where aid = 102;
LOG:  duration: 0.586 ms
LOG:  statement: select * from accounts where aid = 103;
LOG:  duration: 0.602 ms
LOG:  statement: select * from accounts where aid = 104;
LOG:  duration: 0.569 ms
LOG:  statement: commit;
LOG:  duration: 0.256 ms
-----

pgpool_log [ちょっと長いのでところどころ]
-----
DEBUG: pid 10710: I am 10710 accept fd 5
DEBUG: pid 10710: Protocol Major: 2 Minor: 0 database: pgpooltest user: pgpooltest
DEBUG: pid 10710: read kind from frontend Q(51)
DEBUG: pid 10710: pool_read_string: read all from pending data. po:0 len:0
DEBUG: pid 10710: Query: begin; select getdatabaseencoding(); commit
DEBUG: pid 10710: read kind from backend C
DEBUG: pid 10710: pool_process_query: waiting for secondary for data ready
DEBUG: pid 10710: pool_read_string: read all from pending data. po:6 len:72
DEBUG: pid 10710: pool_read_string: read all from pending data. po:6 len:72
DEBUG: pid 10710: Complete Command Response: string: "BEGIN"
DEBUG: pid 10710: read kind from backend pending data P len: 71 po: 7
DEBUG: pid 10710: pool_read_string: read all from pending data. po:13 len:65
DEBUG: pid 10710: pool_read_string: read all from pending data. po:13 len:65
DEBUG: pid 10710: read kind from backend pending data T len: 64 po: 14
DEBUG: pid 10710: pool_read_string: read all from pending data. po:36 len:42
DEBUG: pid 10710: pool_read_string: read all from pending data. po:36 len:42
DEBUG: pid 10710: RowDescription: field size:64
DEBUG: pid 10710: read kind from backend pending data D len: 31 po: 47
DEBUG: pid 10710: AsciiRow: len: 9 data: SQL_ASCII
DEBUG: pid 10710: read kind from backend pending data C len: 16 po: 62
DEBUG: pid 10710: pool_read_string: read all from pending data. po:69 len:9
DEBUG: pid 10710: pool_read_string: read all from pending data. po:69 len:9
DEBUG: pid 10710: Complete Command Response: string: "SELECT"
DEBUG: pid 10710: read kind from backend pending data C len: 8 po: 70
DEBUG: pid 10710: pool_read_string: read all from pending data. po:77 len:1
DEBUG: pid 10710: pool_read_string: read all from pending data. po:77 len:1
DEBUG: pid 10710: Complete Command Response: string: "COMMIT"
DEBUG: pid 10710: read kind from backend pending data Z len: 0 po: 0
DEBUG: pid 10710: read kind from frontend Q(51)
DEBUG: pid 10710: pool_read_string: read all from pending data. po:0 len:0
DEBUG: pid 10710: Query: BEGIN; SELECT usesuper FROM pg_catalog.pg_user WHERE usename = 'pgpooltest'; COMMIT
DEBUG: pid 10710: read kind from backend C
DEBUG: pid 10710: pool_process_query: waiting for secondary for data ready
DEBUG: pid 10710: pool_read_string: read all from pending data. po:6 len:53
DEBUG: pid 10710: pool_read_string: read all from pending data. po:6 len:53
DEBUG: pid 10710: Complete Command Response: string: "BEGIN"
DEBUG: pid 10710: read kind from backend pending data P len: 52 po: 7
DEBUG: pid 10710: pool_read_string: read all from pending data. po:13 len:46
DEBUG: pid 10710: pool_read_string: read all from pending data. po:13 len:46
DEBUG: pid 10710: read kind from backend pending data T len: 45 po: 14
DEBUG: pid 10710: pool_read_string: read all from pending data. po:25 len:34
DEBUG: pid 10710: pool_read_string: read all from pending data. po:25 len:34
DEBUG: pid 10710: RowDescription: field size:1
DEBUG: pid 10710: read kind from backend pending data D len: 23 po: 36
DEBUG: pid 10710: AsciiRow: len: 1 data: f
DEBUG: pid 10710: read kind from backend pending data C len: 16 po: 43
DEBUG: pid 10710: pool_read_string: read all from pending data. po:50 len:9
DEBUG: pid 10710: pool_read_string: read all from pending data. po:50 len:9
DEBUG: pid 10710: Complete Command Response: string: "SELECT"
DEBUG: pid 10710: read kind from backend pending data C len: 8 po: 51
DEBUG: pid 10710: pool_read_string: read all from pending data. po:58 len:1
DEBUG: pid 10710: pool_read_string: read all from pending data. po:58 len:1
DEBUG: pid 10710: Complete Command Response: string: "COMMIT"
DEBUG: pid 10710: read kind from backend pending data Z len: 0 po: 0

DEBUG: pid 10710: read kind from frontend Q(51)
DEBUG: pid 10710: pool_read_string: read all from pending data. po:0 len:0
DEBUG: pid 10710: Query: select * from accounts where aid = 101;
DEBUG: pid 10710: read kind from backend P
DEBUG: pid 10710: pool_process_query: waiting for secondary for data ready
DEBUG: pid 10710: pool_read_string: read all from pending data. po:6 len:183
DEBUG: pid 10710: pool_read_string: read all from pending data. po:6 len:183
DEBUG: pid 10710: read kind from backend pending data T len: 182 po: 7
DEBUG: pid 10710: pool_read_string: read all from pending data. po:13 len:176
DEBUG: pid 10710: pool_read_string: read all from pending data. po:13 len:176
DEBUG: pid 10710: RowDescription: field size:4
DEBUG: pid 10710: pool_read_string: read all from pending data. po:27 len:162
DEBUG: pid 10710: pool_read_string: read all from pending data. po:27 len:162
DEBUG: pid 10710: RowDescription: field size:4
DEBUG: pid 10710: pool_read_string: read all from pending data. po:46 len:143
DEBUG: pid 10710: pool_read_string: read all from pending data. po:46 len:143
DEBUG: pid 10710: RowDescription: field size:4
DEBUG: pid 10710: pool_read_string: read all from pending data. po:63 len:126
DEBUG: pid 10710: pool_read_string: read all from pending data. po:63 len:126
DEBUG: pid 10710: RowDescription: field size:65535
DEBUG: pid 10710: read kind from backend pending data D len: 115 po: 74
DEBUG: pid 10710: AsciiRow: len: 3 data: 101
DEBUG: pid 10710: AsciiRow: len: 1 data: 1
DEBUG: pid 10710: AsciiRow: len: 1 data: 0
DEBUG: pid 10710: AsciiRow: len: 84 data:                                                                                     
DEBUG: pid 10710: read kind from backend pending data C len: 8 po: 181
DEBUG: pid 10710: pool_read_string: read all from pending data. po:188 len:1
DEBUG: pid 10710: pool_read_string: read all from pending data. po:188 len:1
DEBUG: pid 10710: Complete Command Response: string: "SELECT"
DEBUG: pid 10710: read kind from backend pending data Z len: 0 po: 0

DEBUG: pid 10710: read kind from backend pending data C len: 8 po: 181
DEBUG: pid 10710: pool_read_string: read all from pending data. po:188 len:1
DEBUG: pid 10710: pool_read_string: read all from pending data. po:188 len:1
DEBUG: pid 10710: Complete Command Response: string: "SELECT"
DEBUG: pid 10710: read kind from backend pending data Z len: 0 po: 0
DEBUG: pid 10710: read kind from frontend Q(51)
DEBUG: pid 10710: pool_read_string: read all from pending data. po:0 len:0
DEBUG: pid 10710: Query: select * from accounts where aid = 103;
DEBUG: pid 10710: read kind from backend P
DEBUG: pid 10710: pool_process_query: waiting for secondary for data ready
DEBUG: pid 10710: pool_read_string: read all from pending data. po:6 len:183
DEBUG: pid 10710: pool_read_string: read all from pending data. po:6 len:183
DEBUG: pid 10710: read kind from backend pending data T len: 182 po: 7
DEBUG: pid 10710: pool_read_string: read all from pending data. po:13 len:176
DEBUG: pid 10710: pool_read_string: read all from pending data. po:13 len:176
DEBUG: pid 10710: RowDescription: field size:4
DEBUG: pid 10710: pool_read_string: read all from pending data. po:27 len:162
DEBUG: pid 10710: pool_read_string: read all from pending data. po:27 len:162
DEBUG: pid 10710: RowDescription: field size:4
DEBUG: pid 10710: pool_read_string: read all from pending data. po:46 len:143
DEBUG: pid 10710: pool_read_string: read all from pending data. po:46 len:143
DEBUG: pid 10710: RowDescription: field size:4
DEBUG: pid 10710: pool_read_string: read all from pending data. po:63 len:126
DEBUG: pid 10710: pool_read_string: read all from pending data. po:63 len:126
DEBUG: pid 10710: RowDescription: field size:65535
DEBUG: pid 10710: read kind from backend pending data D len: 115 po: 74
DEBUG: pid 10710: AsciiRow: len: 3 data: 103
DEBUG: pid 10710: AsciiRow: len: 1 data: 1
DEBUG: pid 10710: AsciiRow: len: 1 data: 0
DEBUG: pid 10710: AsciiRow: len: 84 data:                                                                                     
DEBUG: pid 10710: read kind from backend pending data C len: 8 po: 181
DEBUG: pid 10710: pool_read_string: read all from pending data. po:188 len:1
DEBUG: pid 10710: pool_read_string: read all from pending data. po:188 len:1
DEBUG: pid 10710: Complete Command Response: string: "SELECT"
DEBUG: pid 10710: read kind from backend pending data Z len: 0 po: 0
DEBUG: pid 10710: read kind from frontend Q(51)
DEBUG: pid 10710: pool_read_string: read all from pending data. po:0 len:0
DEBUG: pid 10710: Query: select * from accounts where aid = 104;
DEBUG: pid 10710: read kind from backend P
DEBUG: pid 10710: pool_process_query: waiting for secondary for data ready
DEBUG: pid 10710: pool_read_string: read all from pending data. po:6 len:183
DEBUG: pid 10710: pool_read_string: read all from pending data. po:6 len:183
DEBUG: pid 10710: read kind from backend pending data T len: 182 po: 7
DEBUG: pid 10710: pool_read_string: read all from pending data. po:13 len:176
DEBUG: pid 10710: pool_read_string: read all from pending data. po:13 len:176
DEBUG: pid 10710: RowDescription: field size:4
DEBUG: pid 10710: pool_read_string: read all from pending data. po:27 len:162
DEBUG: pid 10710: pool_read_string: read all from pending data. po:27 len:162
DEBUG: pid 10710: RowDescription: field size:4
DEBUG: pid 10710: pool_read_string: read all from pending data. po:46 len:143
DEBUG: pid 10710: pool_read_string: read all from pending data. po:46 len:143
DEBUG: pid 10710: RowDescription: field size:4
DEBUG: pid 10710: pool_read_string: read all from pending data. po:63 len:126
DEBUG: pid 10710: pool_read_string: read all from pending data. po:63 len:126
DEBUG: pid 10710: RowDescription: field size:65535
DEBUG: pid 10710: read kind from backend pending data D len: 115 po: 74
DEBUG: pid 10710: AsciiRow: len: 3 data: 104
DEBUG: pid 10710: AsciiRow: len: 1 data: 1
DEBUG: pid 10710: AsciiRow: len: 1 data: 0
DEBUG: pid 10710: AsciiRow: len: 84 data:                                                                                     
DEBUG: pid 10710: read kind from backend pending data C len: 8 po: 181
DEBUG: pid 10710: pool_read_string: read all from pending data. po:188 len:1
DEBUG: pid 10710: pool_read_string: read all from pending data. po:188 len:1
DEBUG: pid 10710: Complete Command Response: string: "SELECT"
DEBUG: pid 10710: read kind from backend pending data Z len: 0 po: 0
DEBUG: pid 10710: read kind from frontend Q(51)
DEBUG: pid 10710: pool_read_string: read all from pending data. po:0 len:0
DEBUG: pid 10710: Query: commit;
DEBUG: pid 10710: read kind from backend C
DEBUG: pid 10710: pool_process_query: waiting for secondary for data ready
DEBUG: pid 10710: pool_read_string: read all from pending data. po:7 len:1
DEBUG: pid 10710: pool_read_string: read all from pending data. po:7 len:1
DEBUG: pid 10710: Complete Command Response: string: "COMMIT"
DEBUG: pid 10710: read kind from backend pending data Z len: 0 po: 0
-----

|fork corporation
+-----



pgsql-jp メーリングリストの案内