<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, May 4, 2017 at 1:12 PM, Tatsuo Ishii <span dir="ltr"><<a href="mailto:ishii@sraoss.co.jp" target="_blank">ishii@sraoss.co.jp</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Usama,<br>
<br>
Thank you for letting me know it. The problem only happens when node<br>
0 is stopped. The segfault happens while initializing pgpool child<br>
process starting up. The bug was introduced in commit<br>
18f95017586aacb7254bbccda18ba6<wbr>7c01468483 by me, sigh. Also 3.5 stable<br>
tree has the same problem. I have pushed fix to 3.6 and 3.5<br>
stable. More invasive fix was pushed to master branch.<br></blockquote><div><br></div><div>Thanks for fixing the issue. </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Because the bug is significant, probably we need to release new minor<br>
versions for 3.5 and 3.6.<br></blockquote><div><br></div><div>Yes that is correct, Since there is no way around for the issue and after the failover of first backend node the Pgpool-II service can effectively become unavailable because of this issue so we may need to expedite the next minor release.</div><div><br></div><div><br></div><div><br></div><div>Thanks</div><div>Best Regards.</div><div>Muhammad Usama</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Best regards,<br>
--<br>
Tatsuo Ishii<br>
SRA OSS, Inc. Japan<br>
English: <a href="http://www.sraoss.co.jp/index_en.php" rel="noreferrer" target="_blank">http://www.sraoss.co.jp/index_<wbr>en.php</a><br>
Japanese:<a href="http://www.sraoss.co.jp" rel="noreferrer" target="_blank">http://www.sraoss.co.<wbr>jp</a><br>
<div class="HOEnZb"><div class="h5"><br>
> Hi Ishii-San<br>
><br>
> I am getting the segmentation fault in Pgpool-II child process on master<br>
> and 3_6 stable branches.<br>
><br>
> Steps to reproduce.<br>
><br>
> 1-) Start the pgpool-II with two backend nodes (both PG up and running).<br>
> 2-) Stop one backend node (bin/pg_ctl -D data_5432/ stop)<br>
> 3-) pgpool-II will perform failover.<br>
> 4-) Connect to Pgpool-II using PSQL after failover is done.<br>
><br>
> Step 4 is producing the segmentation fault<br>
><br>
> The configuration file I was using for testing is attached and see below<br>
> the stack trace.<br>
><br>
> --stack trace--<br>
><br>
> [usama@localhost pgpool]$ gdb --core /tmp/core_pgpool.97854 bin/pgpool<br>
> GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-94.el7<br>
> Copyright (C) 2013 Free Software Foundation, Inc.<br>
> License GPLv3+: GNU GPL version 3 or later <<a href="http://gnu.org/licenses/gpl.html" rel="noreferrer" target="_blank">http://gnu.org/licenses/gpl.<wbr>html</a><br>
>><br>
> This is free software: you are free to change and redistribute it.<br>
> There is NO WARRANTY, to the extent permitted by law. Type "show copying"<br>
> and "show warranty" for details.<br>
> This GDB was configured as "x86_64-redhat-linux-gnu".<br>
> For bug reporting instructions, please see:<br>
> <<a href="http://www.gnu.org/software/gdb/bugs/" rel="noreferrer" target="_blank">http://www.gnu.org/software/<wbr>gdb/bugs/</a>>...<br>
> Reading symbols from<br>
> /home/usama/work/community/<wbr>installed/pgpool/bin/pgpool...<wbr>done.<br>
> [New LWP 97854]<br>
> [Thread debugging using libthread_db enabled]<br>
> Using host libthread_db library "/lib64/libthread_db.so.1".<br>
> Core was generated by `pgpool: usama postgres idle<br>
> '.<br>
> Program terminated with signal 11, Segmentation fault.<br>
> #0 0x0000000000422f21 in select_load_balancing_node () at<br>
> protocol/child.c:1669<br>
> 1669 char *database = MASTER_CONNECTION(ses-><wbr>backend)->sp->database;<br>
> Missing separate debuginfos, use: debuginfo-install<br>
> audit-libs-2.6.5-3.el7.x86_64 cyrus-sasl-lib-2.1.26-20.el7_<wbr>2.x86_64<br>
> glibc-2.17-157.el7.x86_64 keyutils-libs-1.5.8-3.el7.x86_<wbr>64<br>
> krb5-libs-1.14.1-27.el7_3.x86_<wbr>64 libcap-ng-0.7.5-4.el7.x86_64<br>
> libcom_err-1.42.9-9.el7.x86_64 libgcc-4.8.5-11.el7.x86_64<br>
> libmemcached-1.0.16-5.el7.x86_<wbr>64 libselinux-2.5-6.el7.x86_64<br>
> libstdc++-4.8.5-11.el7.x86_64 nspr-4.13.1-1.0.el7_3.x86_64<br>
> nss-3.28.2-1.6.el7_3.x86_64 nss-softokn-freebl-3.16.2.3-<wbr>14.4.el7.x86_64<br>
> nss-util-3.28.2-1.1.el7_3.x86_<wbr>64 openldap-2.4.40-13.el7.x86_64<br>
> openssl-libs-1.0.1e-60.el7_3.<wbr>1.x86_64 pam-1.1.8-18.el7.x86_64<br>
> pcre-8.32-15.el7_2.1.x86_64 zlib-1.2.7-17.el7.x86_64<br>
> (gdb) bt<br>
> #0 0x0000000000422f21 in select_load_balancing_node () at<br>
> protocol/child.c:1669<br>
> #1 0x000000000043d935 in pool_init_session_context (frontend=<optimized<br>
> out>, backend=<optimized out>) at context/pool_session_context.<wbr>c:97<br>
> #2 0x0000000000423dee in do_child (fds=fds@entry=0xf41600) at<br>
> protocol/child.c:350<br>
> #3 0x00000000004087e5 in fork_a_child (fds=0xf41600, id=3) at<br>
> main/pgpool_main.c:586<br>
> #4 0x000000000040bf6e in failover () at main/pgpool_main.c:1952<br>
> #5 0x000000000040ccce in sigusr1_interupt_processor () at<br>
> main/pgpool_main.c:1427<br>
> #6 0x000000000040df9a in PgpoolMain (discard_status=discard_<wbr>status@entry=1<br>
> '\001', clear_memcache_oidmaps=clear_<wbr>memcache_oidmaps@entry=0 '\000') at<br>
> main/pgpool_main.c:436<br>
> #7 0x0000000000406dbe in main (argc=<optimized out>, argv=<optimized out>)<br>
> at main/main.c:300<br>
> (gdb)<br>
><br>
><br>
> Thanks<br>
> Best Regards<br>
> Muhammad Usama<br>
</div></div></blockquote></div><br></div></div>