Pgpool2 often throws coredumps. Here is backtrace from gdb: LC_ALL=en_US.utf-8 echo "bt"|gdb -q /usr/bin/pgpool 'core-1361713784-102-6-!usr!bin!pgpool-29562' Reading symbols from /usr/bin/pgpool...Reading symbols from /usr/lib64/debug/usr/bin/pgpool.debug...done. done. [New LWP 29562] warning: Could not load shared library symbols for linux-vdso.so.1. Do you need "set solib-search-path" or "set sysroot"? [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Core was generated by `pgpool: listonos'. Program terminated with signal 6, Aborted. #0 0x00000380cfbe0b45 in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 64 ../nptl/sysdeps/unix/sysv/linux/raise.c: Nie ma takiego pliku ani katalogu. (gdb) #0 0x00000380cfbe0b45 in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #1 0x00000380cfbe1fbb in __GI_abort () at abort.c:91 #2 0x00000380cfc2076f in __libc_message (do_abort=2, fmt=0x380cfd146d0 "*** glibc detected *** %s: %s: 0x%s ***\n") at ../sysdeps/unix/sysv/linux/libc_fatal.c:198 #3 0x00000380cfc264e6 in malloc_printerr (action=3, str=0x380cfd147e0 "double free or corruption (!prev)", ptr=<optimized out>) at malloc.c:5007 #4 0x00000054477700af in pool_discard_temp_query_cache (temp_cache=0x5447bac1a0) at pool_memqcache.c:2583 #5 0x0000005447770180 in pool_discard_query_cache_array (cache_array=0x5447b91c30) at pool_memqcache.c:2502 #6 0x0000005447770753 in pool_reset_memqcache_buffer () at pool_memqcache.c:1534 #7 0x000000544777252a in pool_handle_query_cache (backend=0x5447b79210, query=<optimized out>, node=<optimized out>, state=<optimized out>) at pool_memqcache.c:2996 #8 0x000000544776c443 in ReadyForQuery (frontend=0x5447b7b6f0, backend=0x5447b79210, send_ready=1 '\001', cache_commit=1 '\001') at pool_proto_modules.c:1760 #9 0x000000544776c99e in ProcessBackendResponse (frontend=0x5447b7b6f0, backend=0x5447b79210, state=0x3b623c83ccc, num_fields=0x3b623c83cd4) at pool_proto_modules.c:2590 #10 0x00000054477314d5 in pool_process_query (frontend=0x5447b7b6f0, backend=0x5447b79210, reset_request=0) at pool_process_query.c:274 #11 0x0000005447720f77 in do_child (unix_fd=4, inet_fd=5) at child.c:362 #12 0x000000544771ba57 in fork_a_child (unix_fd=4, inet_fd=5, id=23) at main.c:1243 #13 0x0000005447719524 in main (argc=<optimized out>, argv=<optimized out>) at main.c:661 (gdb) quit I'm using dev-db/postgresql-server-9.2.3-r1 on the same host. # emerge --info Portage 2.1.11.50 (hardened/linux/amd64, gcc-4.6.3, glibc-2.15-r3, 3.7.5-hardened x86_64) ================================================================= System uname: Linux-3.7.5-hardened-x86_64-Intel-R-_Core-TM-2_Duo_CPU_T7700_@_2.40GHz-with-gentoo-2.1 KiB Mem: 1497672 total, 925220 free KiB Swap: 524284 total, 524284 free Timestamp of tree: Sun, 24 Feb 2013 05:15:01 +0000 ld GNU ld (GNU Binutils) 2.22 ccache version 3.1.9 [enabled] app-shells/bash: 4.2_p37 dev-lang/python: 2.7.3-r2, 3.2.3 dev-util/ccache: 3.1.9 dev-util/pkgconfig: 0.28 sys-apps/baselayout: 2.1-r1 sys-apps/openrc: 0.11.8 sys-apps/sandbox: 2.5 sys-devel/autoconf: 2.69 sys-devel/automake: 1.11.6 sys-devel/binutils: 2.22-r1 sys-devel/gcc: 4.6.3, 4.7.2 sys-devel/gcc-config: 1.7.3 sys-devel/libtool: 2.4-r1 sys-devel/make: 3.82-r4 sys-kernel/linux-headers: 3.6 (virtual/os-headers) sys-libs/glibc: 2.15-r3 Repositories: gentoo ACCEPT_KEYWORDS="amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -march=native -frecord-gcc-switches -fno-unwind-tables -fno-asynchronous-unwind-tables -fpeel-loops -ftracer" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo" CXXFLAGS="-O2 -pipe -march=native -frecord-gcc-switches -fno-unwind-tables -fno-asynchronous-unwind-tables -fpeel-loops -ftracer" DISTDIR="/usr/portage/distfiles" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs ccache collision-protect compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://distfiles.gentoo.org" LANG="pl_PL.utf8" LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--sort-common" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_EXTRA_OPTS="-O" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://gentoo-mirror.in.cibet.pl/gentoo-portage/" USE="acl acpi amd64 bash-completion caps cli cracklib crypt cxx dri gpm hardened iconv ipv6 justify mmx mmxext modules mudflap multilib ncurses nls nptl openmp pax_kernel pcre readline session sse sse2 sse3 ssse3 threads unicode urandom vim-syntax xattr" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" PHP_TARGETS="php5-3" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python3_2" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="fbdev glint intel mach64 mga nouveau nv r128 radeon savage sis tdfx trident vesa via vmware dummy v4l" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, USE_PYTHON
pgpool2-3.2.3 doesn't fix this problem. I reported problem to upstream, problem is under investigation now. If fix will be available I'll add url to it.
(In reply to comment #1) > pgpool2-3.2.3 doesn't fix this problem. I reported problem to upstream, > problem is under investigation now. If fix will be available I'll add url to > it. Thanks for doing so.
Does this issue persist with the latest version (3.3.2)?
I've switched to pgbouncer but I'll try to check new version in a few days.
Issue still persist but in a little different form (segfault instead "glibc detected"). Segfault appears with "memory_cache_enabled=on" & "memqcache_method = 'shmem'", I didn't try use memcached. # echo "bt"|gdb -q /usr/bin/pgpool 'core-1391432197-102-11-!usr!bin!pgpool-15691' Reading symbols from /usr/bin/pgpool...Reading symbols from /usr/lib64/debug/usr/bin/pgpool.debug...done. done. [New LWP 15691] warning: Could not load shared library symbols for linux-vdso.so.1. Do you need "set solib-search-path" or "set sysroot"? [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". warning: no loadable sections found in added symbol-file system-supplied DSO at 0x342c38c6000 Core was generated by `pgpool: listonos'. Program terminated with signal 11, Segmentation fault. #0 0x0000006b76b457f6 in create_hash_key (key=key@entry=0x39d46950c50) at pool_memqcache.c:3680 3680 pool_memqcache.c: No such file or directory. (gdb) #0 0x0000006b76b457f6 in create_hash_key (key=key@entry=0x39d46950c50) at pool_memqcache.c:3680 #1 0x0000006b76b476d6 in pool_hash_search (key=key@entry=0x39d46950c50) at pool_memqcache.c:3492 #2 0x0000006b76b48612 in pool_find_item_on_shmem_cache (query_hash=0x39d46950c50) at pool_memqcache.c:2269 #3 pool_get_item_shmem_cache (sts=<synthetic pointer>, size=<synthetic pointer>, query_hash=0x39d46950c50) at pool_memqcache.c:2243 #4 pool_fetch_cache (len=<synthetic pointer>, buf=<synthetic pointer>, query=0x6b78e61f10 "SELECT 'niezgloszony' FROM exim_ipki_scoring WHERE zgloszony_do_sc=false AND data_maila=decode('MjAxNC0wMi0wMyAxMzo1MTozNi4yMjIyKzAx','base64')::text::timestamp ;", backend=0x6b78e38fb0) at pool_memqcache.c:319 #5 pool_fetch_from_memory_cache (frontend=frontend@entry=0x6b78e46de0, backend=backend@entry=0x6b78e38fb0, contents=0x6b78e61f10 "SELECT 'niezgloszony' FROM exim_ipki_scoring WHERE zgloszony_do_sc=false AND data_maila=decode('MjAxNC0wMi0wMyAxMzo1MTozNi4yMjIyKzAx','base64')::text::timestamp ;", foundp=foundp@entry=0x39d46950e88 "") at pool_memqcache.c:572 #6 0x0000006b76b3e94b in SimpleQuery (frontend=frontend@entry=0x6b78e46de0, backend=backend@entry=0x6b78e38fb0, len=len@entry=163, contents=contents@entry=0x6b78e61f10 "SELECT 'niezgloszony' FROM exim_ipki_scoring WHERE zgloszony_do_sc=false AND data_maila=decode('MjAxNC0wMi0wMyAxMzo1MTozNi4yMjIyKzAx','base64')::text::timestamp ;") at pool_proto_modules.c:174 #7 0x0000006b76b441f2 in ProcessFrontendResponse (frontend=frontend@entry=0x6b78e46de0, backend=backend@entry=0x6b78e38fb0) at pool_proto_modules.c:2509 #8 0x0000006b76b068ee in read_packets_and_process (frontend=frontend@entry=0x6b78e46de0, backend=backend@entry=0x6b78e38fb0, reset_request=reset_request@entry=0, state=state@entry=0x39d469515a0, num_fields=num_fields@entry=0x39d4695159e, cont=cont@entry=0x39d469515a4 "\001") at pool_process_query.c:4976 #9 0x0000006b76b06c79 in pool_process_query (frontend=frontend@entry=0x6b78e46de0, backend=backend@entry=0x6b78e38fb0, reset_request=reset_request@entry=0) at pool_process_query.c:260 #10 0x0000006b76af6d49 in do_child (unix_fd=unix_fd@entry=5, inet_fd=inet_fd@entry=6) at child.c:374 #11 0x0000006b76af1423 in fork_a_child (unix_fd=5, inet_fd=6, id=0) at main.c:1244 #12 0x0000006b76aef33a in main (argc=<optimized out>, argv=<optimized out>) at main.c:654 (gdb) quit
Looks fixed to me with 3.6.4.