Thread: Weird psql crash

Weird psql crash

From
Christopher Kings-Lynne
Date:
Hi,

1. Fire up psql.
2. Press Ctrl-4
3. Crash, core dump...

Chris


Re: Weird psql crash

From
Tom Lane
Date:
Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes:
> 1. Fire up psql.
> 2. Press Ctrl-4
> 3. Crash, core dump...

SIGQUIT is supposed to do that.
        regards, tom lane


Re: Weird psql crash

From
Christopher Kings-Lynne
Date:
>>1. Fire up psql.
>>2. Press Ctrl-4
>>3. Crash, core dump...
> 
> 
> SIGQUIT is supposed to do that.

Seems to be a libreadline thing:

#0  0x2827fd60 in sigprocmask () from /usr/lib/libc.so.4
#1  0x281f5adb in _rl_savestring () from /usr/lib/libreadline.so.4
#2  0xbfbfffac in ?? ()
#3  0x281f2254 in rl_read_key () from /usr/lib/libreadline.so.4
#4  0x28202e20 in readline_internal_char () from /usr/lib/libreadline.so.4
#5  0x28202f79 in readline_internal_char () from /usr/lib/libreadline.so.4
#6  0x28202fa9 in readline_internal_char () from /usr/lib/libreadline.so.4
#7  0x28202b70 in readline () from /usr/lib/libreadline.so.4
#8  0x804ee9c in gets_interactive (prompt=0x8074a00 "test=# ") at input.c:95
#9  0x804f702 in MainLoop (source=0x282ce0c0) at mainloop.c:153
#10 0x8051310 in main (argc=2, argv=0xbfbffc04) at startup.c:314

Chris


Re: Weird psql crash

From
Tom Lane
Date:
Christopher Kings-Lynne <chriskl@familyhealth.com.au> writes:
>> SIGQUIT is supposed to do that.

> Seems to be a libreadline thing:

No, it's a built-in thing.  See "man stty", "man tty(4)", "man termio"
or related topics depending on your platform.  The point is that the
kernel terminal driver takes that as a command to send SIGQUIT to your
program, not much different from mapping control-C to SIGINT for
example.  And the default handling for SIGQUIT is stop+dump core.

It's a feature, not a bug.
        regards, tom lane