[pgpool-general: 4413] Re: Pgpool - connection hangs in DISCARD ALL
Paweł Ufnalewski
archon at foap.com
Mon Feb 8 15:36:08 JST 2016
Hi,
just to let you know - I'm having the same problem with 3.4.4
version (DISCARD ALL appears slower than in 3.4.3 I think, but it still
does). How can I help to fix this problem?
Best regards,
Paweł Ufnalewski
Infrastructure Architect at Foap.com
W dniu 2016-02-01 o 08:44, Muhammad Usama pisze:
> Hi Gerhard
>
> Many thanks for testing and pointing this out. It's unfortunate that
> you are still getting the stuck connection issue. If it is possible
> can you please share the pgpool-II log for the time when this stuck
> connection issue happens. I am more interested in seeing which exact
> error message that caused the child process to jump to error handler
> from where the child process proceeded to send the DISCARD ALL to
> backend and eventually got stuck. Since after many tries we are not
> able to reproduce this issue, so log would be really helpful in
> understanding and fixing the problem.
>
> Best regards
> Muhammad Usama
>
>
> On Sun, Jan 31, 2016 at 9:33 PM, Gerhard Wiesinger
> <lists at wiesinger.com <mailto:lists at wiesinger.com>> wrote:
>
> On 28.01.2016 01:10, Tatsuo Ishii wrote:
>
> On 21.01.2016 20:52, Muhammad Usama wrote:
>
> Hi
>
> I am looking into this issue. and unfortunately like
> Ishii-San I am
> also not able to reproduce it. But I found one issue
> in 3.4 that might
> cause the problem. Can you please try the attached
> patch if it solves
> the problem. Also, if the problem still persists, it
> would be really
> helpful if you could share the pgpool-II log.
>
> I looked at the patch but it includes only logging changes
> and no
> functional changes. Therefore I didn't test it. Do you
> expect and
> behavioral changes to fix it, and why?
>
> elog() is not only a logging function, but also it plays very
> important role including exception handling and error
> treatments in
> pgpool-II. If you are familiar with PostgreSQL internals, you may
> notice it (elog() was imported from PostgreSQL source tree).
>
>
> Tried version 3.5.0 where the patch is included. Still not
> working. See backtrace below.
>
> Reverting to 3.3.7 which works perfectly.
>
> Ciao,
> Gerhard
>
> (gdb) back
> #0 0x00007fd87fdb6d43 in __select_nocancel () from /lib64/libc.so.6
> #1 0x0000564471af16a1 in pool_check_fd
> (cp=cp at entry=0x564473dfa610) at protocol/pool_process_query.c:635
> #2 0x0000564471af1976 in pool_check_fd
> (cp=cp at entry=0x564473dfa610) at protocol/pool_process_query.c:657
> #3 0x0000564471b1f67b in pool_read (cp=0x564473dfa610,
> buf=buf at entry=0x7ffc1d71bf97, len=len at entry=1) at
> utils/pool_stream.c:162
> #4 0x0000564471af8e6e in read_kind_from_backend
> (frontend=frontend at entry=0x564473df3e60,
> backend=backend at entry=0x564473df2e00,
> decided_kind=decided_kind at entry=0x7ffc1d71c397 "E") at
> protocol/pool_process_query.c:3234
> #5 0x0000564471affdc9 in ProcessBackendResponse
> (frontend=frontend at entry=0x564473df3e60,
> backend=backend at entry=0x564473df2e00,
> state=state at entry=0x7ffc1d71c41c,
> num_fields=num_fields at entry=0x7ffc1d71c41a) at
> protocol/pool_proto_modules.c:2356
> #6 0x0000564471af5b15 in pool_process_query
> (frontend=0x564473df3e60, backend=0x564473df2e00,
> reset_request=reset_request at entry=1) at
> protocol/pool_process_query.c:302
> #7 0x0000564471aed98c in backend_cleanup (backend=<optimized
> out>, frontend_invalid=frontend_invalid at entry=0 '\000',
> frontend=0x564471e09e40 <child_frontend>)
> at protocol/child.c:437
> #8 0x0000564471af0637 in do_child (fds=fds at entry=0x564473dee030)
> at protocol/child.c:234
> #9 0x0000564471ace107 in fork_a_child (fds=0x564473dee030, id=8)
> at main/pgpool_main.c:678
> #10 0x0000564471aceb6d in reaper () at main/pgpool_main.c:2254
> #11 0x0000564471ad322b in PgpoolMain (discard_status=<optimized
> out>, clear_memcache_oidmaps=<optimized out>) at
> main/pgpool_main.c:429
> #12 0x0000564471acc7b1 in main (argc=<optimized out>,
> argv=0x7ffc1d7219e8) at main/main.c:310
>
> #1 0x0000564471af16a1 in pool_check_fd
> (cp=cp at entry=0x564473dfa610) at protocol/pool_process_query.c:635
> 635 fds = select(fd+1, &readmask, NULL,
> &exceptmask, timeoutp);
>
> (gdb) print fd
> $1 = 8
> (gdb) print readmask
> $2 = {fds_bits = {256, 0 <repeats 15 times>}}
> (gdb) print exceptmask
> $3 = {fds_bits = {256, 0 <repeats 15 times>}}
> (gdb) print timeoutp
> $4 = (struct timeval *) 0x0
>
>
>
>
>
> _______________________________________________
> pgpool-general mailing list
> pgpool-general at pgpool.net
> http://www.pgpool.net/mailman/listinfo/pgpool-general
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.pgpool.net/pipermail/pgpool-general/attachments/20160208/20d9b4e6/attachment.htm>
More information about the pgpool-general
mailing list