Re: BUG #13246: Failure to pg_terminate_backend

From: Andres Freund <andres(at)anarazel(dot)de>
To: daniel(at)heroku(dot)com
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #13246: Failure to pg_terminate_backend
Date: 2015-05-06 21:03:39
Message-ID: 20150506210339.GF12506@alap3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On 2015-05-06 20:55:30 +0000, daniel(at)heroku(dot)com wrote:
> Postgres gets stuck in this loop and, not checking for signals, will not
> respect the SIGTERM from pg_terminate_backend. This seems like a variant of
> other problems I've seen with pg_terminate_backend not being able to
> function when one is stuck in Openssl, though it seems that in recent
> versions of Postgres that PG provides its own low level I/O functions (e.g.
> my_sock_write) and maybe this is fixable?

I hope I've fixed this for 9.5. The changes are too invasive to
backpatch unfortunately.

> #0 0x00007fe42be95462 in send () from /lib/x86_64-linux-gnu/libc.so.6
> #1 0x00007fe42dcbc487 in my_sock_write (h=0x7fe42efa5eb0, buf=<optimized
> out>, size=<optimized out>)
> at
> /tmp/buildd/postgresql-9.4-9.4.1/build/../src/backend/libpq/be-secure.c:516
> #2 0x00007fe42cdd4667 in BIO_write () from
> /lib/x86_64-linux-gnu/libcrypto.so.1.0.0
> #3 0x00007fe42d0f0260 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.0.0
> #4 0x00007fe42d0f0984 in ?? () from /lib/x86_64-linux-gnu/libssl.so.1.0.0
> #5 0x00007fe42dcbd1d5 in secure_write (port=0x7fe42efa51b0,
> ptr=0x7fe42efaad90, len=<optimized out>)
> at

Yep, we're stuck writing something and we can't, in older versions,
accept cancel interrupts there because we're inside openssl.

Greetings,

Andres Freund

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Heikki Linnakangas 2015-05-06 23:25:49 Re: psqlodbc: HEAD fails to build with recent clang
Previous Message daniel 2015-05-06 20:55:30 BUG #13246: Failure to pg_terminate_backend