I'm looking into this but with very little success.

Does any one experience the same problem with replication mode?
--
Tatsuo Ishii
SRA OSS, Inc. Japan

> I'm running pgpool-II-2.2.3 against PostgreSQL 8.4 on SLES 10.1.  After 
> running for awhile pgpool dumps core.  It continues to run, but it repeatedly 
> forks children and segfaults, filling the PG system db logs with messages 
> like:
> 
> :4a82d4e0.77ef::30703:1:2009-08-12 09:42:40.235 CDTLOG:  connection received: 
> host=[local]
> [local]:4a82d4e0.77ef::30703:2:2009-08-12 09:42:40.235 CDTLOG:  connection 
> authorized: user=pgpool database=pgpool
> [local]:4a82d4e0.77ef::30703:3:2009-08-12 09:42:40.296 CDTLOG:  unexpected 
> EOF on client connection
> [local]:4a82d4e0.77ef::30703:4:2009-08-12 09:42:40.296 CDTLOG:  
> disconnection: session time: 0:00:00.061 user=pgpool database=pgpool host
> 
> pgpool generates sets of these messages every few milliseconds.
> 
> It looks to me like the connection_info pointer has gotten corrupted:
> 
> GNU gdb 6.4
> Copyright 2005 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "x86_64-suse-linux"...Using host libthread_db 
> library "/lib64/libthread_db.so.1".
> 
> Core was generated by `pgpool:                                                
>                        '.
> Program terminated with signal 11, Segmentation fault.
> Reading symbols from /opt/pg-8.4.0/lib/libpq.so.5...done.
> Loaded symbols for /opt/pg-8.4.0/lib/libpq.so.5
> Reading symbols from /opt/pgpool/lib/libpcp.so.0...done.
> Loaded symbols for /opt/pgpool/lib/libpcp.so.0
> Reading symbols from /lib64/libresolv.so.2...done.
> Loaded symbols for /lib64/libresolv.so.2
> Reading symbols from /lib64/libnsl.so.1...done.
> Loaded symbols for /lib64/libnsl.so.1
> Reading symbols from /lib64/libm.so.6...done.
> Loaded symbols for /lib64/libm.so.6
> Reading symbols from /lib64/libc.so.6...done.
> Loaded symbols for /lib64/libc.so.6
> Reading symbols from /lib64/libcrypt.so.1...done.
> Loaded symbols for /lib64/libcrypt.so.1
> Reading symbols from /lib64/libpthread.so.0...done.
> Loaded symbols for /lib64/libpthread.so.0
> Reading symbols from /lib64/ld-linux-x86-64.so.2...done.
> Loaded symbols for /lib64/ld-linux-x86-64.so.2
> #0  0x00002b3505bd9b52 in memset () from /lib64/libc.so.6
> (gdb) where
> #0  0x00002b3505bd9b52 in memset () from /lib64/libc.so.6
> #1  0x0000000000423291 in pool_init_cp () at pool_connection_pool.c:72
> #2  0x00000000004076d9 in do_child (unix_fd=3, inet_fd=4) at child.c:154
> #3  0x0000000000404c39 in fork_a_child (unix_fd=3, inet_fd=4, id=8) at 
> main.c:828
> #4  0x0000000000406b96 in reaper () at main.c:1617
> #5  0x0000000000404021 in main (argc=6, argv=0x7fffa561c2a8) at main.c:474
> (gdb) up
> #1  0x0000000000423291 in pool_init_cp () at pool_connection_pool.c:72
> 72                      memset(pool_connection_pool[i].info, 0, 
> sizeof(ConnectionInfo));
> (gdb) l
> 67              memset(pool_connection_pool, 0, 
> sizeof(POOL_CONNECTION_POOL)*pool_config->max_pool);
> 68
> 69              for (i = 0; i < pool_config->max_pool; i++)
> 70              {
> 71                      pool_connection_pool[i].info = 
> &(MY_PROCESS_INFO.connection_info[i]);
> 72                      memset(pool_connection_pool[i].info, 0, 
> sizeof(ConnectionInfo));
> 73              }
> 74              return 0;
> 75      }
> 76
> (gdb) p my_proc_id
> $1 = 8
> (gdb) p pids[7].connection_info[0]
> $2 = {database = '\0' <repeats 63 times>, user = '\0' <repeats 31 times>, 
> major = 0, minor = 0, pid = -565575680, key = -1413945014, counter = 0, 
> create_time = 0,
>   load_balancing_node = 0}
> (gdb) p pids[8].connection_info[0]
> Cannot access memory at address 0x2e77741b8c5c0000
> 
> Running in parallel mode, no replication, no loadbalance:
> 
> num_init_children = 10
> max_pool = 4
> child_life_time = 300
> connection_life_time = 0
> child_max_connections = 0
> client_idle_limit = 0
> 
> Any suggestions on how to fix this?
> 
> 
> 
>       
> _______________________________________________
> Pgpool-general mailing list
> [email protected]
> http://pgfoundry.org/mailman/listinfo/pgpool-general
_______________________________________________
Pgpool-general mailing list
[email protected]
http://pgfoundry.org/mailman/listinfo/pgpool-general

Reply via email to