[pgsql-jp: 32888] Re: pgpool +長いデータの INSERT
    Tatsuo Ishii
    t-ishii @ sra.co.jp
       
    2004年 5月  2日 (日) 08:59:54 JST
    
    
  
石井です.
ご報告ありがとうございます.
> 川村と申します。
> 
> FreeBSD 5.2.1-RELEASE-p4 上で、pgpool-1.0 と PostgreSQL-7.3.5 を
> 動作させています。
> 
> pgpool 経由で postmaster へ、例えば 40000 byte 位の文字列データを
> INSERT するクエリを送ると、pgpool が core dump する現象が起きてい
> ます。pgpool を通さずに、postmaster 直だと問題ありません。
> 
> gdb でバックトレースを取ると、
> 
> -----------------------------------------------------------------------
> Program received signal SIGSEGV, Segmentation fault.
> 0x281413f8 in __vfprintf () from /lib/libc.so.5
> (gdb) bt
> #0  0x281413f8 in __vfprintf () from /lib/libc.so.5
> #1  0x2813d3a3 in snprintf () from /lib/libc.so.5
> #2  0x0804ce9f in AsciiRow (frontend=0x8058040, backend=0x80620a0,
>     num_fields=3) at pool_process_query.c:632
> #3  0x0804c46e in pool_process_query (frontend=0x8058040, backend=0x80620a0,
>     connection_reuse=0) at pool_process_query.c:270
> #4  0x0804a173 in do_child (unix_fd=4, inet_fd=5) at child.c:212
> #5  0x08049903 in fork_a_child (unix_fd=4, inet_fd=5) at main.c:363
> #6  0x080493c3 in main (argc=1, argv=0x8062094) at main.c:192
> #7  0x080490f2 in _start ()
> (gdb)
> -----------------------------------------------------------------------
> 
> このようになっており、試しに AscciRow() 内の snprinf() 直前に
> breakpoint 仕掛けていろいろ調べてみたのですが、いまいち追いき
> れていません。
AsciiRow()はINSERTのときには使用されませんが,SELECTでは使われます.と
いうことは,INSERTはできるが,その後SELECTしようとすると落ちる,と言う
理解でよろしいでしょうか?
--
Tatsuo Ishii
    
    
pgsql-jp メーリングリストの案内